- Focus on dividing your app into smaller chunks
- Don’t continuously re-test the same thing in different levels
- Write tests at the library level instead of the acceptance level
- Favor in-memory tests (with trade offs in mind).
The secret to fast software, in all but hard real-time contexts, is to write tunable software first and then to tune it for sufficient speed.
Even if you know exactly what is going on in your system, measure performance, don’t speculate. You’ll learn something, and nine times out of ten, it won’t be that you were right!