Catch bugs before your users do

Automate end-to-end testing with UIlicious

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.

Trusted by world-class engineering teams

Cloud IDE and Test Grid

Write and run tests on the cloud

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

UIlicious is a happy middle between

a codeless and a scripting tool.

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

As easy as ABC

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

// 2. Fill in the login username and password
I.fill("Username", "brucewayne")
I.fill("Password", "secretsecretpassword")

// 3. Click "Sign in" button"Sign in")

// 4. Validate that the invalid credentials error message is displayed
I.see("Incorrect username or password")

Explore more examples

Custom Scripting

Variables, loops, conditionals, custom functions!

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.

Learn about conditional flows

Have fun with Javascript!


// 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.
    I.fill("Search", item)
    // You can use assertion commands like I.see as conditional expressions!
    if(I.see$(item)){"Add to cart")

// We're done! Let's proceed to check out."View Cart")"Check out")

Explore more examples


AI Test Authoring

Let AI write your test

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!

Learn more



Actionable Test Reports

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.


Replay tests

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.



Schedule tests,

Monitor continuously.

Schedule tests to run 24/7, even as you sleep.


Get notified when tests fail

Know when things are failing before it's too late.

Setup error notifications to alert you via email, Slack, or webhooks.

Don't let bugs keep you up at night anymore

Try UIlicious Studio

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!

Sign up for free trial

Your first 100 tests is free! No credit card required.

Try Snippets

A public playground for curious tinkerers.

  • No sign up required.

  • Jump right in and write tests in public.

  • Limited to Chrome testing only.

Try Snippets

No sign up required.


Why UIlicious?

Our core philosophy: Test User Journeys, not HTML

Write readable, meaningful & maintainable tests.

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?

No more unstable CSS and XPATH locators

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

Use stable user-facing labels to target elements

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.

How does UIlicious smart targeting work?


More features

Supports all major browsers

Ensure consistency on all browsers - even on IE11.

Responsive testing

Ensure your web application works perfectly across devices.

Geolocation Testing

Test from 12 different regions around the world, from San Francisco to Singapore.

React JS Logo

Works on any front-end

It doesn't matter what your UI code looks like under the hood.

See examples

Shadow DOM Piercing

UIlicious automatically scans elements within the Shadow DOM and is able to target them without need for complicated workarounds.

Automatic waits

UIlicious automatically waits for target elements to appear on screen before attempting to interact or validate it.

Learn more about waits

Dynamic and protected test data

Datasets let you run tests with different test data and store secrets which will be masked in reports.

Learn more about Datasets

Remote Selenium Grid

Run existing tests written Selenium or other Webdriver-based library on our grid.

How to connect to the UIlicious Grid

CI/CD integration

Hook your test into your CI/CD pipelines using the CLI.

View CLI docs

Loved by QAs and Dev

Hear what our customers say

  • quotation mark
    quotation mark

    Without any coding experience, it took me less than a day to learn an adapt UIlicious. After I had an intro to Javascript, it became an even more powerful tool in my hand.

    Aimee Kristel
    QA Engineer @ Glints
  • quotation mark
    quotation mark

    With UIlicious, we've significantly increased our deployment confidence, without increasing engineering cost or release cycle time.

    Chi Kai Huang
    Software Engineer @ Vault Dragon
  • quotation mark
    quotation mark

    With scheduled jobs and automatic alerts, developers and managers get Slack notification about every bug. It's a never-ending ongoing testing that saves me at least one hour every day.

    Kai Hendry
    DevOps @ UneeT
  • quotation mark
    quotation mark

    UIlicious is really approachable. We were using Selenium before, which only our engineers could maintain. But our non-technical testers were able to learn UIlicious really quickly.

    Sulabh Bhanti
    Application Manager @ Jones Lang Laselle
  • quotation mark
    quotation mark

    Also, the capabilities and potential of this product go well beyond testing. You are automating a 24-7 browser… let your imagination go wild!

    Max Zieb
    @ AppSumo Reviews
  • quotation mark
    quotation mark

    Testing with @ui_licious is a breeze! Love the scripting language. Tests look almost like functional spec in English.

    Zhan Wei
    Software Engineer @ Transcelestial Technologies

Catch bugs before your users do.

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.