尝试从 Cypress 中的元素获取属性时出错

2024-02-13

我有这个 HTML 元素:

<input id="" type="text" name="last_name" value="Userc7bff2d0-7faf-11e8-9884-8fe4c5df7f77-Updated" class="medium" maxlength="2000" autocomplete="off" tabindex="" data-reactid=".0.2.0.1.0.2.1.0.1.0.0.1:0.1.0.1.2:$/=10">

我想得到它value属性来断言它已被我的测试更新。

我尝试过使用its():

cy
  .get(selector)
  .its("value")
  .should("contain", "-Updated");

但得到错误:

CypressError:重试超时:cy.its() 出错,因为您的主题上不存在属性:“value”。

我也尝试过invoke:

cy
  .get(selector)
  .invoke("value")
  .should("contain", "-Updated");

但得到类似的错误:

CypressError:重试超时:cy.invoke() 出错,因为您的主题上不存在属性:“value”。

在这两种情况下,get() 命令的 Cypress 控制台输出都会显示该元素及其value财产成功:

产量:输入 id="" type="text" name="first_name" value="Fake-Updated" class="medium" maxlength="2000" autocomplete="off" tabindex="" data- reactid=".0.2.0.1.0.2.1.0.1.0.0.1:0.1.0.0.2:$/=10"

我对这个有点难住了。如果您需要更多信息或了解发生了什么事,请告诉我。


invoke() https://docs.cypress.io/api/commands/invoke.html#在元素上调用 jquery 函数。要获取输入的值,请使用该函数val():

cy.get('input').invoke('val').should('contain', 'mytext')

This is not与获取相同值属性它不会随着用户输入而更新,它仅在元素呈现时预设值。要获取属性,可以使用 jquery 函数attr():

cy.get('input').invoke('attr', 'placeholder').should('contain', 'username')
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

