Cypress介绍

官网

版本

  • v1.0.0-2017.10,基于Electron(Chromium+Node.js),多平台支持,但不支持IE
  • v2.0.0-2018.2,升级至Chromium 59
  • v3.0.0-2018.5,支持Node任务,可以用来连接数据库、读文件等
  • v4.0.0-2020.2,支持Firefox和基于Chromium的Edge浏览器

    优点

  • 界面友好美观

  • 支持模拟手机
  • 每一步操作截图
  • 全程录屏
  • 支持debug,随时暂停
  • 自动等待UI更新,减少异步代码

    使用Cypress

  • 创建目录 cypress-demo-1

  • 打开目录
  • 局部安装cypress $ yarn add --dev cypress
  • $ ./node_modules/.bin/cypress open
  • 打开界面

    运行example

  • 界面

    • 直接在GUI界面单击actions.spec.js
    • 然后看自动化测试过程
  • 命令行
    • ./node_modules/.bin/cypress run -s cypress/integration/examples/actions.spec.js
    • 上面命令后面加上 —headed 就会打开界面

不运行examples

  1. 直接删掉examples目录
  2. 将example/ 从integration/ 目录移走
  3. 在cypress.json里面加上 "ignoreTestFiles":["*.hot-update.js","**/examples/*.*"]

三种方法就不会运行examples
$ ./node_modules/.bin/cypress run

创建自己的测试

在integration/里新建demo.spec.js

  1. describe('百度', () => {
  2. it('能搜索acfun', () => {
  3. cy.visit('https://baidu.com')
  4. cy.get('input#kw').type('acfun')
  5. cy.contains('百度一下').click()
  6. cy.contains('acfun').should('exist')
  7. cy.contains('www.acfun.cn').should('exist')
  8. });
  9. });

运行$ ./node_modules/.bin/cypress open
然后点击 demo.spec.js 即可测试