Skip to content

Add Chromium browser tests for workbench and animation - #36

Open
ralphhanna wants to merge 3 commits into
mainfrom
test/browser-coverage-20260927
Open

ralphhanna wants to merge 3 commits into
mainfrom
test/browser-coverage-20260927

Conversation

@ralphhanna

@ralphhanna ralphhanna commented Sep 27, 2026 •

Copy link
Copy Markdown
Collaborator

Add MongoDB-free Playwright tests using the real Pug instance and Models views. They verify Show Animation and replay with locally served GSAP, model search and preview links, and section navigation.

The browser run exposed an existing decorations is not defined error on pages without an instance SVG. Guard SVG initialization and add a client regression test.

Add npm run test:browser, README instructions, and a Chromium GitHub Actions workflow on pull requests and main pushes.

Verification: npm run build and the client tests pass locally. GitHub Actions Chromium run #3 passed both browser tests: https://github.com/bpmnServer/bpmn-web/actions/runs/36317573182.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 2acab43758

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

await page.locator('.workbench-tabs [data-section="tasks"]').click();
assert.equal(await page.locator('#tasks').isVisible(), true);
assert.equal(await page.locator('#processes').isVisible(), false);
assert.deepEqual(errors, []);

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Prevent the model fixture from raising a page error

The /models fixture renders index.pug through layoutHome, whose shared head loads SVGHelper.js. On DOMContentLoaded, that script calls scanSVG(), which executes decorations.forEach(...), but this view never defines decorations; Chromium therefore records ReferenceError: decorations is not defined, and this assertion fails on every browser-test workflow run. Initialize the expected global in the fixture or guard/fix the shared helper before requiring an empty page-error list.

Useful? React with 👍 / 👎.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant