cassette icon indicating copy to clipboard operation
cassette copied to clipboard

Automated testing

Open benwiley4000 opened this issue 6 years ago • 5 comments

  • [x] Run Nodejs-based tests using Travis or similar
  • [ ] Run browser tests for all supported browsers (list to be determined based on whatever is currently usable or feasibly close) using BrowserStack

Depends on #35 and #158 being closed first.

benwiley4000 avatar Mar 26 '18 22:03 benwiley4000

I would be happy to collaborate on this, but we would need to make some decisions on which testing framework to use (probably Jest), structure, main features to test, etc. If a checklist is created on how to start, I could help with the tasks and any other contributors as well.

Relates to #35 as well.

danielr18 avatar Dec 12 '18 21:12 danielr18

ETA: Comment moved here.

benwiley4000 avatar Dec 12 '18 22:12 benwiley4000

I mentioned util tests, but thinking about it more I think the highest priority should be on context API testing, and component snapshots. I don't want to exert a bunch of effort writing tests for miscellaneous internal utilities that aren't even part of the API and might be changed or removed.

The last category of tests I forgot to mention is testing the props that get sent into the PlayerContextProvider, but this sounds super complex to me. If you have any great ideas I'd be glad to hear them, but I think it would be good to start with the two big categories I mentioned.

How does this all sound?

benwiley4000 avatar Dec 13 '18 00:12 benwiley4000

Hm one more note, some of these tests could possibly be run in the browser (using Browserstack in CI) if it's not realistic to run them in Node. We have free Browserstack sponsorship for this project.

benwiley4000 avatar Dec 13 '18 03:12 benwiley4000

We've already completed the first half of this, which is running our test suite in Travis.

The second half, running tests in our supported browsers with Browserstack, is a good idea but doesn't need to be finished for the beta, so I'll move this into the final 2.0 release target milestone.

benwiley4000 avatar Apr 08 '19 05:04 benwiley4000