UI自动化录制工具----UI Recorder
1、系统和工具包
windows 7 64位
jdk,nodejs,webdriver,浏览器都放在工具包目录内。(晚上回去把文件上传到云盘,在分享给大家)
2、安装JDK和node.js
2.1 JDK安装
要求1.8以上版本,我使用的是jdk1.8.0_40,安装完JDK后写入环境变量。
新建系统变量JAVA_HOME 和CLASSPATH
- 变量名:JAVA_HOME
 
变量值:C:\Program Files\Java\jdk1.8.0_140
- 变量名:CLASSPATH
 
变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
- 变量名:Path
 
变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
2.2 node.js安装
最新版本8.1.2

安装后使用node –v 查看是否安装成功。
3、安装uirecorder
cmd命令如下:
安装cnpm
npm install -g cnpm --registry=https://registry.npm.taobao.org
安装uirecorder
cnpm install uirecorder mocha -g

安装相关依赖
命令如下:
cnpm install jwebdriver expect.js mocha-generators faker --save-dev
4.本地自动化测试
4.1初始化配置
在D盘根目录建立一个文件夹uirecorder,
打开cmd窗口,切换到uirecorder目录
D:\uirecorder>
执行cmd命令:
cnpm install
执行cmd命令:
uirecorder init

4.2.webdriver安装配置和启动
将webdriver目录和文件复制到C盘根目录,将C:\webdriver加入环境变量path
点击 run.bat运行selenium-server
也通过以下命令启动:
java -jar selenium-server-standalone-3.4.0.jar

4.3安装chrome浏览器
录制脚本要求使用chrome浏览器,最新版本59.0
4.4录制脚本
1) cmd切换到D盘 uirecorder目录运行:
uirecorder start sample/test.spec.js
说明:
启动命令为uirecorder start
sample/test.spec.js 为测试脚本保存的路径
2) 在浏览器输入要测试的用例url,如输入:http://mail.10086.cn,点击开始录制:

通过正常的操作行为录制脚本后,关闭浏览器结束录制脚本,可以打开sample/test.spec.js查看你录制好的脚本,进行编辑。
4.5本地自动化测试
1) 安装mochawesome,cmd命令切换到d:\uirecorder目录
cnpm install mochawesome

2) 执行测试命令
mocha sample/test.spec.js --reporter mochawesome

测试报告:

测试报告结果:
D:\uirecorder\mochawesome-report\mochawesome.html
测试报告内容如下:

5、 配置文件
D盘uirecorder 目录下config.json 的详细内容如下:
{
"webdriver": {
"host": "127.0.0.1",
"port": "4444",
"browsers": "chrome"
},
"vars": {},
"recorder": {
"pathAttrs": "data-id,data-name,type,data-type,role,data-role,data-value",
"attrValueBlack": "",
"hideBeforeExpect": ""
}
}
说明:
- host:127.0.0.1使用的是本机webdriver测试,
 
6、uirecorder文件夹说明
Commons:公共脚本文件夹
Diffbase:图片对比文件夹
node_modules:node核心文件库
reports:测试报告文件夹
sample:示例脚本目录
screenshots:测试执行截图保存目录
uploadfiles:附件保存文件夹,比如写信页上传附件,要求把附件先放入该目录;
config. Json:运行配置文件,比如IP,浏览器
run.bat:运行测试,执行该命令会运行所有的测试脚本
7、结束语
UI Recorder属于阿里巴巴的一款开源项目,想更多的了解,可以去github上面看看,地址:https://github.com/alibaba/uirecorder
UI自动化录制工具----UI Recorder的更多相关文章
- ui自动化笔记    selenium_webdriver,ui自动化框架(web)
		
Selenium学习笔记 selenium webdriver是业界公认ui自动化测试的标准,其封装的api可以对浏览器的任何地方进行操作 selenium2.0和selenium3.0的区别? 3. ...
 - 【web系统UI自动化】关于UI自动化的总结
		
实施过了web系统的UI自动化,回顾梳理下,想到什么写什么,随时补充. 首先,自动化测试不是手动测试的替代品,是比较好的补充,而且不是占大比重的补充. 70%的测试工作集中在底层接口测试和单元测试,2 ...
 - Macaca 自动化录制工具uirecorder使用入门
		
