-
Notifications
You must be signed in to change notification settings - Fork 0
Unit Testing
Version 3 was not designed with unit testing in mind, and consequently when I inherited it it had no unit tests at all. It still has very few, partly because the architecture is hard to test. A year in I'm still finding bits of code which do not work and have certainly never worked and we didn't know it. The lack of unit testing, of course, makes regressions much harder to track and to correct.
The new design should be as far as possible test driven, with all functionality with the possible exception of user interface (because although mocking clicking on buttons is possible, it is probably doesn't repay the effort involved) comprehensively tested. But it does mean that the user interface classes should be as thin as possible, and all logic should be moved into testable classes.
This isn't intended to put Sean out of a job altogether, but should make his job (and mine) much simpler!
This design is, at this moment, © 2018 Simon Brooke, subject to discussion with SalesAgility.