Testing shifts

Testing Shifts with Agile Tester

Issue 1, 2018 Download PDF

It has been said that “To delight customers, one should continuously innovate, implement, test it, fix it, test it, release it and do all again and again.”

To help companies perform all of the above more efficiently, we're introducing Software AG Agile Tester (SAT). This powerful new tool offers various testing solutions to accelerate agile feedback loops. Currently under beta release for clients, SAT is now being used in more than 10,000+ tests by more than 13+ product teams within Software AG.

SAT has two major components:

  1. SAT server: Central repository for test scenarios and test artifacts
  2. Tools:
  • SAT client
  • Recorder and playback

Figure 1: Overview

A new way of testing

Developers or QAs can use SAT to begin testing processes earlier in the development cycles, so that errors can be detected and even prevented before they occur. This way testing activities are shifted closer to the build process to proactively uncover defects and allow product teams (enterprise) accommodate releases faster.

To transition smoothly to shift-left testing, a good practice would be to create test cases that broadly cover the functional processes and operational patterns. This helps avoiding conflicts at the time of deploying applications from the construction phase, minimizing the number of test cases to be created in the future and speeding up the SDLC.

Figure 2: Automate Test Scenarios (Brainstorming)

SAT with shift-left testing

As shown in the overview in Figure 2, QA team(s) would take part in the testing cycle earlier. SAT tools can also be placed into an earlier stage of agile development and help to create highly reusable test artifacts (i.e., TestData, TestCases, TestSuites or TestProject). SAT by default uses the English-language Constrain Natural Language (CNL) for Behavior-Driven (Tests) Development (BDD). It has specific emphasis on creating real end-user scenarios around the customer experience. This becomes important with a complex business problem to solve while doing testing.

As a part of DevOps practices, it is essential to not only conduct testing but automated testing. Simple regression checking is encouraged and could be automated. If testing activities take place at the right time in the development lifecycle and in production, we can analyze the uncertain, undefined or unexpected scenarios by relying on real traffic and unpredictable test inputs. 

Figure 3: Execution (Play) Test Scenarios

Here shift-right testing has implementation and release cycles, and testing and production come closer together for DevOps.

SAT with shift-right testing for DevOps

In summary, testing should not only shift to earlier in the development cycle but should be automated with adequate coverage. These automated tests should occur so that accurate feedback loops are established and QAs can provide continuous feedback to developers during and after the development stage. This makes it easier to report defects and achieve high quality as errors tend to reduce over time when a continuous monitoring and feedback system is employed.

In Figure 3, SAT can automate and execute (payback) test with tools and Jenkins® for continuous feedback loops, helping to transform quality engineering efforts more effectively.

For more information, email cnlautomation@softwareag.com