Skip to content

Commit 4ea9e76

Browse files
committed
👷 run latest firefox and webkit in CI, default local e2e to chromium
Adds firefox and webkit to the CI e2e matrix alongside chromium so we catch cross-browser regressions on the latest browser versions (in addition to the existing pinned variants). Installs the matching Playwright browsers in the CI image and bumps CURRENT_CI_IMAGE to 108. Defaults local `yarn test:e2e` to chromium only to keep the local feedback loop fast; other browsers can still be run via `--project=`.
1 parent 3f307c4 commit 4ea9e76

3 files changed

Lines changed: 6 additions & 5 deletions

File tree

‎.gitlab-ci.yml‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
variables:
22
CURRENT_STAGING: staging-20
33
APP: 'browser-sdk'
4-
CURRENT_CI_IMAGE: 107
4+
CURRENT_CI_IMAGE: 108
55
BUILD_STABLE_REGISTRY: 'registry.ddbuild.io'
66
CI_IMAGE: '$BUILD_STABLE_REGISTRY/ci/$APP:$CURRENT_CI_IMAGE'
77
GIT_REPOSITORY: 'git@github.com:DataDog/browser-sdk.git'
@@ -244,7 +244,7 @@ e2e:
244244
interruptible: true
245245
parallel:
246246
matrix:
247-
- BROWSER: [chromium, chromium-pinned, firefox-pinned, webkit-pinned]
247+
- BROWSER: [chromium, firefox, webkit, chromium-pinned, firefox-pinned, webkit-pinned]
248248
artifacts:
249249
when: always
250250
reports:
@@ -255,7 +255,7 @@ e2e:
255255
- yarn build:apps
256256
# Browsers are pre-installed in the CI image. If playwright (current or pinned 1.40.1)
257257
# is upgraded without rebuilding the image, this job will crash — rebuild the image to fix it.
258-
- FORCE_COLOR=1 PW_BROWSER=$BROWSER yarn test:e2e --project=$BROWSER
258+
- FORCE_COLOR=1 PW_BROWSER=$BROWSER yarn test:e2e:ci --project=$BROWSER
259259
after_script:
260260
- node ./scripts/test/export-test-result.ts e2e
261261

‎Dockerfile‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ RUN curl --silent --show-error --fail http://dl.google.com/linux/chrome/deb/pool
3737

3838
# Current Playwright's Chromium (used by the e2e job)
3939
ARG PLAYWRIGHT_VERSION
40-
RUN npx -y playwright@${PLAYWRIGHT_VERSION} install --with-deps chromium
40+
RUN npx -y playwright@${PLAYWRIGHT_VERSION} install --with-deps chromium firefox webkit
4141

4242
# Pinned Playwright browsers: Chromium 120 + Firefox 119 + WebKit 17.4 (used by the e2e-pinned job)
4343
ARG PINNED_PLAYWRIGHT_VERSION=1.40.1

‎package.json‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,8 @@
3131
"test:unit:watch": "yarn test:unit --no-single-run",
3232
"test:unit:bs": "node --env-file-if-exists=.env ./scripts/test/bs-wrapper.ts karma start test/unit/karma.bs.conf.js",
3333
"test:e2e:init": "yarn build && yarn build:apps && yarn playwright install --with-deps && yarn dlx -p playwright@1.40.1 playwright install chromium firefox webkit",
34-
"test:e2e": "playwright test --config test/e2e/playwright.config.ts",
34+
"test:e2e": "playwright test --config test/e2e/playwright.config.ts --project=chromium",
35+
"test:e2e:ci": "playwright test --config test/e2e/playwright.config.ts",
3536
"test:compat:tsc": "node scripts/check-typescript-compatibility.ts",
3637
"test:compat:ssr": "scripts/cli check_server_side_rendering_compatibility",
3738
"test:performance": "yarn test:e2e:init && playwright test --config test/performance/playwright.config.ts",

0 commit comments

Comments
 (0)