@trisha_gee pushing tests down to as low a level as possible and making sure they only test one thing should help avoid duplication.
Those validations should be unit tested, and a journey test should not check a validation, for instance.
Innervation tests should test integration, not business logic, etc.
It pays to be specific about the type of tests you use, and what they are for.
@wouterla @trisha_gee
Yes, good organization of tests certainly reduces overlap, but I've never worried about overlap. It seems to me that aiming for the minimum number of tests is a concern for efficiency, not effectiveness.
What is the driving force to reduce the number of tests?
@trisha_gee @wouterla
In my experience, "time to run tests" and "number of tests" are not closely correlated.
What makes their tests slow?
- Dependency on external systems, e.g. database?
- Intentional delays waiting for system state to stabilize?
- Stochastic tests to look for infrequent events?
- or something else?
@trisha_gee @gdinwiddie @wouterla #intellij has test cover run, probably with that I would go over one buy one, and in maximum 1 week I would clear 10k tests, the number looks big but when you jump in it's very simple task to find intersection and cleanup 🤓
another approach would be write #gradle or #mvn plugin to give a report of intersecting tests, implementing this probably will take a week or 3 and cleaning up would take another week, min 4 weeks, maximum 2 months this task would be done.