Screenshot tests are great, but they're not very specific about what they're testing. I'm adding screenshot tests for filtering validated VCFs to make sure that our numbers are correct. But this screenshot will also capture unrelated UI changes. The stats are just a few pixels on the page, it's easy to imagine a breaking change getting lost in a larger UI change.
CasperJS is a tool for scripting pages rendered using PhantomJS. It has a testing mode which would be a great fit for us.
And because assertions aren't dependent on details like web fonts and system-specific widget UI, CasperJS tests could be run on Travis! This would let us test some of our Python code on Travis-CI for the first time.
I filed an issue against dpxdt to see if Brett thinks this is in-scope for dpxdt or should be done some other way.
Screenshot tests are great, but they're not very specific about what they're testing. I'm adding screenshot tests for filtering validated VCFs to make sure that our numbers are correct. But this screenshot will also capture unrelated UI changes. The stats are just a few pixels on the page, it's easy to imagine a breaking change getting lost in a larger UI change.
CasperJS is a tool for scripting pages rendered using PhantomJS. It has a testing mode which would be a great fit for us.
And because assertions aren't dependent on details like web fonts and system-specific widget UI, CasperJS tests could be run on Travis! This would let us test some of our Python code on Travis-CI for the first time.
I filed an issue against dpxdt to see if Brett thinks this is in-scope for dpxdt or should be done some other way.
Either way, this is something we should do!