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自动化测试. 本文主要使 ...
随机推荐
- 读经典——《CLR via C#》(Jeffrey Richter著) 笔记_类型的各种成员
[Class中,可能包含的成员] 常量, 字段, 实例构造器, 类型构造器, 方法, 操作符重载, 转换操作符, 属性, 事件, 类型(Class)
- DJ 算法的队列优先优化
DJ算法就是求单源最短路的算法,但是时间复杂度不太理想,所以在此献上用最小堆来优化的算法. 如果不懂优先队列可以先去看STL分类关于优先队列的介绍: ///POJ 2387为例 #include< ...
- Educational Codeforces Round 3 A
A. USB Flash Drives time limit per test 2 seconds memory limit per test 256 megabytes input standard ...
- 练习五十六:for循环
某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换 方法一: def o ...
- from表单,图片预览,和表单提交
<form> <input id="file" class="topsub-file" type="file" name= ...
- 01 性能优化基础怀实践 之 ASH分析
1.模拟一个会话阻塞的场景. 通过update 同一行数据达到模拟阻塞的效果 : SQL> create table t1 (id number ,name varchar2(20)) ; ...
- c++中 重载 覆盖 隐藏的区别 附加 mutable笔记
成员函数被重载的特征有: 1) 相同的范围(在同一个类中): //2) 函数名字相同: 3) 参数不同: 4) virtual关键字可有可无. 覆盖的特征有: 1) 不同的范围(分别位于派生类与基类) ...
- Mybatis学习笔记14 - 动态sql之foreach标签
一.查询给定集合中员工id对应的所有员工信息 示例代码: 接口定义: package com.mybatis.dao; import com.mybatis.bean.Employee; import ...
- JDK、JRE、JVM各自是什么、以及什么关系
JDK:java开发工具包 JRE:java运行环境 JVM:java虚拟机 关系: 安装JDK时, JRE.JVM都安装上了 安装JRE时,也把JVM安装上了 JVM(不能单独安装) ...
- Java集合框架概述
集合框架指的是容器类.Java中大量持有对象的方式有数组和容器类两种方式.数组相较于容器类的优点在于:①随机访问效率高:由于是连续的存储空间,可以计算地址直接访问 ②类型确定:数组在创建时即可确定元素 ...