Fighting Flakiness- Smart approach to Modern UI testing | Gauge+ Taiko
Any changes in an application in the user interface (UI) may cause the automated tests to fail randomly, and this unreliability is unacceptable for testers. The unreliability causes fluctuations in test results. These flaky tests have to be maintained regularly for every test done or have feedback loops so that every step or change of the tests are done correctly. These maintenances or feedback loops usually end up slowing down the process of development drastically. And to be able to have a successful development, tests have to be taken into consideration with their fluctuation rates.
Out of 500 test cases, assume that there are atleast 250 test cases which are independent. And because of the presence of flakiness , the pass rate of these independent test cases is 22.26%; which is unacceptable.
Dealing with these flaky tests is one of the most crucial points of Test Driven Development, and allocating a certain amount of time in the development planning will go a long way. There are no solutions to get rid of these flaky tests entirely. But there are several methodologies or practices to reduce the number. The main point in reducing the number is understanding why specifically, they are flaky.
Modern UI testing tools (Cypress, webdriverio) always increase our expectations of maintaining code, reducing flakiness in tests and producing reliable test suite. Are you one amongst those having problem solving flaky tests and maintaining test code while testing modern web applications? Learn about Taiko and Gauge, modern browser automation tool to tackle the flakiness and gives you the freedom from maintaining the code.
Taiko is a browser automation tool with a powerful REPL that allows you to script user-facing tests dynamically using a simple domain-specific language. You can eliminate flakiness by testing your application as a black box relying only on the visible elements on the web page and not on placement of screen elements or CSS classes or ID’s
Outline/Structure of the Talk
Get ready to learn exciting ways to record code as you execute, reduce flakiness in the tests, craft resilient code, and develop reliable, readable, and maintainable tests.
1. Diving into Gauge and Taiko(3 Min)
2. Using the “Implicit Wait” feature to reduce flaky tests(2 min)
3. Using the “Proximity Selectors” feature to code maintainable tests(2 Min)
4. Using the Taiko REPL to create your tests step by step(Practical)(3 Min)
5. Practical Demo of Taiko and Gauge (6 Min)
6. Q and A (4 Min)
1. Attendees will be equipped with the knowledge and process of reducing the time to test flakiness while automating the application.
2. Attendees would be empowered to separate flaky tests vs functional issues easily and fix them.
3. Participants can implement this learning right away in any of their upcoming automation projects.
Anyone who wants to learn something new, but highly recommended for QA resources, Developers and BA's.