For any code to be considered ready for production there need to be tests. For a given change this might include writing Unit Tests1, Integration Tests and End to End Browser Tests. We need to ensure that we have an appropriate level of testing. Our code review process should pick up issues around the appropriate level of testing.

General Guidelines

End to End Browser Testing

End to End Browser tests are by definition time consuming. In order to ensure that we can keep build durations down we need to consider a number of things when writing them:

If your browser test suite is taking longer than 45 minutes to run, then it’s time to refactor.