Cypress 笔记

本文详细介绍了Cypress的特点,如基于node.js的E2E测试框架,支持Chrome和Firefox,无需webdriver,具备自动等待功能。内容涵盖安装、使用方法、元素定位、页面操作、HOOK钩子、测试数据准备、参数化、测试报告生成等,同时提供了关闭Chrome跨域检查和处理失败用例的插件信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Cypress 的特点

1. 基于 node.js 环境的 E2E 前端自动化测试框架
2. 支持 Chrome 和 Firefox 浏览器,自动等待
3. 不用 web driver 驱动浏览器,运行速度快
4. 支持失败用例自动截屏
5. 对运行过程的自动录制视频
6. 时光穿梭看各步骤的 snapshoot
7. 支持 CI 和并发运行,收集测试结果
8. 支持 Junit+Allure 生成测试报告

安装和使用

安装 node.js 之后,运行命令安装 cypress
$ npm install cypress --save-dev

启动待测服务 / 应用
$ npm start & wait-on http://localhost:8080

启动 Cypress Test Runner
$ npx cypress open

运行指定用例,使用 Chrome 浏览器
$ npx cypress run --spec "cypress/integration/login.js" --browser chrome

演示用例 login.js

//用例集
describe('UI loginTest',function(){   
    //用例
    it('console root login',function(){   
        //打开页面
        cy.visit('http://localhost:8080/rootlogin')
        cy.url().should('contain','randomKey')
        //输入用户,密码,点击登录
        cy.get('[name=username]').type('root')
            .should('have.value','root')
        cy.get('[name=password]').type('password')
            .should('have.value','password')
        cy.get('.el-button').click()
        //登录后进入页面
        cy.title().should('contain','系统管理员')
        cy.wait(1000)
        //登出
        cy.contains('root').click()
        cy.contains("退出登录").click()
        cy.url().should('contain','randomKey')
    })
    
    it('console user login', function(){
        // user login test 
    })
})

元素定位方式

cy.get() - 按 CSS 或

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数据搜集者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值