bigbluebutton-Github/bigbluebutton-tests/playwright/webcam/webcam.spec.js
Anton Barboza de Sá 36b5a16c15
docs: Testing plan update (what's new features) (#20913)
* docs: update test links on release notes and spec files

* docs: add tests for 'what's new on 2.7' features

* Update docs/docs/testing/release-testing.md

Co-authored-by: Anton Georgiev <antobinary@users.noreply.github.com>

* test: pass the bbb version in the doc links

---------

Co-authored-by: Anton Georgiev <antobinary@users.noreply.github.com>
2024-08-14 09:50:03 -04:00

69 lines
2.5 KiB
JavaScript

const { test } = require('@playwright/test');
const { MultiUsers } = require('../user/multiusers');
const { Webcam } = require('./webcam');
test.describe.parallel('Webcam', () => {
// https://docs.bigbluebutton.org/2.7/testing/release-testing/#joining-webcam-automated
test('Shares webcam @ci', async ({ browser, page }) => {
const webcam = new Webcam(browser, page);
await webcam.init(true, true);
await webcam.share();
});
test('Checks content of webcam', async ({ browser, page }) => {
const webcam = new Webcam(browser, page);
await webcam.init(true, true);
await webcam.checksContent();
});
test('Webcam talking indicator @ci', async ({ browser, page }) => {
const webcam = new Webcam(browser, page);
await webcam.init(true, false);
await webcam.talkingIndicator();
});
test('Pinning and unpinning webcams @ci', async ({ browser, context, page }) => {
const webcam = new MultiUsers(browser, context);
await webcam.initModPage(page);
await webcam.initUserPage();
await webcam.initModPage2();
await webcam.pinningWebcams();
});
test('Change video quality', async ({ browser, page }) => {
const webcam = new Webcam(browser, page);
await webcam.init(true, true);
await webcam.changeVideoQuality();
});
test('Webcam fullscreen', async ({ browser, page }) => {
const webcam = new Webcam(browser, page);
await webcam.init(true, true);
await webcam.webcamFullscreen();
});
test.describe('Webcam background @ci', () => {
/* this test has the flaky tag because it is breaking due to a default video from chrome that
is overlapping the virtual background. */
test('Select one of the default backgrounds', async ({ browser, page }) => {
const webcam = new Webcam(browser, page);
await webcam.init(true, true);
await webcam.applyBackground();
});
// following test is throwing failures due to mis-comparison screenshot
// as the emulated video is not static, we may add a mask in the middle part - where it moves the most
test('Managing new background', async ({ browser, page }) => {
const webcam = new Webcam(browser, page);
await webcam.init(true, true);
await webcam.managingNewBackground();
});
test('Keep background when rejoin', async ({ browser, context, page }) => {
const webcam = new Webcam(browser, page);
await webcam.init(true, true);
await webcam.keepBackgroundWhenRejoin(context);
});
});
});