-
Couldn't load subscription status.
- Fork 18
Improve v2 SDK test robustness and failure diagnostics #1325
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
base: main_video_v3
Are you sure you want to change the base?
Improve v2 SDK test robustness and failure diagnostics #1325
Conversation
|
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.
The v2 e2e tests were moved to the rtc-testing repo and they no longer need to be in this repo. If you are making improvements, you probably would want to do it in that repo. Please check with @giavac
internal/e2e-js/utils.ts
Outdated
|
|
||
| if (audioLevel !== undefined && audioLevel !== null) { | ||
| console.log(`Using audioLevel as fallback: ${audioLevel}`) | ||
| expect(audioLevel).toBeGreaterThan(minTotalAudioEnergy / 10) // audioLevel is typically higher than totalAudioEnergy |
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.
I don't understand this part - audioLevel is the current level of the audio. It could be zero if there's silence. Why would we need to expect it higher than 10% of the expected minimum total audio energy?
(also the comment is not consistent with the code)
Description
Enhanced end-to-end tests for v2 WebRTC in the SDK by introducing retry mechanisms for call creation and active status checks, implementing call stability monitoring to ensure consistent call states over time, and adding fallback validations for audio metrics using audioLevel when totalAudioEnergy is unavailable (common in certain codec scenarios). These improvements boost test robustness, provide better diagnostics for intermittent failures, and reduce flakiness in network-dependent tests like TURN connections.
Type of change
Code snippets
In case of new feature or breaking changes, please include code snippets.