Web、移动端、桌面端自动化测试工具或框架推荐
目前自动化测试可谓是人人在提,而且自动化工具和一些开源框架也是层出不穷。截止现在,我也接触了一些自动化的知识,分享下。
一、WebUI 自动化
1. 工具或框架
Unittest 框架,Selenium+Webdriver+Python 集成开发
优势:
①使用脚本直接来写,可以锻炼测试的代码能力
②对于一个团队中人才的吸引也是有很大帮助的
③可以更方便的加入一些断言或者错误处理
④对于一些数据处理可能更灵活些
劣势:
①对测试人员的代码功底可能要求稍微高一点
②对脚本的健壮性要求比较高
2. 框架说明
【对应的截图见步骤 3-框架截图】
①:截图功能。保存所有截图的图片,主要是用于复杂的页面,开发成本大的时候,可以把运行过程中的某些页面截图,保留现场,方便问题查找;
②:报告日志。把运行的过程和结果数据,全部保存起来,并且以 Html 的格式显示,比较直观,利于问题分析;
③:测试用例集。主要是所有的测试用例的集中管理,测试用例名称必须以 test 开头,这样 unitetest 才能识别到用例;
④:工具集。主要包含配置文件的调用、工程初始化、配置文件读取、邮件发送(设置对应的收发邮件人,可以把测试报告以邮件附件的方式发给项目组成员,方便大家查阅)
⑤:业务单元模块。主要是要实现的业务单元功能模块,包含具体的业务功能和操作;
⑥:框架入口。就是运行整个框架或者脚本的入口,此入口可实现一键操作就可以运行该工程下的所有测试用例。也可以单独制定运行某一条用例;
⑦:配置文件。所有的配置文件,包含 execl、conf、json 等格式的配置文件。主要用于参数化,数据驱动,配置信息等。
3. 框架截图
二、Web 接口自动化
1. 工具或框架
Unittest 框架,Selenium+Request+Python 集成开发
优势:同 WebUI 自动化
劣势:同 WebUI 自动化
直接使用接口工具,如 postman、Jmeter 等
2. 框架截图
①直接用脚本的话,其实和 UI 差不多,如下:
②如果使用工具的话,当然也很方便,postman 如下:
①:接口请求的方式,如 post、get、put 等②:接口的 URL③:接口请求的 Body 格式及内容
三、Web 服务性能测试
1. 工具或框架
LoadRunner+Nmon
2. 工具说明
LoadRunner:
①可以提供脚本录制;②支持多种协议;③部分版本是可以破解的;④可设置多种测试场景;⑤软件本身可以给出一些性能指标,如:错误数、事务平均响应时间、每秒点击次数、吞吐率等
Nmon
直接装在被测服务器上,可以监控服务的 CPU、IO、进程、线程、内存等信息
3. 工具截图
LR:
NMON:
四、移动端自动化
1. 工具或框架
UI 自动化:Appium+Python/Java 安卓系统兼容性:Google CTS
2. 框架说明
主要内容可以查看如下图:APPIUM:
GOOGLS CTS:
五、桌面端自动化
1. 工具或框架
Ranorex+C#/VBS
优势:选择 Ranorex,主要是因为可以进行破解,而且支持的平台比较多,最主要目前的自己的项目是基于 QT 集成开发。貌似 qtp 不支持 qt 控件,具体没怎么研究。
2. 框架说明
桌面端这个,后边会单独出一章比较详细的内容,当做是自己的学习笔记了。
版权声明: 本文为 InfoQ 作者【虫无涯】的原创文章。
原文链接:【http://xie.infoq.cn/article/f7361f9f4afc55b8f99727c3d】。文章转载请联系作者。
评论