Using A Proxy To Create A Full Stack Automation Suite
To be able to create automation test cases using a frontend UI automation framework like Selenium or Appium is easy enough. The hundreds of test cases in your suite should give you a clear answer towards the health of your build. But what is the reality? The test suite has many failures that need hours of analysis to identify actual bugs vs. test case instabilities and false positives. Developers do not trust the automation and the QE feels testing manually would have been easier and faster.
What is the solution? Rewrite your entire suite and reskill your entire team? The answer to converting your entire test suite to stable full stack automation test cases is simpler than you imagine. Our solution utilizes an open-source proxy solution to be able to record frontend and backend interaction while executing a frontend test case. The CI infrastructure then replays these recordings to be able to test frontend workflows without any dependency on backend services, which are prone to changes, time outs and outages. Results show stability of frontend test cases greatly improved without the added complexity of real time backend interaction. Our talk walks through what kind of test cases are best suited for this conversion, what considerations to make while choosing the proxy solution, how this should be configured, how CI should support this change and how to compliment the proxy tests to make sure backend services are healthy and working as expected.
Outline/Structure of the Presentation
- Outline maintainability and stability issues with automation suites that are front end only
- Setting up a proxy to be able to record front end and back end interaction
- Work through the set up to break the back end interaction
- Integrate proxy in the middle to be able to replay the recordings for front end/back end interaction.
- Set up the API test suites to test the back end
- Walk the audience through the usual CI set up to be able to achieve full stack automation with the existing Selenium test cases
- Recommendations on test case execution and maintenance
- How to transform a test suite which is unstable and may often provide false positives.
- How to set up a proxy for record and replay to emulate front end/back end interaction.
- CI set up for automated execution and maintenance
- API test suites to complete the back end integration
SDET, Automation Engineers, Full Stack Engineers, Developers, Front End Engineers
Prerequisites for Attendees
Target audience should have a working knowledge of Selenium and how to create and maintain front end automation suites. Preferred but not required is working knowledge of API testing and proxy.