- 背景:**
有时,用户已经申请了该职位,此时"立即申请"按钮将不可见,而是显示一条成功消息,告诉他们已经申请。
- 使用案例:**
我想通过一个工作板上的列表Map,直到我看到一个工作列表与"立即申请"的逻辑,因为我需要测试登录用户的流。
当点击第一个"立即申请"时,我想停止寻找用户可以申请的其他职位列表。
我相信这需要一些if/else
逻辑,但是我不确定如何使用Cypress talking unfavourably about it来实现这一点。
- 代码:**
describe("Candidate Applications", () => {
// 1. Login as a candidate
beforeEach(() => cy.loginByCognito(Cypress.env("candidate_username"), Cypress.env("candidate_password")));
it("passes", () => {
// 2. Go to the first job listing
cy.visit(TEACHING_JOBS);
const arrayOfListings = [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15];
for (let i = 0; i < arrayOfListings.length; i++) {
cy.get(`[datacy="displayTitle"] `).eq(i).click();
cy.wait(2000);
// If the applicationTop does not contain "Apply Now", use cy.go("back") to go back to the previous page
cy.get("body").then(body => {
if (body.find('[datacy="applyNow"]').length > 0) {
// 3. Apply to the vacancy
cy.get(`[datacy="applyNow"]`).first().click();
...
break;
} else {
cy.go("back");
}
});
}
});
});
- 错误:**
1.所有文本都带有黄色下划线,错误为Function declared in a loop contains unsafe references to variable(s) 'cy', 'cy', 'cy', 'cy', 'cy', 'cy', 'cy', 'cy', 'cy'.
1.添加break
引入错误Jump target cannot cross function boundary
,Cypress GUI显示Module parse failed: Unsyntactic break (37:20)
1条答案
按热度按时间btqmn9zl1#
不要执行
const arrayOfListings = [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15];
来驱动for循环。请改用正确的Cypress命令
这应该,如果不是解决推动你前进。