UI自动化测试框架对比
1、SeleniumSelenium就是一套专门用于自动化Web浏览器的工具。 而已!主要是用于自动化Web应用程序进行测试,但肯定不仅限于此。 无聊的基于Web的管理任务也可以(也应该!)也是自动化的。
Selenium有一些最大的浏览器供应商的支持,他们已经采取步骤使Selenium成为其浏览器的本地部分。 它也是无数其他浏览器自动化工具,API和框架的核心技术。
最新的Selenium版本已经是3.0(2016年10月13日正式release),但是因为是新技术,Selenium3.0的使用范围还不太广泛。变动的范围也不是很大,主要是更倾向于Webdriver,而更多的摒弃了RC。
2、Selenium Webdriver
Webdriver (Selenium2)是一种用于Web应用程序的自动测试工具,它提供了一套友好的API,与Selenium 1(Selenium-RC)相比,Selenium 2的API更容易理解和使用,其可读性和可维护性也大大提高。Webdriver完全就是一套类库,不依赖于任何测试框架,除了必要的浏览器驱动,不需要启动其他进程或安装其他程序,也不必像Selenium 1那样需要先启动服务。
另外,二者所采用的技术方案也不同。Selenium 1是在浏览器中运行 JavaScript来进行测试,而Selenium 2则是通过原生浏览器支持或者浏览器扩展直接控制浏览器。
Selenium 2针对各个浏览器而开发的,它取代了嵌入到被测Web应用中的 JavaScript。与浏览器的紧密集成,支持创建更高级的测试,避免了JavaScript安全模型的限制。除了来自浏览器厂商的支持,Selenium 2 还利用操作系统级的调用模拟用户输入。
Selenium IDESelenium IDE是Selenium脚本的集成开发环境。 它被实现为Firefox扩展(插件),并允许您记录,编辑和调试测试。
3、Appium
Appium是一个用于本地,混合和移动Web应用程序的开源测试自动化框架。它使用WebDriver协议驱动iOS,Android和Windows应用程序。
4、robotframework
robotframework是验收测试和验收测试驱动开发(ATDD)的通用测试自动化框架。 它具有易于使用的表格测试数据语法,它利用关键字驱动的测试方法。 可以通过使用Python或Java实现的测试库扩展其测试功能,用户可以使用与创建测试用例相同的语法从现有的关键字创建新的更高级别的关键字。
也可看一下例子Python的ATDD框架-robotframework
5、Jmeter
Apache JMeter™应用程序是开源软件,一个100%纯Java应用程序,旨在加载测试功能行为并测量性能。 它最初设计用于测试Web应用程序,但已经扩展到其他测试功能。
Apache JMeter功能包括:
——能够加载和性能测试许多不同的应用程序/服务器/协议类型:
——Web - HTTP,HTTPS(Java,NodeJS,PHP,ASP.NET,...)
——SOAP / REST Web服务
——FTP
——数据库通过JDBC
——LDAP
——面向消息的中间件(MOM)通过JMS
——邮件 - SMTP(S),POP3(S)和IMAP(S)
——本地命令或shell脚本
——TCP
——Java对象
行业里面多用Jmeter来测试性能和接口。因为性能测试本身有一部分就是基于协议上请求的多线程的测试,而针对于接口的话也可以测试接口本身的性能。
airtest、soupUI、postman、qtp... 解释的好到位。 支持
页:
[1]