Skip to content

Conversation

DavertMik
Copy link
Contributor

Refactored to be fully ESM

Should be the base for 4.x branch

DavertMik and others added 30 commits January 28, 2025 04:28
* better hooks handling by submitting where test.failed occur

* reverted autologin plugin changes

* small fix to screenshot failures

* fixed screenshot tests

* fixed PW tests

* renamed autologin plugin to auth, added comment step

* added check for the user in auth plugin

---------

Co-authored-by: DavertMik <[email protected]>
* Bump eslint to ^9.19,0

* Bump eslint/js too
* injecting test & siute to container

* added container const

* fix: export STANDARD_ACTING_HELPERS type

---------

Co-authored-by: DavertMik <[email protected]>
Co-authored-by: kobenguyent <[email protected]>
Bumps [semver](https://github.com/npm/node-semver) from 7.6.3 to 7.7.0.
- [Release notes](https://github.com/npm/node-semver/releases)
- [Changelog](https://github.com/npm/node-semver/blob/main/CHANGELOG.md)
- [Commits](npm/node-semver@v7.6.3...v7.7.0)

---
updated-dependencies:
- dependency-name: semver
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 22.12.0 to 22.13.0.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Copy link

Testomat.io Report 🔴 BUILD FAILED
Tests ✔️ 1 tests run
Summary 🔴 1 failed; 🟢 0 passed; 🟡 0 skipped
Duration 🕐 2 minutes, 0 seconds
Job 🗂️ TestCafe Tests / build
Operating System 🖥️ Linux X64

🟥 Failures (1)

🔴 TestCafe: "before all" hook in "TestCafe"

Timeout of 120000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves. (/home/runner/work/CodeceptJS/CodeceptJS/test/helper/TestCafe_test.js)

################[ Failure ]################
Error: Timeout of 120000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves. (/home/runner/work/CodeceptJS/CodeceptJS/test/helper/TestCafe_test.js)

🐢 Slowest Tests

  • TestCafe: "before all" hook in "TestCafe" (2 minutes, 0.003 seconds)

DavertMik and others added 24 commits September 12, 2025 16:33
The --debug flag was causing tests to hang after completion in CI.
Replaced with --verbose for better output without the hanging issue.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
Creates separate CI jobs for each Playwright test file with 3-minute timeouts.
Uses fail-fast: false to continue even if one job fails.
This will help identify which specific test file causes the 18-minute timeout.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
Removed unnecessary artifact upload and updated to v4 to fix deprecation warning.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
- Created focused workflow to test specific scenarios with/without browser restart
- Added local test script to debug timeout issue
- Tests individual scenarios: within, config, session, and react tests
- Each scenario has 3-minute timeout to identify problematic tests

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
Runs just one test ("within on form") with browser restart to confirm
that even individual tests cause the 18-minute timeout issue.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
Kept only the single test timeout debug workflow to isolate the issue.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
Added a simple test (GitHub page load) to verify if the timeout issue
occurs with basic tests that don't use complex features like 'within'.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
Created separate jobs for simple and complex tests so they don't block each other.
The simple test will run independently to verify if basic tests also timeout.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
Prevents double cleanup and hanging when BROWSER_RESTART=browser or
BROWSER_RESTART=context is used. The cleanup already happens in _after()
and _afterSuite() hooks, so _finishTest() and _cleanup() are redundant
and cause the process to hang trying to clean up an already closed browser.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
Previous fix only checked individual helpers, but non-browser helpers like
JSONResponse and ScreenshotSessionHelper also don't need cleanup when
browser restarts. Now checks if ANY helper has restart enabled and
skips _finishTest/_cleanup for all helpers in that case.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
- Remove browser restart option from Playwright helper due to hanging issues
- Update PlaywrightRestartOpts.js to remove browser option and function
- Remove restartBrowser method from Playwright helper
- Update lib/listener/helpers.js to remove browser restart detection
- Remove single-test-timeout.yml workflow
- Update GitHub workflows to use context restart instead of browser restart
- Update documentation to remove browser restart references
- Remove debug test files

The restart=browser strategy was causing tests to hang indefinitely
due to browser context close promises never settling. This removal
ensures more reliable test execution.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
Copy link

Testomat.io Report 🟢 UNIT-TESTS PASSED
Tests ✔️ 340 tests run
Summary 🟢 339 passed; 🟡 1 skipped
Duration 🕐 6 seconds
Job 🗂️ Run Unit tests / unit-tests
Operating System 🖥️ Linux X64

🐢 Slowest Tests

  • Workers: should run worker with multiple config (1.543 seconds)
  • subtitles: should capture separate steps for separate tests (0.602 seconds)
  • Workers: should run simple worker (0.569 seconds)
  • Workers: should run worker with custom config (0.529 seconds)
  • Workers: should create worker by function (0.509 seconds)

Copy link

Testomat.io Report 🟢 UNIT-TESTS PASSED
Tests ✔️ 340 tests run
Summary 🟢 339 passed; 🟡 1 skipped
Duration 🕐 6 seconds
Job 🗂️ Run Unit tests / unit-tests
Operating System 🖥️ Linux X64

🐢 Slowest Tests

  • Workers: should run worker with multiple config (1.556 seconds)
  • subtitles: should capture separate steps for separate tests (0.603 seconds)
  • Workers: should run worker with custom config (0.518 seconds)
  • Workers: should run simple worker (0.504 seconds)
  • Workers: should create worker by function (0.49 seconds)

Copy link

Testomat.io Report 🟢 RUNNER-TESTS PASSED
Tests ✔️ 195 tests run
Summary 🟢 195 passed; 🟡 0 skipped
Duration 🕐 3 minutes, 25 seconds
Job 🗂️ Run Unit tests / runner-tests
Operating System 🖥️ Linux X64

🐢 Slowest Tests

  • CodeceptJS Timeouts: should take --no-timeouts option (6.425 seconds)
  • Definitions: def should create definition file (5.513 seconds)
  • CodeceptJS Timeouts: should stop test when timeout exceeded (5.41 seconds)
  • CodeceptJS Timeouts: should prefer step timeout (4.644 seconds)
  • Definitions: def should create definition file with support object (4.039 seconds)

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.