-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Open
Labels
priority: P3Useful but not urgentUseful but not urgenttype: CIAn issue with our continuous integration testsAn issue with our continuous integration tests
Milestone
Description
I just found out that Karma was officially deprecated 4 months ago. https://dev.to/this-is-angular/angular-testing-in-2023-past-present-and-future-j5m
This isn't urgent, but we should decide what our test runner will look like in the future.
Things we need:
- Real browser testing through Selenium grid so we can test video playback on real devices (not using jsdom or phantomjs)
- Testing in-browser through a URL, instead of through WebDriver commands that manipulate the browser (this gets us the exotic devices in our lab through generic-webdriver-server)
- Serve tests over HTTPS with a custom certificate (without which we lose EME coverage and encrypted playback tests in the lab)
- A way for the in-browser tests to invoke the WebDriver screenshot command in the test runner and have the runner compare that screenshot to the reference screenshots (today we have a custom Karma middleware that the tests can call into)
- Machine-readable test coverage reports
Things that would be make the transition easier:
- Support for our current test framework, Jasmine (though we could rewrite our tests if necessary)
- Test coverage output in the same JSON format we parse today in our workflows (though we could hypothetically convert to that or rewrite our workflows)
- A way to run local browser tests over WebDriver, maybe with a plugin (this is how we get screenshot tests without using the lab today, via karma-local-wd-launcher)
Input from the community is very welcome. I've done very little research so far.
arturparkhisenko
Metadata
Metadata
Assignees
Labels
priority: P3Useful but not urgentUseful but not urgenttype: CIAn issue with our continuous integration testsAn issue with our continuous integration tests