Fabian Streitel
Software Quality Expert
Join my presentation on: Everyone wants to shift left, but our tests are just too slow!
Running tests as often and as early as possible is the dream of many agile testers…
Running tests as often and as early as possible is the dream of many agile testers…
Fabian Streitel studied computer science at TU Munich, Germany, and works as a software-quality consultant at CQSE GmbH, a company dedicated exclusively to software quality. He’s leading the Test Intelligence team, which enables CQSE’s customers to improve the effectiveness and efficiency of their testing processes using CQSE’s tool Teamscale. Fabian has seen hundreds of testing processes at different companies over the years and always took pride in helping to make them even better, in a joint effort with the many brilliant minds (be they testers, developers or others) he had the pleasure to work with.
Running tests as often and as early as possible is the dream of many agile testers. Ideally, after every commit and on all branches, so we immediately notice when we break something. But what if my tests take hours or even days? What if I conduct manual testing? For many, the dream of an accelerated testing process seems unattainable or at least impractical. However, research shows possible solutions: One approach to providing quick feedback even with slow tests is to run a small subset that is fast enough. This is worthwhile if this subset finds a majority of the defects. For example, 80% of defects in 5% of the time. We need innovative methods for this, but they also need to be practically feasible. In this presentation, I introduce two approaches that can be implemented with little effort in existing projects to uncover most defects with minimal testing effort. One method uses large language models and clustering to create an effective smoke test suite. This can be used for arbitrary changes identify defects across the entire code base. The second method, on the other hand, suggests targeted tests for a recent change that match the modified code as closely as possible. For both techniques, I present fundamentals, research results, and practical use cases.