Catch bugs before your users do
UIlicious is a all-in-one platform to automate, run, and schedule cross-browser tests at scale.
Its simple and flexible low-code test framework lets you automate basic to complex end-to-end tests for your web applications.
Try UIlicious Studio for free and ship new releases with confidence today.
Or try the free public demo, Snippets - no sign up required.
Cloud IDE and Test Grid
You can write and run tests all within your browser on the UIlicious cloud platform.
No need to install and connect various testing software, libraries, frameworks, browsers, browser drivers, Selenium grid hubs, etc., and continuously keep them up to date.
Everything is baked into UIlicious, so you can jump right in and focus on writing tests.
Low-code experience
It is easy for anyone to get started with UIlicious, even if you don't know how to code -yet.
But UIlicious is also a flexible tool that does not get in the way of engineers needing to write raw code.
Keyword driven testing
Writing a test in UIlicious is like describing a user story in plain English. We made it be easy so you can learn UIlicious, even if you don't know how to code.
Here's a simple example.
// 1. Let's go to the login page
I.goTo("https://github.com/login")
// 2. Fill in the login username and password
I.fill("Username", "brucewayne")
I.fill("Password", "secretsecretpassword")
// 3. Click "Sign in" button
I.click("Sign in")
// 4. Validate that the invalid credentials error message is displayed
I.see("Incorrect username or password")
Custom Scripting
Low-code doesn't mean no code! UIlicious tests run on Javascript, so you can write raw code as needed to handle more complex test scenarios.
Have fun with Javascript!
I.goTo("https://freshfruits.com")
// Make a list of items to buy
var shopping_list = ["apple", "banana", "carrot"]
// Loop through each item, search for the it,
// and if they are available, add to the cart.
shopping_list.forEach(function(item){
I.fill("Search", item)
I.pressEnter()
// You can use assertion commands like I.see as conditional expressions!
if(I.see$(item)){
I.click(item)
I.click("Add to cart")
}
})
// We're done! Let's proceed to check out.
I.click("View Cart")
I.click("Check out")
AI Test Authoring
If writing tests feels like a chore, ask our AI assistant to help you. Give it a prompt like “Help me write a test to buy 2 economy flight tickets to from Singapore to Haiwaii” and let our AI work its magic!
Reporting
What happened? Where’s the bug? What did the user do?
Which page? What’s the URL? Which browser? What resolution? What time? Is there a screenshot / screen recording?
UIlicious test reports automatically captures everything that a developer needs to know to immediately investigate bugs so that bugs can be fixed without wasting time.
Reporting
Show devs how to reproduce bugs, step-by-step, with UIlicious interactive test reports.
Share it as a link in a bug ticket on in the chat, or as a embedded on wiki, or unroll it into a PDF report.
Here's an interactive test report.
Click the button to replay the test.
Clikc the and buttons to go to the previous and next steps.
Monitoring
Schedule tests to run 24/7, even as you sleep.
Notifications
Know when things are failing before it's too late.
Setup error notifications to alert you via email, Slack, or webhooks.
The Ultimate edition for businesses and professionals
Private projects
Run cross-browser tests in parallel
Scheduled tests and error notifications
Invite your team
... and more!
Your first 100 tests is free! No credit card required.
A public playground for curious tinkerers.
No sign up required.
Jump right in and write tests in public.
Limited to Chrome testing only.
No sign up required.
Our core philosophy: Test User Journeys, not HTML
Your future self does not want to read an test and wonder "hmm... what does this do"?
We believe that tests should be as good as documentation itself.
Because if tests are not clear, how do you if it is testing correctly?
The common cause of tests breaking is the use of unstable CSS and XPATH locators use to target element. These locators go out-of-sync when the UI code changes. Maintaining tests only to replace broken locators with another unstable locators is a waste of time.
Smart Element Targeting
Using CSS and XPATH locators, the specific element to target is decided at the time of writing the test. UIlicious lets you instead target elements using stable user-facing labels, and it uses a smart fuzzy search algorithm to identify the specific element to target at time of execution. This makes your tests more stable and more tolerant of changes to the UI.
Start testing user journeys, not HTML.
Ensure consistency on all browsers - even on IE11.
Ensure your web application works perfectly across devices.
Test from 12 different regions around the world, from San Francisco to Singapore.
UIlicious automatically scans elements within the Shadow DOM and is able to target them without need for complicated workarounds.
UIlicious automatically waits for target elements to appear on screen before attempting to interact or validate it.
Datasets let you run tests with different test data and store secrets which will be masked in reports.
Run existing tests written Selenium or other Webdriver-based library on our grid.
Loved by QAs and Dev
It's embarrassing if your user report bugs on your website,
but even worse if they don't.
Your first 100 tests are free. No credit card required.