【发布时间】:2019-10-14 00:53:20
【问题描述】:
我正在尝试从 API 响应中读取数据。 Chrome Inspect 中的 html 显示了值,但是数字变为 4 或 5。我需要 Cypress 读取数据,并根据该值,做一定的条件。
html
<p _ngcontent-wvl-c5="" class="availablelicenses"> 5 </p>
柏树
it("number of licences", function(){
cy.get('p[class="availablelicenses"]').as("avc");
cy.get('p[class="totallicenses"]').as("ls");
if (avc == ls){
cy.get('button[id="cyAdd"]').click()
cy.get('p[class="add-user"]').contains('All licenses are already assigned')
}
else {
cy.get('button[id="cyAdd"]').click()
cy.get('[data-cy=cyFirst').type('testName')
cy.get('[data-cy=cyLast').type('testLast')
cy.get('[data-cy=cyEmail').type('testEmail@mailinator.com')
}
});
【问题讨论】:
-
不确定在您的场景中是否可行,但您应该设计测试,以便知道许可证数量是多少,然后创建两个测试,一个用于 4 个许可证,另一个用于 5 个许可证。也许您可以使用
cy.route()对 API 进行存根,以使每个测试都看到适当的数字。
标签: javascript angular cypress