这篇文章主要介绍了Cypress这款电脑自动化测试软件的功能和使用方法。作为开发者,我觉得这个工具真的很不错,因为它能极大提升我们的工作效率。
文章提到Cypress的核心功能包括快速调试、实时重载以及高效的错误处理。比如,通过鼠标悬停在命令日志上就能看到具体步骤,这对排查问题特别有用。此外,Cypress的安装过程也十分简单,不需要额外的依赖或代码修改,这一点真的很方便。
文章还详细介绍了如何编写测试用例、设置CI测试以及使用仪表盘来分析测试结果。这些功能让我觉得 Cypress 不仅适合本地开发,也能很好地融入持续集成环境。特别是它的“时间旅行”功能和调试能力,真的很强大。
对于开发者来说,Cypress的实时重载功能特别实用,因为每次修改代码后它会自动重新加载并执行测试,节省了很多时间。此外,文章还展示了如何通过 cy.intercept() 来测试数据请求,这对验证应用程序的行为非常有用。
总的来说,Cypress是一个高效且功能强大的工具,尤其适合前端开发和Web应用测试。它的安装简单、调试方便以及丰富的功能让我觉得它是个值得一试的工具。
Cypress是一款电脑自动化测试软件,该工具能为程序员带来极大便利,赛普拉斯可以让你通过鼠标指向命令日志上的内容即可看到具体步骤,非常便捷快速的调试,对错误和痕迹查看都非常快速,并且实时重载,高效实用。
软件功能
Cypress Test Runner
安装Cypress Test Runner并在本地编写测试。
工具,并在本地编写测试。
设置测试
安装Cypress很简单。不需要任何依赖性,额外的下载,或修改你的代码。
编程
编写测试
轻松、快速地编写测试,并在构建Web应用程序时观看它们的实时执行。
赛普拉斯仪表盘
建立一套CI测试,记录它们并获得强大的洞察力。
时候
运行测试
在CI中调试测试就像在本地运行测试一样简单。内置的并行化和负载平衡。
图形设计图标
测试记录
记录 CI 测试数据、屏幕截图和视频--并在 Dashboard 中查看汇总的下一级见解。

软件特色
是什么让赛普拉斯与众不同?
时间旅行
赛普拉斯会在您的测试运行时进行快照。只需将鼠标悬停在命令日志中的命令上,就可以看到每一步的具体内容。
调试性
不要再猜测为什么您的测试会失败。直接从Chrome DevTools等熟悉的工具中进行调试。我们可读的错误和堆栈痕迹使调试变得非常快速。
实时重载
每当您对测试进行更改时,Cypress会自动重新加载。在您的应用程序中查看命令的实时执行情况。
自动等待
永远不要在你的测试中添加等待或睡眠。Cypress会自动等待命令和断言,然后再继续。没有更多的异步地狱。
安装教程
1) 直接下载Cypress压缩包
① 下载本站压缩包
② 解压到指定目录,然后进入目录,执行Cypress.exe

③ 选择你的项目路径

2) 通过npm来安装Cypress:
① 那么首先安装node.js(npm是一个node包管理和分发工具),
② 打开CMD命令行,利用 mkdir 新建目录,利用 cd 命令切换到指定目录(也可以手动先新建好)

③ 使用 npm install cypress --save-dev 安装Cypress(如果有WARN可忽略,不影响)

④ 使用 node_modules\.bin\cypress open 启动Cypress


怎么定义变量
方法1,可以创建一个cypress.env.json文件,在文件中用添加{"variablename":"value"}方式添加变量。

方法2:在cypress.json文件中添加默认值,如添加默认分辨率
{
"viewportWidth": 1920,
"viewportHeight": 1080
}
使用变量:
在test文件中,用cypress.env("变量名")获取变量。
如何测试查询数据
案例和需求:

从上图中可以看到一个表单。当我输入URL、令牌、密码、ssh和项目名称,并单击Create按钮时,我将它们添加到一个对象中,并在请求中将它们发送到数据库中。
我想将这些值写入Cypress.js(这部分已经完成),然后单击create按钮。单击create按钮后,我想测试作为请求发送的数据。

解决方式:
可以使用cy.intercept()查看出站请求。在此处请求对象文档。
cy.intercept('/some/url', (req) => {
// whatever you need to do with the request object
// for example, validating the request body has a name field
expect(req.body.name).to.equal('My Body Object Name');
// req.continue() tells the request to continue!
req.continue()
});




























共有 0条评论