Using recognised techniques to create tests gives teams advantages

Published on January 6, 2025

Creating tests using recognised techniques, such as boundary value analysis, enables teams to create more efficient tests and is a basis for learning about testing.

Recognised techniques for creating tests provide a way of analysing functionality that enables the creation of more efficient tests. Teams that use techniques to design tests for their code have advantages. Using a technique like a decision table to design your test gives good test coverage. A technique, like boundary value analysis, makes your tests efficient because you have no more tests than are needed to cover the functionality being tested. 

The value that is added by using recognised techniques to create tests also includes:

  • “Objectivity; guarantees a certain level of coverage linked to an identifiable process of achieving it.
  • Increase in the defect-finding capability.
  • The ability to reproduce tests.” [1]

Recognised techniques can be used in exploratory testing. While conducting exploratory testing it could become apparent that a recognised technique could help test an area of functionality. 

Automated tests can also become more efficient and have better coverage if the automated tests are designed using recognised techniques. 

Recognised techniques for creating tests are a “foundation for continuous improvement and employee empowerment”[2] because they are like “standard work” at Toyota: they are “stable, repeatable methods” [2] and they “capture the accumulated learning”[2]. It is also important to “allow creating and individual expression to improve upon the standard”[2] because this enables individuals and teams to learn. Improvements can then be incorporated “into the new standard”[2] so that “you can hand off the learning to the next person”[2]. 

“It is difficult to present a cookbook for boundary value analysis”[3] but we can add to the knowledge about it. Someone I know used boundary value analysis to refactor a suite of unit tests, reducing the number of tests while maintaining the same level of coverage. This knowledge was shared so that others could benefit. I recently learned more about boundary value analysis and shared it in a blog post.

Teams that use recognised techniques for creating tests have advantages, these teams will have more efficient tests for their projects, and knowledge of the techniques gives teams a “foundation for continuous improvement and employee empowerment”[2]. 

References

[1] The Testing Practitioner by Erik van Veenendal (2002, p201)

[2] The Toyota Way by Jeffery  K. Liker (2004, p38)

[3] The Art of Software Testing by Glenford J. Myers (1979, p. 50)

Resources that can be used to learn recognised techniques for designing tests include: