Hi Robin,
This is a good discussion topic, so thanks for bringing it up.
QATrack+ does have a fairly large automated test suite that continues to grow with every release. The automated test suite is supplemented with ad-hoc testing by developers and also a few physicists in Ottawa. Obviously automated tests are not always sufficient to catch all issues though (particularly errors in logic as opposed to implementation).
If possible, before updating a clinical database, I would highly recommend clinics clone their database, create a parallel Python environment and do a dry-run of the upgrade on the cloned database. This will allow you to discover and remedy any potential issues encountered during the upgrade before the actual clinical database is modified. I hope it goes without saying that a backup of the database is always created before attempting an upgrade on a clinical database!
Depending on the number of test lists in your database, it's likely impractical to perform every single test list to confirm they are functioning as expected after an upgrade. Selecting and performing a subset of test lists that cover the different test types in use in your clinic can help build confidence that the new version is functioning as expected. In particular, test lists with composite or upload tests deserve a bit of extra scrutiny since they are *by far* the most likely tests to have issues. Since I have little/no control over how users write their calculation procedures it is impossible to cover all scenarios with automated tests.
When I was in Ottawa (and this may still be the case) we would usually set up a completely independent QATrack+ instance with the new version which would generally be tested by a few physicists, technologists and usually a therapist. With this approach, we never ran into any major issues with upgrades on clinical databases since they were caught and fixed ahead of time. This level of rigour is probably not practical for many centres, but I hope generally people can be confident that there are no major bugs lurking by virtue of having a large centre like Ottawa leading the way with upgrades to new versions.
Definitely interested in hearing other opinions on this topic! If people have ideas about how we can push for even better quality assurance of the software in the future I'm all ears!
Randy