赛普拉斯:内部在 CI 中失败
Cypress: within is failing in CI
我在 Ubuntu 20.04 上使用 Cypress v7.7。我正在使用以下内容来定位特定的产品卡片及其中的元素:
cy.getBySel("listing-container-loaded").should("exist");
cy.getBySelLike("product-card").should("have.length", 24);
cy.getBySel(`product-card LS T-SHIRT`).within(() => {
cy.getBySel("palette-color")
.filter('[aria-selected="true"]')
.should("have.attr", "aria-label", "Black");
});
这在本地运行良好(无论是有头模式还是无头模式,以及多个浏览器)。在 Gitlab CI 中,尽管它一直因无法描述的错误而失败:
- within function(){}
以下是本地结果:
我的getBySel
和getBySelLike
命令如下:
Cypress.Commands.add("getBySel", (selector, ...args) => {
return cy.get(`[data-test="${selector}"]`, ...args);
});
Cypress.Commands.add("getBySelLike", (selector, ...args) => {
return cy.get(`[data-test*="${selector}"]`, ...args);
});
有没有其他人以前遇到过这个错误,或者对尝试的事情有什么建议?
在 cypress.json 中启用 junit 报告后,我发现抛出一个 TypeError,但在屏幕截图中看不到。 CI 中的数据存在无法在本地重现的问题。
{
// ...
"reporter": "junit",
"reporterOptions": {
"mochaFile": "cypress-report-[hash].xml"
}
}
TypeError: Cannot read property 'Black' of undefined
at Context.eval (http://localhost:8080/__cypress/tests?p=cypress/integration/selection.spec.js:234:82)
我在 Ubuntu 20.04 上使用 Cypress v7.7。我正在使用以下内容来定位特定的产品卡片及其中的元素:
cy.getBySel("listing-container-loaded").should("exist");
cy.getBySelLike("product-card").should("have.length", 24);
cy.getBySel(`product-card LS T-SHIRT`).within(() => {
cy.getBySel("palette-color")
.filter('[aria-selected="true"]')
.should("have.attr", "aria-label", "Black");
});
这在本地运行良好(无论是有头模式还是无头模式,以及多个浏览器)。在 Gitlab CI 中,尽管它一直因无法描述的错误而失败:
- within function(){}
以下是本地结果:
我的getBySel
和getBySelLike
命令如下:
Cypress.Commands.add("getBySel", (selector, ...args) => {
return cy.get(`[data-test="${selector}"]`, ...args);
});
Cypress.Commands.add("getBySelLike", (selector, ...args) => {
return cy.get(`[data-test*="${selector}"]`, ...args);
});
有没有其他人以前遇到过这个错误,或者对尝试的事情有什么建议?
在 cypress.json 中启用 junit 报告后,我发现抛出一个 TypeError,但在屏幕截图中看不到。 CI 中的数据存在无法在本地重现的问题。
{
// ...
"reporter": "junit",
"reporterOptions": {
"mochaFile": "cypress-report-[hash].xml"
}
}
TypeError: Cannot read property 'Black' of undefined
at Context.eval (http://localhost:8080/__cypress/tests?p=cypress/integration/selection.spec.js:234:82)