One of our main requirements when performing the migration was to have the same level of integration with our Team Build system. This means that the build should run all tests and fail if any test fails. Also we should be able to see in the build log which tests have failed.
This step is the most complicated one so here is a quick breakdown of all the steps involved:
- Setting up the build server
- Changing the build template
- Add a new ForEach sequence to iterate through all test assemblies
- Add a sequence to run all tests in a single test assembly
- Invoke NUnit
- Publish NUnit results
- Mark the build as broken if not all tests pass
- Modify the workflow to support projects without a test settings file
- Check in the build template file.