想象一下,当我们做手动测试时执行的步骤是:创建测试数据-通过页面操作完成业务流程操作-检查执行结果是否符合预期。自动化测试执行过程和手动测试过程一致,区别是把手动的步骤转换为脚本自动执行而已。除完成手动测试中数据准备,业务流程执行、结果校验外,自动化测试还需做到多环境切换运行,故自动化测试还涉及配置信息管理。为了降低维护成本需要考虑测试框架对代码调试的支持,另外,需要提升脚本稳定性、可读性、获取度量指标进行持续优化。下图是搭建稳定、完善的UI层自动化测试需要考虑的点。此次将从第一个模块“定位操作页面元素”开始详细介绍如何使用cypress框架实现定位操作页面元素,为了便于学习,拆分了2分tas
Selenium对Cypress:Cypress替代Selenium? 通过自动化测试程序,你的公司不仅可以节省金钱和时间,还可以提供优质的产品。Selenium已经成为几乎任何一种包括基于浏览器的应用程序的测试要求的首选测试框架。然而,随着自动化测试世界的不断发展,最新的工具已经出现了。其中最主要的是Cypress.io,一个自动化测试框架,正在成为Selenium的一个越来越流行的替代品。Cypress或Selenium是你自动化测试要求的完美选择吗?继续阅读这篇博客,了解一些提示,为什么你可能愿意选择一个或另一个--甚至在类似的时间内使用两者。以下是在进行Selenium与Cypr
Selenium对Cypress:Cypress替代Selenium? 通过自动化测试程序,你的公司不仅可以节省金钱和时间,还可以提供优质的产品。Selenium已经成为几乎任何一种包括基于浏览器的应用程序的测试要求的首选测试框架。然而,随着自动化测试世界的不断发展,最新的工具已经出现了。其中最主要的是Cypress.io,一个自动化测试框架,正在成为Selenium的一个越来越流行的替代品。Cypress或Selenium是你自动化测试要求的完美选择吗?继续阅读这篇博客,了解一些提示,为什么你可能愿意选择一个或另一个--甚至在类似的时间内使用两者。以下是在进行Selenium与Cypr
1.Cypress介绍1.1Cypress简介 Cypress是一款基于JavaScript的下一代前端测试工具。可以对浏览器中运行的任何内容进行快速、简单和可靠的测试。 Cypress是自集成的,提供了一套完整的端到端测试,无须借助其他外部工具,安装后即可快速地创建、编写、运行测试用例,且对每一步操作都支持回看。另外Cypress也支持集成测试、单元测试。Cypress底层协议不采用WebDriver1.2Cypress原理 大多数测试工具(Selenium/Webdriver)通过在浏览器外部启动一个代理客户端,再通过网络向代理客户端发送命令来运行。而Cypress则刚好相反,其与应
1.Cypress介绍1.1Cypress简介 Cypress是一款基于JavaScript的下一代前端测试工具。可以对浏览器中运行的任何内容进行快速、简单和可靠的测试。 Cypress是自集成的,提供了一套完整的端到端测试,无须借助其他外部工具,安装后即可快速地创建、编写、运行测试用例,且对每一步操作都支持回看。另外Cypress也支持集成测试、单元测试。Cypress底层协议不采用WebDriver1.2Cypress原理 大多数测试工具(Selenium/Webdriver)通过在浏览器外部启动一个代理客户端,再通过网络向代理客户端发送命令来运行。而Cypress则刚好相反,其与应
2Cypress安装2.1安装要求2.1.1系统要求 在操作系统满足以下要求时,才能进行安装,具体要求如下所示:MacOS10.9+(仅支持64位版本)LinuxUbuntu12.04+、Fedora21和Debian(支持64位版本)Windows7+(仅支持64位版本)2.1.1组件要求 如果使用npm安装,则要求如下所示:Node.js12或14以上版本其他系统的安装所需要的组件,可查问官网:https://docs.cypress.io/guides/getting-started/installing-cypress#System-requirements2.2安装 Cypre
2Cypress安装2.1安装要求2.1.1系统要求 在操作系统满足以下要求时,才能进行安装,具体要求如下所示:MacOS10.9+(仅支持64位版本)LinuxUbuntu12.04+、Fedora21和Debian(支持64位版本)Windows7+(仅支持64位版本)2.1.1组件要求 如果使用npm安装,则要求如下所示:Node.js12或14以上版本其他系统的安装所需要的组件,可查问官网:https://docs.cypress.io/guides/getting-started/installing-cypress#System-requirements2.2安装 Cypre
6命令行运行Cypress Cypress命令行的运行基本语法格式如下所示:cypress[options] command代表运行的命令,是必选参数。支持的命令有:open、run、install、verify、cache、version、help。options是代表各command支持的参数,是可选参数。在日常项目,用得较多的是run和open两个命令。6.1cypressrun6.1.1概述 cypressrun主要用于在命令行模式下运行测试用例,直到结束。默认情况下,cypressrun使用无头模式运行测试。其基本语法格式如下所示:cypressrun[options]6.1.
6命令行运行Cypress Cypress命令行的运行基本语法格式如下所示:cypress[options] command代表运行的命令,是必选参数。支持的命令有:open、run、install、verify、cache、version、help。options是代表各command支持的参数,是可选参数。在日常项目,用得较多的是run和open两个命令。6.1cypressrun6.1.1概述 cypressrun主要用于在命令行模式下运行测试用例,直到结束。默认情况下,cypressrun使用无头模式运行测试。其基本语法格式如下所示:cypressrun[options]6.1.
3Cypress测试框架概述3.1Cypress默认文件结构 在Cypress安装完成后,其生成的默认文件目录如下所示:3.1.1Fixtures Fixture又称之为测试夹具,通常配合cy.fixture命令使用,主要用于存储测试用例的外部静态数据。其默认位置位于cypress\fixtures中,也可以根据需要配置到其他目录。Fixtures里面的静态数据通常存储在json文件中,而这部分数据通常是某个网络请求对应的响应部分,如HTTP状态码和返回值等。Fixture的应用场景通常为,当测试需要对某些外部接口进行访问并依赖于其返回值时,可以使用fixture而无需访问这些接口。3.1