Cypress自动化环境搭建
1、Cypress 下载:
官网下载,下载后直接解压即可,解压后便可单机exe文件打开
Ps:直接打开exe是会报错找不到json文件的,所以还要安装依赖环境
运行cypress项目前,必须vue-cli创建项目,但是vue是基于node环境的,所以我们还要先安装node.js
2、安装node.js
官网下载地址:https://nodejs.org/en/download/
安装步骤就不说了,傻瓜式一键继续安装
查看是否安装成功命令
node –v :查看node版本
npm –v :查看npm版本
ps:新的node安装包已经包换了npm
2.1、node环境配置
这里的环境配置主要配置的是npm安装的全局模块所在的路径,以及缓存cache的路径,之所以要配置,是因为以后在执行类似:npm install express [-g] (后面的可选参数-g,g代表global全局安装的意思)的安装语句时,会将安装的模块安装到【C:\Users\用户名\AppData\Roaming\npm】路径中,占C盘空间
例如:我希望将全模块所在路径和缓存路径放在我node.js安装的文件夹中,则在我安装的文件夹【D:\Develop\nodejs】下创建两个文件夹【node_global】及【node_cache】如下图:
创建完两个空文件夹之后,打开cmd命令窗口,输入
npm config set prefix "D:\Develop\nodejs\node_global"
npm config set cache "D:\Develop\nodejs\node_cache"
然后就是设置环境变量了
新建NODE_PATH 输入【D:\Develop\nodejs\node_global\node_modules】
然后将【用户变量】下的【Path】修改为【D:\Develop\nodejs\node_global】
Ps:是用户变量的path,不是全局的path
测试:
配置完后,安装个module测试下,我们就安装最常用的express模块,打开cmd窗口,
输入如下命令进行模块的全局安装:
npm install express -g # -g是全局安装的意思
Ps:当时安装的时候并未出现node_golbal路径,好像也并无关系,反正已经安装好
参考文档:https://www.cnblogs.com/zhouyu2017/p/6485265.html
3、vue-cli创建项目
安装vue-cli
npm install -g vue-cli
之后可以通过vue list来查看可以使用哪些模板
创建项目
vue init webpack <your project name>
ps:创建项目后会创建一堆文件
进入项目
cd project
通过npm安装依赖
npm install
npm i cypress –save-dev (安装cypress依赖)
安装依赖后,在项目根目录创建cypress.json文件并添加以下配置信息
{
"baseUrl": "http://localhost:8080", //测试域名
"integrationFolder": "cypress/integration", //测试文件存放目录
"testFiles": "**/*.cypress.spec.js", //根据规则匹配具体测试文件,可修改
"vedio": false, //是否使用录制功能
"viewportHeight": 800, //浏览器高度
"viewportWidth": 1600 //浏览器宽度
}
Ps:具体配置的时候,把注释去掉,不然会报错
修改package.json文件,添加cypress配置信息,如下
"cypress": "cypress run",
"cypress-gui": "cypress open"
Ps:如果json报错,可用在线json格式化检测工具检测是否报错
4、启动cypress
到这里,配置就已经差不多了,cmd运行启动命令:npm run cypress-gui
没报错的话可以启动cypress了
如下图;
未找到测试文件,因为我们还未创建而已,不是报错
下面我们先编写js测试文件,先测试打开我们的测试网站
在integration目录下创建测试文件test.cypress.spec.js
describe('My First Test', function() {
it('Visits the Kitchen Sink', function() {
cy.visit('https://sz.ichunt.com')
cy.contains('closemz').click()
})
})
页面打开如下图;
Cypress配置参考地址:https://www.imooc.com/article/details/id/28054
脚本编写参考cypress官方文档:
https://docs.cypress.io/api/api/table-of-contents.html
https://docs.cypress.io/guides/getting-started/writing-your-first-test.html#Step-3-Click-an-element
同时控制台也会输出相应的操作日子
至此环境是已经搭建好了,但是具体使用的话,还要去深入学习一下哦。。。
Cypress自动化环境搭建的更多相关文章
- Cypress 自动化环境搭建
1.Cypress 下载: 官网下载,下载后直接解压即可,解压后便可单机 exe 文件打开 Ps:直接打开 exe 是会报错找不到 json文件的,所以还要安装依赖环境 运行 cypress 项目前, ...
- 团队自动化环境搭建与管理--php博弈
我是方少,很开心与大家日后与大家交流技术上面的一些想法和一些业务上的分享.以前从来没写过博客,因为觉得不重要吧,如今觉得有必要沉淀一些想法和回忆.好了费话不多说. 先上图: 业务问题:在每次新伙伴加入 ...
- iOS自动化环境搭建——macaca
macaca-java for ios 自动化环境搭建 基础原理解析:https://testerhome.com/topics/6608 一.环境搭建 1.安装eclipse; -----Java开 ...
- MAC自动化环境搭建
UI自动化环境搭建 第一阶段:配置appium环境硬件配置mac系统电脑 java环境sunjiedeMacBook-Air:~ vicent$ java -versionjava version & ...
- Java自动化环境搭建笔记(3)
Java自动化环境搭建笔记(3) 自动化测试 自动化的环境已经基本搭建完成,后续可对BaseTester基类以及工具类进行扩展.下面便是持续集成的环境的搭建: Jenkins安装 git安装 源码上传 ...
- Java自动化环境搭建笔记(2)
Java自动化环境搭建笔记(2) 自动化测试 在笔记一中已经完成了一键构建项目.xml指定规划测试集.数据解耦与allure报告生成的开发.接下来便是: 浏览器驱动通过配置启动 页面元素定位解耦,通过 ...
- Java自动化环境搭建笔记(1)
Java自动化环境搭建笔记(1) 自动化测试 先搭建java接口测试的环境: 使用mvn命令构建项目 测试集通过testNG.xml组织并运行 测试数据解耦,通过Excel等文件提供 基础依赖 创建m ...
- 基于python的App UI自动化环境搭建
Android端Ui 自动化环境搭建 一,安装JDK.SDK 二,添加环境变量 Widows:1.系统变量→新建 JAVA_HOME 变量E:\Java\jdk1.7.0 jdk安装目录 2.系统变量 ...
- appium ios真机自动化环境搭建&运行(送源码)
appium ios真机自动化环境搭建&运行(送源码) 原创: f i n 测试开发社区 6天前 Appium测试环境的搭建相对比较烦琐,不少初学者在此走过不少弯路 首先是熟悉Mac的使用 ...
随机推荐
- mysql中字符串的隐藏字符处理
三步解决mysql字符串的隐藏字符: 1. 隐藏字符导致字符串长度边长,用mysql 自带的 Hex函数让隐藏字符显示真身, 2. 可以拿到隐藏字符的16进制码,然后用windows自带的计算器转化成 ...
- Qt编写安防视频监控系统18-云台控制
一.前言 云台控制是视频监控系统中必备的一个功能,对球机进行上下左右的移动,还有焦距的控制,其实核心就是控制XYZ三个坐标轴,为了开发这个模块,特意研究了各种云台控制的方法和开源库比如soap,有些厂 ...
- error: RPC failed; curl 56 GnuTLS recv error (-54): Error in the pull function.
. . . . . 今天从 github 上 clone 代码的时候,出现了一个错误,重试多次后仍然出现,错误如下: >$ git clone https://github.com/BOINC/ ...
- MOP tricks
MOP tricks 开新坑,未完待续 觉得有用的话,欢迎一起讨论相互学习~Follow Me Reference [1] Multiobjective Immune Algorithm with N ...
- java发送application/json格式的post请求,需要登陆
package util; import java.io.IOException; import java.io.InputStream; import java.io.OutputStreamWri ...
- Python - Django - 自定义一个中间件
中间件简介: 中间件是在 wsgi.py 之后,urls.py 之前,在全局操作 Django 请求和响应的模块 在 settings.py 中可以看到中间件的相关配置 该列表中的每一个元素都是一个类 ...
- BottomTabNavigator 顶部导航的显示隐藏
const TabNavigator = createBottomTabNavigator({ ...模块, ...模块, },{ navigationOptions:{ header:null }
- noi openjudge 1768:最大子矩阵
链接:http://noi.openjudge.cn/ch0406/1768/ 描述已知矩阵的大小定义为矩阵中所有元素的和.给定一个矩阵,你的任务是找到最大的非空(大小至少是1 * 1)子矩阵. 比如 ...
- 【bat】九九表
@echo off & setlocal EnableDelayedExpansion title 九九表 for /l %%a in (1,1,9) do ( set temp= for / ...
- HashMap、HashTable与ConcurrentHashMap的区别
1.HashTable与HashMap (1)HashTable和HashMap都实现了Map接口,但是HashTable的实现是基于Dictionary抽象类. (2)在HashMap中,null可 ...