UI Recorder功能介绍
- 支持所有用户行为: 键盘事件, 鼠标事件, alert, 文件上传, 拖放, svg, shadow dom
- 支持无线native app录制, 基于macaca实现: https://macacajs.com/
- 无干扰录制: 和正常测试无任何区别,无需任何交互
- 录制用例存储在本地
- 支持丰富的断言类型:val,text,displayed,enabled,selected,attr,css,url,title,cookie,localStorage,sessionStorage
- 支持数据mock: Fake.js
- 支持公共测试用例: 允许用例中动态调用另外一个
- 支持并发测试
- 支持多国语言: 英文, 简体中文, 繁体中文
- 支持单步截图
- 支持HTML报告和JUnit报告
- 全系统支持: windows, mac, linux
- 支持多运行时测试, 例如:开发测试、预发测试
- 基于Nodejs的测试用例: jWebDriver
1、UI Recorder的安装
打开终端,输入:npm install uirecorder -g的命令,如若不行输cnpm命令
初始化uirecorder,输入命令:uirecorder init,一路回车,遇到需要输入WebDriver域名或IP时,输入127.0.0.1,WebDriver端口号输入4444,浏览器默认chrome,ie 11
2、UI Recorder的使用
第一步:开始录制,打开新的一个终端,输入macaca server --port 4444,让macaca服务一直跑着,在另外一个终端里面uirecorder start --mobile,录制网页不用加上--mobile,如下图为web端
第二步:录入完成后,执行mocha +(脚本保存的文件名和后缀名)命令,对录制的脚本进行回放。(前提是安装好了mocha)
当然在录制过程中还可以暂停,添加断言,插入变量,插入脚本等
mocha test.spec.js
脚本的录制相对简单
第三步:搭建WebDriverServer环境,以下为Windows下示例:
a、下载selenium-Server-standalone.jar
b、下载chromedriver
我将其放在同一个文件夹driver中,然后将其配置到path变量中,以便seleniumServer能通过文件名直接找到文件启动对应的driver,验证有没有配置环境变量成功只需要在cmd命令中随便找个目录输入driver的文件名执行下,看能否成功找到文件执行
c、在一个终端启动服务器:java -jar selenium-server-standalone-3.8.1.jar
d、在另一个终端上执行刚才录制的脚本(脚本回放)
mocha在这里充当回放工具
安装:
- npm install mocha -g
- npm install jwebdriver expect.js mocha-generators faker --save-dev
- npm install jwebdriver chai faker --save-dev
3、手机端脚本录制
1)命令:uirecorder start --mobile
解决:删除node_modules,清缓存,重新安装npm,npm install