Cypress是一款基于JavaScript的自动化测试开发工具,它结合了Cucumber测试开发框架,并以Node.js作为服务进程。它可以简单地辅助测试人员完成需要人工操作的所有页面交互,模拟键盘和鼠标输入,快速完成测试用例的验证。
Cypress提供了官方API调用文档,可帮助开发者快速上手:
Cypress开发文档:https://docs.cypress.io/api/table-of-contents
01. Cypress安装教程(适用于MacOS)
安装前准备:
确保已安装Node.js 12或14版本,并在安装前先初始化npm,可通过 npm init
或 npm init -y
进行初始化设置。
安装方式:
通过npm安装Cypress:
<code>cd /your/project/path npm install cypress --save-dev</code>
或者通过Yarn安装Cypress:
<code>cd /your/project/path yarn add cypress --dev</code>
或者直接下载Demo:
下载地址:https://download.cypress.io/desktop 可以指定版本:https://download.cypress.io/desktop/6.8.0
使用方法:
- 直接启动:
在项目根目录下执行以下命令:
<code>./node_modules/.bin/cypress open</code>
或者使用以下命令之一:
<code>$(npm bin)/cypress open npx cypress open</code>
- 官方Demo直接运行:
Demo地址:https://github.com/TheBrainFamily/cypress-cucumber-example
- IDE插件安装:
安装后重启IDE即可。
02. Cypress的基础配置
插件支持配置——package.json文件配置:
在package.json
中指明当前文件版本、使用的Cucumber框架版本、Cypress测试工具版本、所需支持插件名称及版本号,以及测试时的主文件。在 cypress/plugins/index.js
中写入以下代码:
<code>const cucumber = require('cypress-cucumber-preprocessor').default module.exports = (on, config) => { on('file:preprocessor', cucumber()) }</code>
Cypress.json配置及详解:
Cypress支持直接运行JS文件,但如果测试代码分布在不同文件中,每次切换文件需要重新启动浏览器,这样测试过程显得十分繁琐。建议使用Cucumber框架,并创建.features
文件,方便管理。
创建一个Cypress工程:
首先创建一个Node项目,并对package.json
文件进行配置,然后运行npm install
。npm将自动生成Cypress工程结构和所需依赖。
以下是一个简单的Cypress自动化测试示例,用于测试一个简单的网页登录功能:
<code>describe('登录功能测试', () => { it('访问登录页面', () => { cy.visit('https://example.com/login') }) it('输入用户名和密码', () => { cy.get('input[name="username"]').type('testuser') cy.get('input[name="password"]').type('password123') }) it('点击登录按钮', () => { cy.get('button[type="submit"]').click() }) it('验证登录成功', () => { cy.url().should('include', '/dashboard') cy.get('.welcome-message').should('contain', '欢迎回来,testuser') }) })</code>
以上示例展示了Cypress的简洁语法和强大功能,使得编写自动化测试变得非常容易和高效。
暂无评论内容