In this guide, you will learn the basic commands to write simple tests in UIlicious, and how to schedule jobs to monitor your tests and receive notifications about errors. Unlike other automation tools, UIlicious is straightforward and easy to understand and use. Whether you are an experienced automation tester or you have never written code before, you’ll likely find something useful to help you get started.
What is UIlicious
UIlicious is a test automation tool that empowers anyone to test and monitor anything that runs in a web browser. Writing tests are simple since it’s almost like telling a coworker or friend how you would navigate to Google.com and search for a recipe for baking a green cake.
How to use UIlicious
UIlicious does not involve any complex setup besides signing into your account. Think of using UIlicious like baking a cake. Writing the test script in the Editor is the recipe, running the script is the baking, and the test run result is the cake!
UIlicious does not require you to know how to write code in order to have good quality test scripts. The main goal for writing scripts is to provide results that will catch any bugs and issues on the webpage.
These are the basic commands that will help you get started on your automation journey.
The first and most important command to write for a basic script is I.goTo which is telling UIlicious the website that you want it to go to. This command is always followed by the website address such as:
The next basic command is I.see which tells UIlicious that the specified target is present on the webpage such as text, a button, or a link, It is best to include this prior to using the I.click command since this will give more direction. Here is an example:
The I.click command is for clicking on any functional target on a web page such as buttons, links, and icons. Please note for images and icons, it is strongly recommended that an aria-label is set for the target element. This will help make the site and web application more usable for accessibility compliance. Here is the example:
You can use the I.fill command with forms such as Login, Contact Us, and Sign Up. It is important to identify the target on a form containing a field such as a Username or an Email, this will need to be written as:
I.fill("Username", "[email protected]");
UIlicious Tip: It is always a good idea to write comments in the automation script. This will provide direction, reminders, and important notes and information. To do so, simply type:
//This is my example.
I.select is useful for testing forms with multiple options such as selecting a specific option from a dropdown list, checkbox, or a radio button.
There are two options for using the I.select command depending on the specific testing scenario. If you are testing a specific dropdown containing a list, you would use this command:
If there is a checkbox or a radio button such as a Terms and Conditions agreement, you would simply use:
I.select("I agree to the terms and conditions”);
Finally, for a radio button such as a Yes or No option, you would enter:
UIlicious Tip: When writing long test scripts, it is always a good idea to save often and run the test multiple times to ensure the script is working properly and the test runs are meeting expectations.
Now that we know the basic commands, it is time to begin writing our first test script. Do not feel overwhelmed! Think of this as the first step into a spacecraft. The excitement of the adventure and mystery of where this journey will take us is similar to automation testing. Writing the script is the first step into an adventure that will end with amazing test results. Thanks to your determination, the website you are testing will be even better!
Before writing a script, the first question to ask yourself is what is important to test? The most difficult part of any journey is the beginning, but your journey in UIlicious does not have to be. The best approach for getting started is to have a plan specifying the most important and critical features that require testing.
For example, if the website has a login and signup page, these are always good starting points. The homepage, which is the doorway to the rest of the site, is also another good candidate for automation testing. This is because it is important to confirm the links, buttons, main navigation header, and footer are all working correctly.
Pages containing a form such as a Sign-Up or Contact Us form are great for automation to ensure the forms are free of functional issues. If the site is an e-Commerce website, it is good to test the shopping cart including selecting and adding a product to the shopping cart.
Writing a basic test script
When writing a test script such as testing the Sign In page on the Netflix site, here is a sample script you can use:
Let's break this down to help you see what is happening:
I.goTo("https://www.netflix.com/");This is the website we are going to use for our test
I.click("Accept");I Accept the use of Netflix and third party cookies
I.click("Sign In");This command clicks on Sign In to take us to the Sign In page
I.fill("Email", "[email protected]");In the Email field fill in the [email protected] email
I.fill("Password", "password");In the Password field fill in the noted password
I.click("Sign in");UIlicious is going to click on the Sign In button
I.see("Sorry, we can't find an account with this email address.");UIlicious will look for this message on the page
UIlicious Tip: It is helpful to have test cases written prior to beginning to write test scripts in UIlicious. Having test cases is equivalent to traveling with a map.
To run a test in UIlicious simply click on the Run button:
Setting Your Test Run
To change your resolution (Desktop, Tablet, and Mobile) click on the Resolution dropdown:
UIlicious has monitoring capabilities to run your test scripts at any time. Having a schedule for your tests to run automatically is like having another member on the team, except this teammate will work at any time specified. This also helps prevent any slowdowns with the deployment process with time-consuming manual testing. And if there is ever a failure, a notification can be sent out which means less chance of costly missed issues.
To schedule a test click on the Monitoring tab within the UIlicious interface:
After clicking on the Monitoring tab, the monitoring page will return. From here, click on the Schedule New Job button:
Depending on your account type will determine the number of concurrencies that can run simultaneously. Within the Schedule New Job modal window, select the days of the week, and the time Intervals, which can be set to either Minutes, Hour, Day, and Week.
UIlicious Tip: Did you know tests can be scheduled to run every 30 minutes with the Business UIlicious plan? Simply click on Intervals and change the value for the first box to 30 and select min in the dropdown.
In the Notifications section, there are two options for notifications, Email or through Webhook such as Microsoft Teams and Slack. This is used to set notifications to occur through a dedicated and custom channel.
Clicking on the Runs tabs shows the previous test run history. This provides visibility into how many failures and passes have occurred with previous test runs. To access this simply click on the Runs tab:
Selecting a specific test from the Test Runs displays the results along with the option to share and download your results.
UIlicious Tip: Did you know Test Runs can be viewed in the Monitoring Tab? Simply click on the Monitoring tab and click on a Job. This will give a summary of the test including the browser runs and success rate.
This covers the basics for getting started with UIlicious. With this handy guide at your side, you now have the ability to begin your automation journey.
Happy testing! 🙂