Web、移动端、桌面端自动化测试工具或框架推荐

目前自动化测试可谓是人人在提,而且自动化工具和一些开源框架也是层出不穷。截止现在,我也接触了一些自动化的知识,分享下。

一、WebUI自动化

1. 工具或框架

Unittest框架,Selenium+Webdriver+Python集成开发
  • 优势:
    ①使用脚本直接来写,可以锻炼测试的代码能力
    ②对于一个团队中人才的吸引也是有很大帮助的
    ③可以更方便的加入一些断言或者错误处理
    ③对于一些数据处理可能更灵活些
  • 劣势:
    ①对测试人员的代码功底可能要求稍微高一点
    ②对脚本的健壮性要求比较高

2. 框架说明

【对应的截图见步骤3-框架截图】
         ①:截图功能。保存所有截图的图片,主要是用于复杂的页面,开发成本大的时候,可以把运行过程中的某些页面截图,保留现场,方便问题查找;
②:报告日志。把运行的过程和结果数据,全部保存起来,并且以Html的格式显示,比较直观,利于问题分析;
③:测试用例集。主要是所有的测试用例的集中管理,测试用例名称必须以test开头,这样unitetest才能识别到用例;
④:工具集。主要包含配置文件的调用、工程初始化、配置文件读取、邮件发送(设置对应的收发邮件人,可以把测试报告以邮件附件的方式发给项目组成员,方便大家查阅)
⑤:业务单元模块。主要是要实现的业务单元功能模块,包含具体的业务功能和操作;
⑥:框架入口。就是运行整个框架或者脚本的入口,此入口可实现一键操作就可以运行该工程下的所有测试用例。也可以单独制定运行某一条用例;
⑦:配置文件。所有的配置文件,包含execl、conf、json等格式的配置文件。主要用于参数化,数据驱动,配置信息等。

3. 框架截图
Web、移动端、桌面端自动化测试工具或框架推荐_第1张图片

二、Web接口自动化

1. 工具或框架

Unittest框架,Selenium+Request+Python集成开发
  • 优势:
    同WebUI自动化
  • 劣势:
    同WebUI自动化

    直接使用接口工具,如postman、Jmeter等

2. 框架截图
①直接用脚本的话,其实和UI差不多,如下:
Web、移动端、桌面端自动化测试工具或框架推荐_第2张图片
②如果使用工具的话,当然也很方便,postman如下:
Web、移动端、桌面端自动化测试工具或框架推荐_第3张图片
①:接口请求的方式,如post、get、put等
②:接口的URL
③:接口请求的Body格式及内容

三、Web服务性能测试

1. 工具或框架

LoadRunner+Nmon

2. 工具说明

  • LoadRunner:

    ①可以提供脚本录制;
    ②支持多种协议;
    ③部分版本是可以破解的;
    ④可设置多种测试场景;
    ⑤软件本身可以给出一些性能指标,如:错误数、事务平均响应时间、每秒点击次数、吞吐率等

  • Nmon

直接装在被测服务器上,可以监控服务的CPU、IO、进程、线程、内存等信息

3. 工具截图
LR:
Web、移动端、桌面端自动化测试工具或框架推荐_第4张图片
NMON:
Web、移动端、桌面端自动化测试工具或框架推荐_第5张图片

四、移动端自动化

1. 工具或框架

UI自动化:Appium+Python/Java
安卓系统兼容性:Google CTS

2. 框架说明

主要内容可以查看如下图:

APPIUM:

![在这里插入图片描述](https://img-blog.csdnimg.cn/20191028183652974.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L05vYW1hTmVsc29u,size_16,color_FFFFFF,t_70)

GOOGLS CTS:
Web、移动端、桌面端自动化测试工具或框架推荐_第6张图片

五、桌面端自动化

1. 工具或框架

Ranorex+C#/VBS
  • 优势:
    选择Ranorex,主要是因为可以进行破解,而且支持的平台比较多,最主要目前的自己的项目是基于QT集成开发。貌似qtp不支持qt控件,具体没怎么研究。

2. 框架说明

桌面端这个,后边会单独出一章比较详细的内容,当做是自己的学习笔记了。

你可能感兴趣的:(自动化测试)