cypress相关内容

这句话是什么意思“赛普拉斯命令不返回他们的主题,他们让他们"?

我正在了解 Cypress.io,并在他们的官方网站上看到了这个声明 Cypress.io “Cypress 命令不返回它们的主题,而是让它们." cypress.io 中命令中的“yield"和“return"有什么区别? 解决方案 我把yield 的意思是'付钱',而return = '付钱'. 参见核心概念 赛普拉斯命令是异步的,并会排队等待稍后执行.在执行过 ..
发布时间:2022-01-19 12:55:16 前端开发

如何在 Cypress.io (electron/chrome) 中设置浏览器的语言?

我的问题是关于配置 Cypress 以启动特定语言的浏览器实例. 为了: 对本地化 (i18n) 文本标签进行断言? 检查 i18n 功能(在语言之间切换) 绕过持续集成 (CI/CD) 的问题,例如,在本地计算机,浏览器默认为 fr_FR,在 CI/CD VM 上默认为 en_US? 我试过了(没有成功): 在终端调用中使用 LANGUAGE=en_US, 使用浏览 ..

Cypress.io:服务器错误 |404 - 找不到文件或目录

我目前正在尝试自动化测试一个相当大的 Web 应用程序 (DMS) 文档管理系统.稍微解释一下系统:有一个负载均衡器连接到两个前端之一.为了确保在我的测试中不会出现问题,我直接尝试访问前端.现在解决我的问题: 尝试使用 Test Runner 运行所有测试(大约 20 个规范文件)以及尝试使用以下命令通过控制台运行测试时:.\node_modules\.bin\cypress run --规 ..
发布时间:2022-01-14 18:12:53 前端开发

如何在柏树中停止循环

