Since Codecept 3.6.9, our test that looks for a date time doesn't find it (but it's there)
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 38/100
- Issue type
- Bug
- Clarity
- Needs clarification
- Activity status
- Quiet
- Tech stack
- javascript, node.js, playwright
- Domain
- testing-qa
Research direction
Start with lib/helper/Playwright.js:2854, where the failure is reported, and the calling test at codecept/user-logs.spec.js:39. Reproduce the regression with Playwright 1.49.1 across CodeceptJS 3.6.7 and 3.6.9, then inspect the waitForText behavior and add a regression test if the cause can be isolated. Done means the visible timestamp is found without weakening unrelated text checks.
Written by the indexing model from the issue text.
Description
Hi, we're seeing this issue and we've tried pinning to older versions - 3.6.7 is OK.
What are you trying to achieve?
We have a test that's been passing up until now and does so with 3.6.7.
I can't use 3.6.8 because of Error: Cannot find module 'invisi-data' (I noticed a hotfix around this in the commits).
It started failing today (it could have failed sooner, we only noticed it today).
What do you get instead?
The following (I've noticed the UI here says 3.6.2, but when I do an npm list I am on 3.6.7, 3.6.8, or 3.6.9 depending on the test I am doing - we want to be on the latest and tried downgrading twice and as part of that verified 3.6.7 is ok).
This looks to me like it finds our text and then says it hasn't...
Provide console output if related. Use
--verbosemode for more details.
1) User Logs
It renders a User Log table:
Text "2024-09-05 04:14:32.000" was not found on page after 1 sec.
at Playwright.waitForText (node_modules/codeceptjs/lib/helper/Playwright.js:2854:26)
at async Test.<anonymous> (codecept/user-logs.spec.js:39:3)
2) User Logs
It renders a new User Log table:
Text "2024-09-06 10:14:50.000" was not found on page after 1 sec.
at Playwright.waitForText (node_modules/codeceptjs/lib/helper/Playwright.js:2854:26)
at runNextTicks (node:internal/process/task_queues:60:5)
at process.processTimers (node:internal/timers:509:9)
Provide test source code if related
Sorry - I don't have a minimal reproduce yet - we basically have a simple logging page and we're looking for an event time on it in a row
Scenario('It renders a User Log table', async ({ I }) => {
I.amOnPage('http://localhost:5057/iframe.html?args=&id=demo-logs-page--renders-correctly&viewMode=story')
I.waitForText('Logs', 10)
await sleep(10000)
// Check there is a table
I.seeElement('.IntegrationDataTable')
I.seeNumberOfVisibleElements('.UserLogsPage__Table tbody tr[data-parent-row="true"]', 14)
I.see('14 of 10000')
// Check column headings
I.see('Event time (UTC)')
I.see('Message')
I.see('Transaction ID')
I.see('Flow ID')
I.see('Log level')
// Check first row
let firstRow = locate('.UserLogsPage__Table tbody tr[data-parent-row="true"]').first()
console.log('first', firstRow)
await within(firstRow, () => {
I.waitForText('2024-09-05 04:14:32.000') <---------- see here
})
Details
- CodeceptJS version: 3.6.9
- NodeJS Version: we've tried with Node.js 22.9.0 and 18.20.4
- Operating System: I'm on Mac OSX
- puppeteer || webdriverio || testcafe version (if related)
We are using Playwright 1.49.1
- Configuration file:
exports.config = {
tests: './codecept/*.spec.js',
output: './codecept/screenshots',
retry: 2,
helpers: {
Playwright: {
url: 'http://localhost:9010',
show: false,
browser: 'chromium',
pressKeyDelay: 2,
waitForAction: 5000
}
},
bootstrap: null,
mocha: {},
name: 'ui-logging',
plugins: {
pauseOnFail: {},
retryFailedStep: {
enabled: true
},
tryTo: {
enabled: true
},
screenshotOnFail: {
enabled: true
},
customLocator: {
enabled: true,
attribute: 'data-testid'
}
}
}
- Dominant language
- JavaScript
- Stars
- 4.2k
- Forks
- 756
- Avg merge
- 2d 9h
- Merged PRs (30d)
- 16
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from codeceptjs/CodeceptJS
-
stale
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
codeceptjs/CodeceptJS#5420 · 1 comment ·
-
stale
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
codeceptjs/CodeceptJS#5358 · 1 comment ·
-
stale
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
codeceptjs/CodeceptJS#4958 · 10 comments · 2 reactions ·
-
stale
Difficulty 1/5 Under an hour Newbie friendliness 72/100
codeceptjs/CodeceptJS#4778 · 3 comments ·
-
stale
Difficulty 4/5 3-5 days Newbie friendliness 38/100
codeceptjs/CodeceptJS#5618 · 1 comment ·
All issues in codeceptjs/CodeceptJS
Similar issues
-
bug confirmed issue
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
open-webui/open-webui#30750 · 1 comment ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
Mend: dependency security vulnerability untriaged
Difficulty 2/5 1-3 hours Newbie friendliness 70/100