This is focused on front end testing, in a JavaScript central world. Many principles likely apply to modern server and API development, but some elements will be emphasised or diminished in accordance with the significance for web apps.
- Refactoring: Improving the Design of Existing Code (Uncle Bob)
- Test Driven Development: By Example (Kent Beck)
- clean code talk by Uncle Bob
- idris wiki with lots more links
Strongly revolves around MVC and similar approaches, and a seperation where:
- logic lives in the server, written as code
- UI is written as markup and rendered on the client
- writing tests is hard
- "I rewrote a whole component tree and I didn't have to change any tests!"