cypress - 如何在 Cypress 中查询 HTML 标签值?

标签 cypress

<g class="ABC" transform="translate(786.9,53)" score="1.3">

如何查询此示例 HTML 标记的分值?

我正在编写一个测试来查询分数属性(在上面的示例中为1.3)并将其与我的测试中的正确数字进行比较。

我不知道如何获取分数属性值。 cy.get() 没有给我我需要的东西。

谢谢。

最佳答案

Cypress 让您可以直接访问 DOM。如果您想定位 DOM 对象并直接对其进行操作,您将需要使用 then() 函数。

这是一个适合您的情况的示例:

cy.get("g.ABC").then(elem => {
    let score = elem.attr("score");
    cy.log(score);
    // etc...
});

参见this doc page了解更多信息。


如果您想直接对值执行摩卡断言,请使用 should() 来利用自动重试:

cy.get("g.ABC").should(elem => {
    let score = elem.attr("score");
    // If this assertion fails, the entire block will retry until it doesn't.
    expect(score).to.equal("1.3");
});

参见this doc page了解更多信息。

关于cypress - 如何在 Cypress 中查询 HTML 标签值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52006491/

相关文章:

cypress - 我应该使用 wait() 等待对话框关闭吗?有没有更好的办法?

javascript - 使用 Cypress 测试重定向到新路由

javascript - 我如何提供一个检测文件夹来运行我的 Cypress 测试?

automated-tests - 在 Cypress 中禁用 Web 安全仅用于一项测试

reactjs - 如何在 Cypress 中测试 React Material UI Drawer 组件属性值

angularjs - 使用 cypress 选择下拉列表项

javascript - 如何在 cy.visit() 中向 URL 插入动态值?

Cypress ,如何获得计数

javascript - 如何判断 Cypress 中的 React Web 组件按钮是否被禁用?

docker - Cypress 无法在 Docker 容器中运行