Test Automation & Agile Test QuadrantsCigniti
This blog briefly discusses the relationship between Test automation and Agile Test Quadrants.
Test automation is generally defined as “the use of special software (separate from the software being tested) to control the execution of tests and the comparison of actual outcomes with predicted outcomes.”
Agile Test Quadrants (introduced by Brian Marick and further worked upon by Lisa Crispin) try to understand the relationship between the various forms of tests using 4 different quadrants:
- Quadrant 1: Technology-facing tests that support the team
- Quadrant 2: Business-facing tests that support the team
- Quadrant 3: Business-facing tests that critique the product
- Quadrant 4: Technology-facing tests that critique the product
Using the Quadrants help you accomplish goals related to supporting the team, critiquing the product, and meet the business and technological needs.
Following are some details on what each quadrant is made up of, what tools might be used in each, and what is the purpose of each.
Q1 – Technology-facing tests that support the team
Q1 is associated with Automated testing, and covers the tests such as Unit tests, API tests, Web Services testing, and Component Tests. The main benefit of this quadrant is that these tests help improve the design without adversely affecting the functionality. The main objective is to improve the Quality of the product by means of proper source code management, and a seamlessly integrated development environment. A few tools used are TeamCity, Eclipse, xUnit, IntelliJ Idea, etc.
This is a very important quadrant as it helps teams get together to identify the pain points. In case you cannot cope up with the activities of this quadrant, managing the other quadrants will prove to be even more difficult.
Q2 – Business-facing tests that support the team
Q2 is associated with Automated & Manual testing, and covers tests such as Functional Testing, Story Tests, Prototypes, and Simulations. Q2 helps formulate the right set of questions and thus drive tests that are properly aligned with the business. Q2 thrives in an iterative environment, where skilled testers collaborate with clients and understand the responsibility of delivering a quality product. Q2 involves a lot of brainstorming sessions, and thus MindMap may be used as a regular tool along with Visio for flow diagrams.
Behavior-driven development tools and frameworks as Cucumber, and easyB, and UI testing tools/libraries/frameworks such as Selenium, QTP, Robot Framework, etc. also serve as good tools of use.
Q3 – Business-facing tests that critique the product
Q3 is associated with Manual testing, and covers tests such as Exploratory Testing, Scenario-based Testing, Usability Testing, User Acceptance Testing, and Alpha/Beta testing. Q3 is about evaluating the Product and its use by means of demos, feedback, checking the actual user experience, etc. Q3 involves critical thinking and in depth observation of multiple scenarios (usability, API, Web), etc.
While Q3 may use some of the tools used in Q2, it involves a lot more intuition and critical thinking along with interaction with customers. In addition, it also requires the use of Simulators and Emulators.
Q4 – Technology-facing tests that critique the product
Q4 is associated with Automated Tools, and covers tests such as Performance & Load Testing, Security Testing, and ‘*ility’ testing – Stability, Reliability, Scalability, Maintainability, Compatibility, etc. Q4 tests are performed based on priorities – they may begin early in the SDLC phase, or be introduced later on. Some common examples of tools used in Q4 are jConsole, jProfiler, Loadrunner, jMeter, jUnitPerf, etc.
The common ingredient in all the 4 quadrants is the need of a team working together towards a common goal of achieving the best product quality and optimum customer satisfaction.
If you are a large organization trying to implement an automation strategy, contact Cigniti’s team of test automation experts. Our tool agnostic test automation framework consists of a huge library of keywords that help you build your tests quickly and efficiently, and seamlessly integrate with leading commercial and open source tools.