我有一个循环检查 40 个项目.当我找到> 0 的第一个元素时,我想停止我的循环这是我的代码 var genArr = Array.from({ 长度: 40 }, (v, k) => k + 1); cy.wrap(genArr).each((index) => {cy.get('.list-item').eq(index - 1).find('.number').invoke('文本' ..
发布时间:2022-01-14 18:07:30 其他开发

在赛普拉斯中,如何计算选择的项目并获得长度?

我开始学习赛普拉斯.我有一个 4 行表(带有一类数据表).我可以通过这种方式验证行数: cy.get('.datatable').find('tr').each(function(row, i){期望(i).to.be.lessThan(4)}) 这很好,但看起来很尴尬,因为我只想计算长度,并不需要访问行中的内容,而且我认为做一件事比做 4 件事要快. 如果我记录选择(不知道还能叫什么) ..
发布时间:2022-01-14 17:46:45 其他开发

仅在一次测试中禁用赛普拉斯中的网络安全

阅读完赛普拉斯文档网络安全以及何时禁用它,我已经决定我确实需要这样做.有没有办法只为一个特定的测试/测试套件禁用它?我正在使用 version 3.4.1 并且此配置是在 cypress.json 中设置的 - 因此它对于所有测试都是全局的. 有没有办法只为一次测试禁用网络安全?谢谢! 解决方案 原答案: 这对你有用吗? describe("测试配置 json", funct ..
发布时间:2022-01-14 17:32:01 其他开发

cy.url() 和/或 cy.location('href') 不返回字符串

我有一个编辑器页面.当我添加任何内容并单击“保存"按钮时,我的 URL 将更改,在 URL 中添加一个随机 ID.每次单击“保存按钮"时,我想检查我的 ID 是否正在更改. 我将 URL 结果保存在变量中并想检查它,我这样做: const currentURL = cy.url();cy.get('.editor-toolbar-actions-save').click();cy.url( ..
发布时间:2022-01-14 17:31:23 其他开发

赛普拉斯获取 href 属性

我有一个测试用例,其中有一个在新选项卡中打开的链接.由于赛普拉斯不支持多个选项卡,我想获取该链接的 href 属性,然后在同一个选项卡中打开它.我正在尝试这样做,但由于某种原因它不起作用. it('广告链接应参考联系页面', () => {var link = document.querySelector("div.footer-nav > ul > li:nth-child(2) > a"). ..
发布时间:2022-01-14 17:28:02 前端开发

赛普拉斯 - 在 iframe 中运行测试

我正在尝试在 iframe 中查找元素,但它不起作用. 有没有人有一些系统可以在 iframe 中使用 Cypress 运行测试?一些进入 iframe 并在那里工作的方法. 解决方案 这是一个提到的已知问题 这里.您可以创建自己的自定义 cypress 命令来模拟 iframe 功能.将以下函数添加到您的 cypress/support/commands.js Cypress.C ..
发布时间:2022-01-14 17:23:00 其他开发

使用 cypress 命令验证下载文件(PDF/Word/Excel)的数据

我有一种情况,我必须使用赛普拉斯命令验证下载文件的数据.文件类型:- pdf、word、excel.我有被调用的服务器 API 操作的 URL,作为响应,它返回 pdf 文件.我需要使用 Cypress 命令和 Typescript(插件和打字)来实现. 我能够获得下载的状态,甚至 response.body 也有一些文本,但它需要一些解析器来解析响应正文.下面是我尝试过的代码. cons ..

有没有办法在本地机器上运行并行柏树测试,例如 5 个流

我正在尝试在本地机器上设置 cypress 并运行并行测试.但我找不到一些信息如何做到这一点. 解决方案 从技术上讲,这是可能的.Cypress 不建议这样做,因为在同一台机器上运行多个 cypress 实例会消耗大量资源(总体而言是 CPU),并且会降低整个机器的性能并导致无用的结果. 无论如何,如果您的资源有限并且您无法使用官方仪表板或者您没有多个 CI 服务器可用,您可以在单台 ..
发布时间:2022-01-12 19:43:40 其他开发

使用赛普拉斯的 e2e 测试中的身份验证错误:chrome-error://chromewebdata

我正在使用 cypress 为我的 UI 编写 E2E 测试(请注意,它是 PowerBI 报告,因此是一种特殊情况).当我使用公开报告进行测试时,它工作正常.但是当它是私人 PBI 报告时,我在登录部分遇到问题.经过一番研究,我发现这种方法对基于 Azure AD 的身份验证很有前景,并在我的 commands.js 文件中添加了这个登录功能: Cypress.Commands.add('lo ..

赛普拉斯:我们如何在赛普拉斯中使用不记名令牌编写 GET 请求?

我有两个请求:一个是POST请求,另一个是get.首先,我通过邮寄方式获取用户访问令牌,而在其他情况下,我使用此 accessToken 获取登录信息.我的代码不起作用. 我使用的是 window 7 和 cypress 3.3.5 我的代码: var 值;描述(“登录操作",()=> {it(“使用 post 方法登录请求", () => {cy.request({方法:'POST ..
发布时间:2022-01-05 15:59:22 前端开发

Cypress 不拦截 GraphQL API 调用

我正在尝试拦截 graphql 突变以访问其响应.Cypress 不会注意到请求并且 cy.wait() 超时. 测试 describe('/profile', () => {beforeEach(() => {cy.server()cy.route({方法:'POST',url: Cypress.config().baseUrl + '/graphql',}).as('graphql') ..
发布时间:2022-01-04 11:09:24 其他开发

如何在 Cypress 中为特定的 GraphQL 请求设置别名?

在 Cypress 中,您可以使用别名有据可查的特定的网络请求,然后您可以“等待".如果您想在特定网络请求触发并完成后在 Cypress 中执行某些操作,这将特别有用. 以下来自 Cypress 文档的示例: cy.server()cy.route('POST', '**/users').as('postUser')//别名出现在这里cy.visit('/用户')cy.get('#firs ..
发布时间:2022-01-04 10:32:14 其他开发