Q&A PC端执行用例前,一定要运行selenium-standalone start,否则会出现这个问题:https://github.com/alibaba/uirecorder/issu ...
 - 一个自动化测试工具 UI Recorder
		
链接 教程 UI Recorder 是一款零成本UI自动化录制工具,类似于Selenium IDE. UI Recorder 要比Selenium IDE更加强大! UI Recorder 非常简单易 ...
 - 小心!做 UI 自动化一定要跨过这些坑
		
一 .引子 UI自动化,在移动互联网时代的今天,一直都是在各大测试社区最为火爆的一个TOPIC.甚至在测试同行面前一提起自动化,大家就会自然而然的问:“恩,你们是用的什么框架?appium?还是rob ...
 - UI自动化和selenium相关以及八大定位
		
一.UI自动化相关 1. UI自动化的本质(重点) 定位元素→操作元素→模拟页面操作→断言→测试报告 2. 适合UI自动化的场景 UI自动化的前提条件 (1)需求不能频繁变动 (2)UI稳定(UI自动 ...
 - 多测师讲解ui自动化框架设计思想_高级讲师肖sir
		
UI自动化框架:UI自动化框架可以分为8个模块,conf.data.public.pageobject.testcase.runner.report.log.conf是用来储存系统环境.数据库.邮件的 ...
 - Airtest 网易 UI 自动化工具 Airtest 浅用记录
		
一 使用目的 该工具主要是面向游戏UI测试基于图像识别,如游戏框架unity,Cocos-js以及网易内部的游戏框架同时也支持原生Android App 的基于元素识别的UI自动化测试.本文主要使用目 ...
 - 网易 UI 自动化工具 Airtest 浅用记录
		
一 使用目的 该工具主要是面向游戏UI测试基于图像识别,如游戏框架unity,Cocos-js以及网易内部的游戏框架 同时也支持原生Android App 的基于元素识别的UI自动化测试. 本文主要使 ...
 
随机推荐
- FileWriter 中午乱码
			
解决办法 BufferedWriter writer = new BufferedWriter (new OutputStreamWriter (new FileOutputStream (fil ...
 - JTAG与JLink说明
			
JTAG接口解读 通常所说的JTAG大致分两类,一类用于测试芯片的电气特性,检测芯片是否有问题:一类用于Debug:一般支持JTAG的CPU内都包含了这两个模块. 一个含有JTAG Debug接口模块 ...
 - POJ1769(线段树+DP)
			
飞翔 题意 : 给定一个区间长度 n ,接下来给出 m 个子区间,要求最少选出多少个区间才能使得 1~n 这个区间被所选的所有子区间覆盖 分析: 首先是动态规划,dp[i]表示把最大值从1位置搞到第i ...
 - nginx配置文件企业优化
			
1.1 企业规范优化Nginx配置文件 第一个里程碑:创建扩展目录,生成虚拟主机配置文件 mkdir extra sed -n '10,15p' nginx.conf >extra/www.co ...
 - 6.过滤器(Filter)
			
---恢复内容开始--- 1.过滤器简介: 过滤器是一个用于拦截在数据源和数据目的地之间消息的一个对象. 过滤器 功能: 分析请求,将请求发送给指定的资源或自己创建一个响应返回:在请求到达服务器端前处 ...
 - Linux用户登录信息
			
1.用户登录日志信息 /var/run/utmp:记录当前正在登录系统的用户信息,默认由who和w记录当前登录用户的信息,uptime记录系统启动时间: /var/log/wtmp:记录当前正在登录和 ...
 - java——线程的wait()和notify()
			
这是一个关于生产者和消费者的线程通信的例子: package thread_test; public class PCThread { public static void main(String[] ...
 - my.资料_副本_破六欲
			
http://www.nok2.com/fxjy/816.html 梦幻之家礼包网讲解梦幻2破除心魔 来源:www.nok2.com作者:礼包达人时间:2016-04-01 22:11 最近听到不少小 ...
 - Java基础13-数组算法
			
1.数组的复制 //复制算法,将arr1数组的值复制给arr2数组 import java.util.Arrays; public class Test1{ public static void ma ...
 - [转]HTML字符实体(Character Entities),转义字符串(Escape Sequence)
			
为什么要用转义字符串? HTML中<,>,&等有特殊含义(<,>,用于链接签,&用于转义),不能直接使用.这些符号是不显示在我们最终看到的网页里的,那如果我们希 ...