-
Notifications
You must be signed in to change notification settings - Fork 5.7k
add Chrome/Firefox interop tests #1576
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
adds interoperability tests between Chrome unstable and Firefox Nightly. These tests are designed to run nightly as github actions. They do not rely on a signaling server, instead use the mocha-based test that is controlling the individual selenium webdriver instances to act as a signaling channel which exchanges offers and answers with candidates. This pattern is described in the testbed repository https://github.com/fippo/testbed from 2016, this is a "more modern" take on the same subject. To run the tests locally, * npm install --no-save chromedriver geckodriver * npm run mocha test/interop/connection
|
I've run those tests for ~2 weeks now and they were surprisingly reliable (unlike the samples tests...) One of the tricky things is that chromedriver normally has a version check which allow it to operate +- 1 release of the chrome version. This broke when Chrome Unstable went to M108 and required adding the |
KaptenJansson
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM overall but with a disclaimer: it's been a while since I worked on this but I trust you that it works.
NIT: Please add copyright headers on each file.
alvestrand
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Where do test failures show up?
|
They will show up on https://github.com/webrtc/samples/actions which can be filtered. |
Description
adds interoperability tests between Chrome unstable and Firefox Nightly. These tests are designed to run nightly as github actions. Github provides a "free" budget of 2000 minutes per month. In the current configuration with four tests (a matrix of Chrome/Firefox) that each take around a minute the nightly runs have a "cost" of 120 minutes per month.
The tests do not rely on a signaling server, instead use the mocha-based test that is controlling the individual selenium webdriver instances to act as a signaling channel which exchanges offers and answers with candidates.
This pattern is described in the testbed repository
https://github.com/fippo/testbed
from 2016, this is a "more modern" take on the same subject.
To run the tests locally,
Running them with Chrome/Firefox unstable requires Linux for the integration with travis-multirunner and setting the
Purpose
Getting rid of the dependency on apprtc in tests while keeping a minimum level of interoperability tests