Top1:Selenium
Selenium是当前针对Web系统的最受欢迎的开源免费的自动化工具。
在2000年左右出现,已经经历了10几年的发展,Selenium已经成为Web自动化测试工程师的首选,尤其是那些有编程或脚本编写能力的工程师。很多其它的开源自动化测试工具也是采用的Selenium的核心框架,比如Katalon Studio, Watir, Protractor, and Robot Framework.
Selenium支持非常多的平台(Windows, Mac, Linux)和浏览器(Chrome, Firefox, IE, and Headless browsers),它的脚本可以通过各种不同的语言来编写,比如 Java, Groovy, Python, C#, PHP, Ruby, and Perl.
License:免费
Top2:Katalon Studio
Katalon Studio是一个非常有力的自动化测试解决方案,它其实是构建在Selenium和Appium框架上的,所以它可以同时测试Web系统及手机APP应用。(注:新版本也已经支持对接口的测试)
这个工具支持不同编程水平的工程师使用。不会编程的也可以使用它轻松的开始一个项目的自动化(比如使用Object Spy来录制生成测试脚本),会编程的和高级自动化测试工程师也可以通过它非常快速的创建新库以及维护代码,它可以帮助他们节省很多时间。
Katalon Studio可以与CI/CD(持续集成/持续发布)流程集成,还可以与测试领域非常常见的工具集成,比如qTest,JIRA,Jenkins和Git. 它还提供了一个非常棒的功能叫Katalon Analytics,这个功能可以将测试报告用各种图表来展现,比如metrics, charts, and graphs.
PS:这个工具听起来真不错,值得研究研究。
License:免费
Top3:UFT
Unified Functional Testing(UFT)是一个知名的商业测试工具。(注:更名前叫QTP)它可以测试非常多的应用,比如接口API,Web services,桌面程序,Web系统,手机APP等。这个工具具有高级的基于图像的识别功能,也可以重用测试组件。
UFT使用Visual Basic脚本语言来处理测试过程。UFT和Mercury公司的一系列测试工具可以很好的集成,比如Quality Center。
这个工具也支持与持续集成工具比如Jenkins的集成。
官网:https://software.microfocus.com/fr-ca/software/uft
License:商业
Top4:Watir
Watir是一款基于Ruby语言的开源免费的Web系统自动化测试工具。Watir支持多浏览器的测试,包括Firefox、Opera、headless Browser、IE等。Watir同样支持数据驱动测试,支持与行为驱动开发模式(BDD)工具的集成,如RSpec, Cucumber等。
License:免费
Top5: IBM Rational Functional Tester
IBM RFT是一个数据驱动测试的框架可以进行功能测试以及回归测试。它可以测试的应用更广泛,比如:.net, Java, SAP, Flex和Ajax。
RTF支持Visual Basic、.net和Java做为测试脚本语言。
RFT可以和IBM公司的管理整个软件生命周期的软件进行良好的集成,比如IBM Rational Team Concert以及Rational Quality Manager。
(注:Rational Functional Tester 功能强大,容易架设框架、容易扩展,但对用户的要也比较高。)
License:商业
………………………………………………………………………………………………………………
功能测试
a) 轻量接口自动化测试 jmeter,Selenuim2.0
b) APP UI层面的自动化
android:UI Automator Viewer,Android Junit,Instrumentation,UIAutomator,
iOS:基于Instrument的iOS UI自动化,
………………………………………………………………
性能测试
a) Web前端性能测试
网络抓包工具:Wireshark
网页文件大小: webpagetest, pagespeed insight, chrome adb
b) APP端性能测试
Android内存占用分析:MAT
iOS内存问题分析:ARC模式
Android WebView性能分析:
iOS WebView性能分析
c) 后台服务性能测试
负载,压力,耐久性
可拓展性,基准
工具:apacheAB,Jmeter,LoadRunner,
………………………………………………………………
专项测试
a) 兼容性测试
手工测试:操作系统,分辨率,rom,网络类型
云平台:testin,脚本编写,Android。
b) 流量测试
Android自带的流量管理,
iOS自带的Network
tcpdump抓包
WiFi代理抓包:Fiddler
流量节省方法:压缩数据,json优于xml;WebP优于传统的JPG,PNG;控制访问的频次;只获取必要的数据;缓存;
c) 电量测试
基于测试设备的方法,购买电量表进行测试。
GSam Battery Monitoe Pro
iOS基于Instrument Energy工具
d) 弱网络测试
手机自带的网络状况模拟工具
基于代理的弱网络的模拟:
工具:windows:Network Delay Simulator
Mac:Network Link Conditioner