Most bugs occur in recently modified code. Therefore, testers generally try to focus their efforts on these areas. However, our research shows that in practice a significant proportion of code changes are released untested, leading to the majority of problems down the line. This even occurs despite advanced test planning procedures.
The primary reason for this is that testers lack visibility into what exactly has been changed, and whether their tests managed to cover these changes.
In this talk, I introduce Test Gap Analysis, an innovative solution that combines static and dynamic analyses to uncover these untested changes. Test Gap Analysis proves to be a highly flexible tool usable in various situations. I will share my hands-on experiences of using Test Gap Analysis in practice across a broad range of teams and domains. Moreover, I will discuss best practices for improving hotfix-tests, continuous integration, and strategic test planning.