最新消息:

webui自动化测试(常用的自动化测试工具有哪些)

媒体模版 admin 浏览 评论

1、Appium

AppUI自动化测试

Appium是一个移动端自动化测试开源工具,支持iOS和Android平台,支持Python、Java等语言,即同一套Java或Python脚本可以同时运行在iOS和Android平台,Appium是一个C/S架构,核心是一个 Web服务器,它提供了一套 REST的接口。当收到客户端的连接后,就会监听到命令,然后在移动设备上执行这些命令,最后将执行结果放在 HTTP响应中返还给客户端。

2、Selenium

WebUI自动化测试

Selenium是一个用于Web应用程序测试的工具,Selenium已经成为Web自动化测试工程师的首选。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7、8、9)、Mozilla Firefox、Mozilla Suite等。这个工具的主要功能包括:测试与浏览器的兼容性——测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上。测试系统功能——创建回归测试检验软件功能和用户需求。支持自动录制动作和自动生成.Net、Java、Perl等不同语言的测试脚本。Selenium是ThoughtWorks专门为Web应用程序编写的一个验收测试工具。其升级版本为Webdriver。

3、Postman

接口测试

Postman提供功能强大的 Web API和 HTTP请求的调试,它能够发送任何类型的HTTP请求(GET, POST, PUT, DELETE…),并且能附带任何数量的参数和 Headers。不仅如此,它还提供测试数据和环境配置数据的导入导出,付费的 Post Cloud用户还能够创建自己的 Team Library用来团队协作式的测试,并能够将自己的测试收藏夹和用例数据分享给团队。

4.Robot Framework

Robot Framework是一个开源自动化框架,它实现了用于验收测试和验收测试驱动开发(ATDD)的关键字驱动方法。 Robot Framework为不同的测试自动化需求提供框架。但是,通过使用Python和Java实现其他测试库,可以进一步扩展其测试功能。 Selenium WebDriver是Robot Framework中常用的外部库。

测试工程师可以利用Robot Framework作为自动化框架,不仅可以进行Web测试,还可以用于Android和iOS测试自动化。对于熟悉关键字驱动测试的测试人员,可以轻松学习Robot Framework。

5、Soapui

接口测试

SoapUI提供了所有所需的工具来测试和完善的测试。总览标签给你一个项目的所有内容和全面的看法。只需一次点击,您可以添加任何数量的断言为验证传入的消息TestStep。使用功能强大的HTTP监视器记录,分析甚至修改客户机-服务器通信,因为它发生。和SoapUI临带来了更专业和先进的功能,保持遥遥领先其他测试工具。轻松创建和运行数据驱动测试。该数据源TestStep读取测试数据从任何外部来源- Excel中,XML,JDBC,文件,等等-到标准SoapUI属性。

针对上面的自动化测试工具,每一个都有自己优势的功能,随着计算机行业的发展,自动化测试工具会越来越多,越来越完善。

移动端

1、Monkey是AndroidSDK自带的测试工具,在测试过程中会向系统发送伪随机的用户事件流,如按键输入、触摸屏输入、手势输入等),实现对正在开发的应用程序进行压力测试,也有日志输出。实际上该工具只能做程序做一些压力测试,由于测试事件和数据都是随机的,不能自定义,所以有很大的局限性。

2、也是AndroidSDK提供的测试工具。严格意义上来说其实是一个Api工具包,比Monkey强大,可以编写测试脚本来自定义数据、事件。缺点是脚本用Python来写,对测试人员来说要求较高,有比较大的学习成本。

3、是早期Google提供的Android自动化测试工具类,虽然在那时候JUnit也可以对Android进行测试,但是允许你对应用程序做更为复杂的测试,甚至是框架层面的。通过你可以模拟按键按下、抬起、屏幕点击、滚动等事件。是通过将主程序和测试程序运行在同一个进程来实现这些功能,你可以把看成一个类似Activity或者Service并且不带界面的组件,在程序运行期间监控你的主程序。缺点是对测试人员来说编写代码能力要求较高,需要对Android相关知识有一定了解,还需要配置.xml文件,不能跨多个App。

4、UiAutomator也是Android提供的自动化测试框架,基本上支持所有的Android事件操作,对比它不需要测试人员了解代码实现细节(可以用抓去App页面上的控件属性而不看源码)。基于Java,测试代码结构简单、编写容易、学习成本,一次编译,所有设备或模拟器都能运行测试,能跨App(比如:很多App有选择相册、打开相机拍照,这就是跨App测试)。缺点是只支持SDK16(Android4.1)及以上,不支持HybirdApp、WebApp。

先来看下未使用 PO(PageObject)设计模式下的代码,以网页版百度登录为例来说明。

非 PO(PageObject)模式下的代码如下,所有内容全部写在一个方法里。

存在的问题:

PO(PageObject)模式优化后的代码

1、WebUI自动化需要的 driver基础操作

2、登录页面元素获取

3、登录逻辑业务的封装

4、登录测试用例将使用以上3个页面对象

可以发现,使用 PO(PageObject)模式优化后的代码,有以下明显优势:

1)、将以下3个模块进行了单独封装【降低了模块之间的耦合度,使层次更加清晰合理,便于后期维护与复用】:

2)、如果前端页面有定位元素的 type或 value发生变化时,只需要修改 elements.py文件中元素信息即可,不需要在测试业务模块中进行修改。

转载请注明:片头模版 » webui自动化测试(常用的自动化测试工具有哪些)

发表我的评论
取消评论

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)

网友最新评论 ()