logo logo

10 Commandments to Pen Down your Test Automation Plan

Test Automation Plan

Quality engineers who are practicing test automation in their testing cycle or entering the world of automated testing should keep in mind that a solid test automation plan is key to pull it through. A plan is needed to be sketched for each application that is to be tested. As the complexity of application would require various efforts for both manual and automated testing. Development for similar applications can differ depending on the teams. Hence it is best to maintain a solid plan dedicated for your automation testing approach.

In my experience, I’ve come up with 10 commandments that I followed to come up with a solid test automation plan. They have worked like a charm on every team I’ve ever been a part of, so I hope they work for you 😉

1. Thou shall get your right groundwork done

Analyzing the application and understanding the requirements in depth at the very beginning is key. Based on this understanding, you will be able to understand which sets will definitely require automated tests. It is important to start with the right planning. This includes important discussions around understanding what to automate, organizing resources, preparing the team on task distribution, setting up budget and so much more. Identify repeated actions, create a framework that allows those actions to be performed with a high degree of efficiency, then automate both high-repetition and low-repetition actions so that manual intervention is either eliminated entirely or reduced to a minimum.

2. Thou shall choose the right tools

As mentioned before, each application can be unique and complex in its own way. Selecting the right tool that suites the application and your team would help with the effort needed to be invested. Not just the tool but also selecting the scripting language is vital, based on the application development stack, which would provide more productive results for the team. The type of test automation tools can either be open-sourced or licensed versions, usually chosen by consideration of requirements, time constraints and budget. We find it important to conduct some Proof of Concept and then choose one of the best tools that satisfies most of the requirements or use a combination of tools instead of one tool. For teams who want to step into the world of automation, TestProject is a good tool to consider, being it’s free to use and designed for teams.

3. Thou shall select the best fit framework

The test automation framework plays a vital role in the success or failure of any automation application. Platforms like TestProject will let you record test steps, then edit them in the built-in scripting language, simplifying the process of building up a test script library. This framework should serve as a baseline, making it easier to create and maintain automated tests. Depending upon the technology/tools you are choosing, it’s important to select the design pattern and framework.

4. Thou shall put your best women/men in the squad

Assign the right folk, those who believe in the importance of automating the tests. Those who have the passion and who would not lose stamina during the sprint. Having the right women/men at work is vital to drive the entire process. Developers and testers need to be actively involved in the process, and all stakeholders should give input and be kept up-to-date.

5. Thou shall NOT Over-scope

When taking up tasks for automating, make sure you take most of the repetitive actions. Do not try to drown your team with all the test cases for automating. Prioritize the tests and pick them accordingly. Do not take those forbidden fruits that would require immense time in scripting the tests and do not have high priority. It is recommended to start with implementing the sanity test cases, then move to smoke and regression.

6. Thou shall prepare a robust Testbed

Choose the right testbed that covers the need of your tests. A good cloud-based testbed will often provide a full-service infrastructure for deploying and testing virtual machines in the cloud, along with analytics, dashboards, security, and all of the APIs required to integrate these services with your existing project management infrastructure.

In addition, a cloud-based testing platform such as TestProject can actually make it easier for you to automate hardware testing for key platforms or devices, even on cloud solutions such as Sauce Labs and BrowserStack.

7. Thou shall consider Test Data Management important

Considering how the test data is going to be managed at the very beginning, before you get your hands dirty with the scripting, is highly important. Make sure you have the right approach that simplifies your complex test data. Choose something that is simple, easy to maintain and efficient. Make sure you have a solid plan to create pre-requisite data, maintain test data and delete any noise data created during the tests.

8. Thou shall build a traceability matrix

Make sure to have a highly efficient traceability with the epics – user stories – test scenarios – test cases – test execution cycles – test reports – defects. This could prevent defect redundancy and help with more clarity for the team to understand every aspect, as every detail will be in one place. If the connection is maintained, data/information slips would not occur.

9. Thou shall build a test case practice

Standards should be defined, the common methods should be used, and the methods should be implemented when required. Organize the test cases into different packages or modules, making sure there is proper logging and documentation for each script so that it will be easy for maintenance. This is important as it enables a way to identify failures. Once the test cases are implemented, execute them on the testbed, making sure they are executed successfully. It is important to plan, to have the test scripts reviewed by the entire team so all can help make sure the test scripts cover the expected functionality.

10. Thou shall maintain

To have a robust test framework, constant checks and maintenance is key. If the framework is not maintained, eventually it could lose its actual purpose and be forgotten forever or might end up with new work on refactoring. To avoid such a mess, set a plan for a constant lookout on the test framework. Time should be invested in this. Test Maintenance should be an on-going effort, where all the automated tests are updated regularly to accommodate the functional and UI changes. If possible incorporate AI to maintain such cases.

Follow these commandments

These 10 commandments have been the gospel followed by every team that I work with, when setting up the test plan for automated testing, and they have not failed yet. These could help you go from a newbie automated testing team to a test automation team that gets real work done.

👉What’s your commandments for a solid test automation plan?

About the author

Christina Thalayasingam

Christina Thalayasingam has more than 7 years of experience in both functional and non-functional testing. She possesses a development background. Since she has worked on PHP Web Development and Android Mobile Development before taking up Quality Engineering. She has worked in automate testing content management systems for the UK government, point of sales applications, eCommerce applications, and clinical trial applications. She has worked on-site in the UK on projects with the UK government sector and major food supply chain management companies. Christina is currently working as a Test Engineering Manager at NorthWestern Mutual a Fortune100 Financial services company, where she is managing the testing effort for their Customer Experience Web Applications, which comprises of micro services and micro applications.  Also, she has been part of various prestigious conferences, technical meetups, and webinars. She is a software testing evangelist.

Leave a Reply