🖐🏻 Third-Generation Software Testing
- 👤 Jason Gorman
First-generation manual software testing created severe bottlenecks. In the second generation, automating our tests removed this bottleneck. But we've learned that automated testing offers insufficient assurance on critical, "load-bearing" code. Introducing Third-Generation Software Testing! We'll be learning techniques for exhaustively testing our software with minimal extra code - using tools you already know - to explore far beyond the cases we thought of for the code that really needs it. With simple examples, you'll learn to: * Refactor duplicated unit tests (e.g., from doing TDD) into data-driven parameterized tests * Generalise test assertions into "properties" * Generate test data with a variety of techniques: random, ranges, combinations, paths * Architect your tests to optimise execution * Use the cloud to execute millions of tests in minutes (for pennies) * Identify load-bearing code by analysing requirements & critical paths, code complexity, and dependencies
This page was generated from this YAML file. Found a typo, want to add some data? Just edit it on GitHub.