chemiscope
chemiscope copied to clipboard
Introduce end to end testing
One of the reviewer concern on the JOSS paper was that we lack automated tests. We can do manual testing, but that mean it can be hard to refactor without introducing bugs for corner cases. At the same time, chemiscope being mostly a GUI is not well suited for standard unit testing (checking public classes/functions one by one, single behavior by single behavior)
I think we should add some form of automated testing, end to end testing might be the less bad one. The idea is to specify high-level behavior such as selecting a new property for axis x changes the plot & axis title on the plot
. Such tests might be painful to write since we have to make them generic enough to not break due to layout changes but specific enough to catch the issues; but I still think they are worth it.
Cypress looks like a nice framework for such end to end testing: https://www.cypress.io/.