3 ms·
Strive to test on three levels: 1 - Unit tests, low-level method testing w/ mocked or no external dependencies (such as db) 2 - Integration tests, test agains
by jonstjohn 14y ago
Strive to test on three levels:
1 - Unit tests, low-level method testing w/ mocked or no external dependencies (such as db)
2 - Integration tests, test against external dependencies, such as db, apis
3 - System tests, front-end testing that covers all parts of the system using a tool such as Selenium
Terminology varies and differentiation of levels, as well, but this can serve as a good guideline.
You'll need to have everything automated and integrated into a build system where you can reliably kick off a build and see the results.
A note on Selenium: any non-trivial setup is going to require a fair number of resources, both in time and environments. Also, you will have to dedicate time to maintaining tests and your UI changes. However, the pay-off is quite large when you can run and end-to-end set of tests on your application and know that you didn't break something.
edit: formatting