尝试从 Cypress 中的元素获取属性时出错 的相关文章

  • cypress - 访问主站点时出现 403 禁止错误

    我正在尝试 cy visit 我的单页应用程序 该应用程序需要在浏览器中加载我的证书才能正确运行 运行测试时 它失败并出现 403 禁止错误 有一个可怕的解决方法 我在 cypress chrome 浏览器窗口中打开一个新选项卡 然后直接转
  • Cypress - 从 json 响应正文获取值

    我正在使用 Cypress 进行一些 API 测试 但我很难访问 JSON 响应正文中的值 但是我可以对身体进行断言 表明它正确接收了它 下面我尝试分配 JSON 主体 response body 然后从中获取 id 的值 describe
  • 如何在 Cypress.io 中强制测试失败

    在 Cypress io 中 如果满足特定条件 有没有一种方法可以强制测试失败 例如 在我的网页上 如果字符串 抱歉 出了点问题 出现在我希望测试失败的页面上 目前这就是我正在做的事情
  • 如何在 codemirror 编辑器中使用 cypress .type() 进行输入?

    我正在写一些cypress测试 Codemirror 编辑器 我有用cypress在输入字段中键入 我正在努力实现cy type 在 CodeMirror 编辑器中 我在 codemirror 中的数据位于范围内 pre class Cod
  • Cypress - 为所有 XHR 请求添加自定义标头

    我注意到X CSRFToken对于从被测应用程序触发的所有 XHR 请求 标头在测试之间被删除 我不确定是否保留此标头 因为我已经通过以下方式保留了 CookieCypress Cookies preserveOnce sessionid
  • 将cypress测试框架添加到Maven pom.xml

    尝试在 Maven 项目中使用新的 cypress 框架 文档只有一个 npm 模块设置示例 npm install cypress 和一个 package json 使用示例 如何将其转换为 Maven 依赖项中的用法 您也可以直接下载C
  • 将 Cypress 与 Typescript 一起使用会给我在文档 JQuery not Defined 的示例中出现“get”的类型错误

    我正在尝试按照此处找到的文档使用 Cypress 设置 Typescript https docs cypress io guides tooling typescript support Configure tsconfig json h
  • 如何在 cypress 中测试错误请求

    我正在使用不正确的凭据测试 cypress 中的 POST 方法的日志记录 这会返回 400 个错误请求 我需要对其进行测试 这就是我所拥有的 describe Login API Test Correct user login gt it
  • 在 Cypress 中如何根据名称选择输入元素?

    我开始学习Cypress 我想使用 cypress io 选择输入字段并提供电话号码 我遵循的代码但它不起作用 但是我可以使用 find 还是有其他方法让输入元素输入电话号码 cy get div contains Phone Number
  • Cypress 与 NextJS SSR - 使用 Axios 拦截 RESTful API

    我正在尝试在我的 SSR next js 应用程序上使用 cypress 和固定装置编写一些测试 该应用程序使用 Axios 连接到 RESTful API 但我在拦截 RESTful API 时遇到了麻烦cy intercept 因为 c
  • 在 Cypress 测试中尝试使用 Auth0 登录时出错

    我们的应用程序只能由经过身份验证的用户访问 并且我们使用Auth0 https auth0 com 用于身份验证 我们已经开始编写 Cypress 测试 并且在每次测试之前尝试使用 Auth0 JavaScript 客户端登录 第一个测试总
  • Cypress Angular 什么时候可以开始测试?

    我正在使用 Cypress 对我的 Angular 应用程序进行端到端测试 我观察到的问题之一是 Cypress 的反应速度很快 而我的应用程序准备交互的速度 相对 慢 Cypress 有一些经常被引用的blog https www cyp
  • 使用请求方法登录Cypress

    我注册并登录用户 但是 当在测试中导航到身份验证后面的页面时 Cypress 失败并将我带回登录页面 从它的外观来看 before函数已成功执行 由 API 日志验证 这是我的代码 describe Dashboard page gt be
  • Cypress:在第一次失败时中断所有测试

    如何在第一次测试失败时中断所有赛普拉斯测试 我们使用信号量为每个 PR 与 Cypress 启动完整的 e2e 测试 但这需要太多时间 我想在第一次测试失败时中断所有测试 获取完整的错误是每个开发人员在开发时的职责 如果在部署之前出现任何问
  • Cypress:如何模拟键盘(CTRL/SHIFT)操作

    如图所示 我在树中有这些元素 如果我按键盘中的 CTRL 并单击这些文本 我可以选择多个元素 它会提供执行某些操作的链接 使用 cypress 有什么方法可以实现此目的吗 我知道如果它是选择 我可以使用选择 在我的情况下 这些只是 ul 另
  • Cypress - 验证一列中的每个表行是否包含相同的项目

    我有一个表 但是某种由 DIV 创建的 ag grid 而不是真正的表元素 div div Name 1 div div 25 div div div div Name 1 div div 25 div div 我想验证每个字段是否带有co
  • 在笑话单元测试角度中显示正确的错误

    我正在 NX 角度工作区中编写单元测试 有时它会给出这样的错误 node 15320 UnhandledPromiseRejectionWarning TypeError Converting circular structure to J
  • 在cypress中捕获websocket请求

    我试图捕获测试期间发生的所有请求 我的应用程序使用 WebSocket 并且使用拦截命令我无法捕获 wss 请求 有什么办法可以做到这一点吗 我认为拦截命令不能直接捕获网络套接字 一种方法是观察 ws 通信的结果 如下所示使用 Cypres
  • 如何使用 cypress 断言输入值是真实的

    我有一些意见
  • Cypress.io 如何处理异步代码

    我正在将旧的水豚测试转移到 cypress io 因为我们的应用程序正在采用 SPA 方式 在我们的案例中 我们有超过 2000 个测试 涵盖了很多功能 因此 测试功能的常见模式是让用户创建并发布报价 一开始我写了 cypress 浏览页面

随机推荐