Cypress UI自动化测试框架学习(1)- 入门

2023-10-30 18:30

本文主要是介绍Cypress UI自动化测试框架学习(1)- 入门,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Cypress UI自动化测试框架学习(1)- 入门

Introduction

基于 JavaScript 的前端自动化测试工具,可以对浏览器中运行的任何内容进行快速、简单、可靠的测试

Cypress 是自集成的,提供了一套完整的端到端测试,无须借助其他外部工具,安装后即可快速地创建、编写、运行测试用例,且对每一步操作都支持回看

不同于其他只能测试 UI 层的前端测试工具,Cypress 允许编写所有类型的测试,覆盖了测试金字塔模型的所有测试类型【界面测试,集成测试,单元测试】

Cypress官网:https://www.cypress.io/

Getting Started

下面以MacOS来进行介绍,其他系统可参考官网信息

Operating System

  • macOS 10.9 and above (64-bit only)
  • Node.js 12 or 14 and above

Before Started

  • 已安装好node.js和npm

  • 已安装好vs code或者其他代码编辑器

Started and Run

  • Step1:通过npm新建项目
# 新建项目文件夹
$ mkdir cypress-demo
# 进入项目文件夹
$ cd cypress-demo
# npm项目环境准备
$ npm init
  • Step2:安装cypress
# 项目安装cypress包
$ npm install cypress --save-dev
  • Step3:运行cypress程序

若提示:npm ERR! missing script: cypress:open,可在项目根目录package.json文件的scripts下新增"cypress:open": “cypress open”,保存后再次运行命令即可

# 启动demo
$ npm run cypress:open

Started Screenshot

  • 运行截图

  • demo用例执行截图

Try First Testscript

Testcase

1.访问光谷社区主页http://www.guanggoo.com/
2.验证是否正确跳转到光谷社区页面
3.验证网页标题是否正确
4.点击登录按钮,验证正确跳转到登录页面
5.在登录页面输入用户名和输入密码
6.点击登录按钮,验证登录成功

Testscript

  • 在项目cypress/integration下新建demo文件夹

  • 在demo文件夹下新建demo-guanggoo.js

  • demo-guanggoo.js编写测试脚本

脚本中账号密码需换成自己的账号密码

describe('first testcase for cypress',function(){it('visit guanggoo homepage and login for guanggoo:',function(){// 访问并登录光谷社区cy.visit('http://www.guanggoo.com/') //访问urlcy.url().should('include','www.guanggoo.com')     //验证目标url 是否正确包含光谷社区正确域名 验证是否正确跳转到光谷社区页面cy.title().should('contain','光谷社区')  //验证页面 title 是否正确cy.get(':nth-child(1) > .nav-collapse').click()   //点击登录按钮cy.url().should('include','login')  //验证正确跳转到登录页面cy.get('#email') //根据 css 定位用户名输入框.type('dengnao.123@163.com')        //输入用户名cy.get('#password') //根据 css 定位密码输入框.type('xxxxxxx')        //输入密码cy.get('.btn-success').click()   //点击登录按钮})
})

Run Screenshot

  • 运行cypress程序
# 启动
$ npm run cypress:open

  • 页面上选择点击运行demo-guanggoo.js即可

  • 运行通过无报错,代表用例编写成功

这篇关于Cypress UI自动化测试框架学习(1)- 入门的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/309804

相关文章

5 种使用Python自动化处理PDF的实用方法介绍

《5种使用Python自动化处理PDF的实用方法介绍》自动化处理PDF文件已成为减少重复工作、提升工作效率的重要手段,本文将介绍五种实用方法,从内置工具到专业库,帮助你在Python中实现PDF任务... 目录使用内置库(os、subprocess)调用外部工具使用 PyPDF2 进行基本 PDF 操作使用

C#自动化实现检测并删除PDF文件中的空白页面

《C#自动化实现检测并删除PDF文件中的空白页面》PDF文档在日常工作和生活中扮演着重要的角色,本文将深入探讨如何使用C#编程语言,结合强大的PDF处理库,自动化地检测并删除PDF文件中的空白页面,感... 目录理解PDF空白页的定义与挑战引入Spire.PDF for .NET库核心实现:检测并删除空白页

Java 缓存框架 Caffeine 应用场景解析

《Java缓存框架Caffeine应用场景解析》文章介绍Caffeine作为高性能Java本地缓存框架,基于W-TinyLFU算法,支持异步加载、灵活过期策略、内存安全机制及统计监控,重点解析其... 目录一、Caffeine 简介1. 框架概述1.1 Caffeine的核心优势二、Caffeine 基础2

Python实现自动化删除Word文档超链接的实用技巧

《Python实现自动化删除Word文档超链接的实用技巧》在日常工作中,我们经常需要处理各种Word文档,本文将深入探讨如何利用Python,特别是借助一个功能强大的库,高效移除Word文档中的超链接... 目录为什么需要移除Word文档超链接准备工作:环境搭建与库安装核心实现:使用python移除超链接的

使用Python实现Word文档的自动化对比方案

《使用Python实现Word文档的自动化对比方案》我们经常需要比较两个Word文档的版本差异,无论是合同修订、论文修改还是代码文档更新,人工比对不仅效率低下,还容易遗漏关键改动,下面通过一个实际案例... 目录引言一、使用python-docx库解析文档结构二、使用difflib进行差异比对三、高级对比方

从入门到精通详解Python虚拟环境完全指南

《从入门到精通详解Python虚拟环境完全指南》Python虚拟环境是一个独立的Python运行环境,它允许你为不同的项目创建隔离的Python环境,下面小编就来和大家详细介绍一下吧... 目录什么是python虚拟环境一、使用venv创建和管理虚拟环境1.1 创建虚拟环境1.2 激活虚拟环境1.3 验证虚

GSON框架下将百度天气JSON数据转JavaBean

《GSON框架下将百度天气JSON数据转JavaBean》这篇文章主要为大家详细介绍了如何在GSON框架下实现将百度天气JSON数据转JavaBean,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录前言一、百度天气jsON1、请求参数2、返回参数3、属性映射二、GSON属性映射实战1、类对象映

Python自动化处理PDF文档的操作完整指南

《Python自动化处理PDF文档的操作完整指南》在办公自动化中,PDF文档处理是一项常见需求,本文将介绍如何使用Python实现PDF文档的自动化处理,感兴趣的小伙伴可以跟随小编一起学习一下... 目录使用pymupdf读写PDF文件基本概念安装pymupdf提取文本内容提取图像添加水印使用pdfplum

基于Python实现自动化邮件发送系统的完整指南

《基于Python实现自动化邮件发送系统的完整指南》在现代软件开发和自动化流程中,邮件通知是一个常见且实用的功能,无论是用于发送报告、告警信息还是用户提醒,通过Python实现自动化的邮件发送功能都能... 目录一、前言:二、项目概述三、配置文件 `.env` 解析四、代码结构解析1. 导入模块2. 加载环

Python实战之SEO优化自动化工具开发指南

《Python实战之SEO优化自动化工具开发指南》在数字化营销时代,搜索引擎优化(SEO)已成为网站获取流量的重要手段,本文将带您使用Python开发一套完整的SEO自动化工具,需要的可以了解下... 目录前言项目概述技术栈选择核心模块实现1. 关键词研究模块2. 网站技术seo检测模块3. 内容优化分析模