The Path to Resilient Test Automation

While we all know that test automation can save organizations time and money, what often gets left out of that statement is that it also requires a significant investment in both before and after you are up and running smoothly. We’re here to help you make the case for automated testing. When considering it, you need to think about three key elements:

  1. Tools: Identify the tools that can automate your application under test at multiple levels and be sure to look for reporting capabilities that can help you share the results within your organization.
  2. Return on Investment: Do a rough calculation of what the return on investment could be for your organization if they decide to implement test automation. Be sure to include an assessment of the time required for manual and automated tests with respect to test creation, test execution, and the length of time required to update your tests. This is also a good time to identify what is currently not being tested manually.
  3. Commitment: There needs to be an assurance that both the necessary funding and resources are available, as automated testing will require a long-term commitment. Buy-in from all groups within your organization, including development and DevOps teams, testing teams, project management, and your C-suite is a must for success.

Once you’ve made the case, it’s time to build your test automation solution. To ensure it’s resilient, you’ll need to design it to serve both the needs of your organization today, and those you may have in the future. We have put together three factors that will help you to build an adaptive and valuable long-term test automation solution.

  1. Test Selection: A critical component of demonstrating the value of your solution and setting it up for success is selecting the best test cases for the job. Take into careful consideration, and be selective about, what you are attempting to automate. Also, factor in which aspects of your testing solution that your organization has control over and which fall under third-party control. While everything can be automated, everything shouldn’t be automated.  We’ve found the following test cases are good candidates for automation: calculation intensive, data validation, and repetitive actions.
  2. Diversify: It is important to avoid limiting test automation to a singular tier of your application infrastructure. Try to design a comprehensive test automation suite that considers Unit, API, and UI and identify how the test automation scripts could bring value to the organization’s data and test setup.
  3. Data Driven: Create re-usable scripts to execute multiple tests with different sets of data. Use the information that you have to expand existing tests in order to enhance test conditions. If possible, include data sources that can be updated externally so business users can add test cases through non-technical tools.

Now that you’ve planned your test automation solution, it’s time to ensure that you can build, sustain, and maintain it for your organization into the future. Revisiting the following three steps often can help you avoid an automated testing solution that gets left on a shelf and forgotten about!

  1. Build: The process of building your test automation should closely follow the plan you’ve made in advance. You’ll want to ensure that assessments and concepts are reviewed regularly throughout the build, and after it has gone live.
  2. Pipeline Integration: To make the test automation sustainable, integrate into your existing CI/CD pipeline as soon as possible to gather information about the application and the automated solution. Conducting regular assessments will allow you to identify where the deficiencies reside and allow you to determine the actions required to fix them.
  3. Refactor: Be vigilant for ways to expand your test coverage, and reduce the number of scripts that are needed by combining tests with similar functionality.

If you are thinking about how a test automation solution could bring value to your team, reach out!  We’d love to work with you to help you build a lasting and valuable solution. And, if you have a solution that was put back on the back burner, maybe it’s time to take a look at it again. We’ve got a great place for you to start the process in our article on Resuscitating Your Automation Project.

Nathaniel (Nat) Couture, BSc MSc., has over a 15 years of experience in leadership roles in the technology sector. He possesses a solid foundation of technical skills and capabilities in product development including embedded systems, software development and quality assurance. With a decade of experience as CTO in two successful small ITC companies in New Brunswick, Canada, Nat has proven himself as a solid leader, capable of getting the job done when it counts by focusing on what’s important. He’s a very effective communicator who has mastered the art of simplicity. Nat has served as an expert witness on matters of software quality. He is always driving to adopt and create technologies that incrementally reduce manual labor and at the same time improve the quality of the end product.”

http://www.nathanielcouture.com/, https://www.linkedin.com/in/natcouture/, @natcouture