--- title: > Adding snapshot tests to Build Configs pubDate: 2023-12-16 permalink: >- archive/2023/12/16/adding-snapshot-tests-to-build-configs tags: - software-development - php - symfony - build-configs - automated-testing - test-driven-development --- This week, I've started to add snapshot tests to the [Build Configs project][build configs]. I had unit tests for the DTO validation to ensure the configuration was correct, but the main thing I wanted to test was I could run it for a given configuration file and get the expected files and contents to be generated. With snapshot tests, I generate the files for each configuration and compare them to a set that I know to be correct. If the files match, the tests pass, but, if they don't - such as a bug in the code, the tests will fail. This is the level that I want to be testing this project and that provides the most value. If a snapshot test fails, I can try to replicate the underlying issue in a unit test whilst also fixing the snapshot test. [build configs]: https://www.oliverdavies.dev/build-configs