The project provides tools in Go for automated testing against Fastly's WAF simulator, incorporating a CI/CD pipeline with GitHub actions to run tests on code changes. Test cases are structured in YAML format within the test/rules directory, detailing various fields such as identifiers, requests, expected responses, and signals. Users must set up their Fastly NGWAF credentials, run Terraform commands, and check workflow statuses on GitHub to ensure the WAF rules function correctly.
The article discusses the tension between using Go's built-in testing capabilities versus adopting external testing frameworks that create mini-languages, reflecting on the implications of each approach. It draws from personal experiences and industry examples to argue for the simplicity and clarity of using Go's native testing features while critiquing the complexity introduced by various frameworks. The author emphasizes the importance of consistency and ease of refactoring in testing practices.