常见功能自动化测试工具汇总

自动化测试工具概览 很多团队也会根据具体项目需求,基于开源工具或内部技术栈开发自己的自动化测试框架,以更好地适应特定的测试环境和需求。 阅读详情

最近因要写一些关于自动化测试及自动化框架方面的东西,所以需要学习和补充很多自动化工具和框架方面的知识,以期能获取第一手资料来完成自己的写作所需。因为之前常见的和使用的自动化工具只有QTP、selenuim,其它的测试工具都是听说名字,没有相对进一步去查看和学习其相关特性、原理及适用性。【因为之前是想着先学好一样工具后再学习其它工具就会更容易,且一次学习多个工具很容易混淆学习,降低效率】如今到了需要从更上的一个层次去理解自动化,并要考虑如何更好的去实施一个自动化的时候,如果还是只了解某一两个工具,可能知识的局限性就凸现出来了,所以需要从另一个方面去学习自动化方面的知识了。

话说自动化测试方面的工具还是非常的多的,不可能也没有必要查看了所有的测试工具;个人觉得当学习众多同类知识或相关主题时,分几步走:

1、学习所有同类知识的共同理论、原理部分【此为共性】

2、学习所有同类知识的独有特性、技巧部分【此为个性】

3、根据具体的实际场景,适当的运用所学知识的【即运用知识的个性部分去解决特定的问题】

学习自动化测试工具也是这样的,之前不愿意学习太多是怕混淆视听,现在对原有知识已有了一定的固化认识【即了解了基本原理】,也就可以从新学习个性化的东西了;而这一步正是为了以后能够适当运用所掌握的知识,顺利的进行自动化测试任务的开展和实施。其目标达矣!


这里只列出自己觉得有特性的自动化工具,对于原理完全相同的同类产品,只列出其中最出色者。此外,更多的工具列表见这里 


商业工具:

1、QTP:

这个大家都知道的,支持录制,支持插件,支持部分插件扩展,目前只用过web插件、默认的windows功能。入门自然是很容易的事情,随便录制就可以有脚本出来,可以执行了,但是真正实施起来就不是那么回事;个人觉得qtp大量部署自动化测试不是其优势,其批量执行没有很好的管理框架,即使集成到qc也不是很爽,毕竟是一个工具调用另一个工具,效率和性能首先就是问题,貌似很不专业;其次其对象库文件,每次执行后都会有更新;测试结果都是分开的,没有一个统一的综合的结果评定;总的来说,QTP更像是一个脚本开发和调试工具,而在测试执行,脚本管理,规划这方面还是不足的。通常都是自己写执行框架,这里不得不说qtp提供的接口类型还是比较多的,如:工具本身提供dom接口,还支持dll调用,支持.net库函数调用,支持windows api调用,支持第三方的dom控件调用。

2、WinRunner:

号称企业级自动化工具,脚本语言较难用,也很贵,没有了解过,因为其貌似不在支持版本更新了

3、Rational Robot

同样号称企业级自动化测试工具,IBM相关的公司会使用,也很贵,也没有了解过,因为安装文件大,还要破解

4、SilkTest:

这个也是比较相对著名的工具,不过同样还是没有了解过,对于商业的工具,因为其占地面积大,还要破解等麻烦事,最关键的是使用的公司少,所以只使用过QTP,其它的一概未了解过


开源工具:

1、UIAutomation:

这个是微软提供的UI自动化框架,当然它的初衷并不仅仅是为自动化测试而产生的,它的任务是给更多的开发或者应用去调用windows的UI控件,不过还是可以用于自动化测试的;因为之前微软就有类似的工具,而这个是重新设计的ui操作类框架,其目的是为了兼容支持windows系列操作系统的UI自动化操作【xp,vista,server2003】,还有就是天然支持WPF。当然其设计与通常的自动化工具就不一样了,比如:没有把控件支持的方法绑定在控件对象本身,没有提供专门的鼠标/键盘事件,但是却提供了特定控件对象的事件响应监听及处理方法的定制。其工作流程大概是这样的:

a、先获取特定的元素对象,有多种方法。如:句柄,属性值

b、获取这个元素对象的模式。模式是这个框架的设计的独具之处,成就了它的灵活性,统一性

c、通过这个模式在进行具体的方法调用,属性值获取等

d、监听指定对象的特定事件,一旦发生则执行指定的事件处理函数

前提:安装.net 3.0

文档:http://msdn.microsoft.com/zh-cn/library/ms747327.aspx


2、EFT【easy function testing】:

这个是在.net3.0 的UIAutomatuon的基础上封装的一个dll文件,同样还封装了部分windows api以实现鼠标和键盘事件。所以这个只能叫测试类库,且仅支持windows程序,而且同样支持uiautomain所支持的WPF程序的测试。

前提:安装了.net3.0

使用:引入该文件,uiautomation 相关dll,VS环境下编写测试用例

下载地址:http://www.softpedia.com/get/Programming/Other-Programming-Files/Eft.shtml

google code:http://code.google.com/p/eft/


3、Selenium:

这个应该大多数人都知道的,现在也是大多数互联网公司在使用的测试框架;selenium仅支持web的UI级别测试,但是其优点在于:

a、支持多种语言编写测试脚本,比如:java、python、ruby、perl等;同时也就意味着其后的支持类库也是很多的

b、支持多浏览器,如:ie,ff,safari、chrome等

c、支持多平台,如:windows、linux、MAC、android、iphone等

d、支持分布式执行,一套测试用例可以同时分布到不同的测试机上执行,而且还可以进行任务细化,比如:针对liunx执行系统只分配linux下需要执行的用例

此外还有录制工具支持,简单也说,web类测试基本上是首选,不过对flash的支持好像不是太好

其主要分2个版本,1.X版本是以js驱动来进行自动化实现的;2.X重新开发了webdriver来代替js驱动,直接调用浏览器底层接口来完成自动化实现的

前提:如果使用remote或者RC功能,需安装jre

下载地址:http://seleniumhq.org/download/


4、watir【web automation testing in ruby】

5、STAF【software testing automation frame】


WebDriver

waitN

Canoo WebTest

TestCompele

AdvenNet QEngine

QARun

TestPartner




总结:

原理总结:

所有的测试工具均可分为基于windows,基于web的,也有个别特殊的。但原理大概就分为这几类情况,在理解了这些原理后,如果有需要,有时间,有精力时可以参考现有工具的优缺点来开发适应性、针对性更强的测试工具;而最捷径的方法就是把这些现有工具适当的集成到一起,时间和难度上都有大大降低。

分类总结:

按提供功能的方式其中部分叫工具,另外的部分叫框架;按用途分有的提供自动化功能,有的支持自动化用例的执行,有提供测试环境的部署;按针对被测试对象分有web、windows;按产品的开发语言分有针对不同语言的,如.net,java等

应用总结:

最后才是干货,掌握和了解这么工具为嘛使,不能总是为了好玩,而是为了能在以后的自动化实施过程中用于支持策略的制定;比如新接收了一个测试项目需要进行自动化实施,那么需要考虑哪些点?使用哪个工具,有哪些工具可以作为备选?那么自然就要对常用自动化工具有一个初步的了解,同时对影响自动化过程的其它元素也要有一定的掌握,不过这里可以跳过,这里只是说与工具相关的因素的抉择。大体可以分为如下来考虑:

1、考虑被测试产品的类型,B/S,,C/S,web service,SOAP,SDK或者API;过滤支持某类功能测试的工具

2、考虑是否支持录制,可以录制就相对于说开发效率有较大的提高

3、考虑工具的价格,通常首选开源或免费产品

4、考虑工具扩展性,可能某类工具可以支持现在的业务需求,但日后需求有变化的话,是否有很好的扩展性,支持被测产品的新特性,如flex,flash,wpf等

5、考虑工具的支持性,即后期的升级及版本更新的特性,不要选用即将不再支持的工具

6、考虑工具的广泛性,即这个工具在外部的流行程度,这样以后招人容易,有问题也有较活跃的社区可以求助

7、考虑工具的成熟性,即这个工具不能还在beta版本,需要有一个较稳定的版本,而且估计较长时间内不会有大版本的更迭

8、考虑工具的可开发性,即工具是否提供插件接口,用于可以自定义自己的基础类库和识别机制

9、考虑工具的易用性,即是否有强大的后台支持,如windows、.net、java类库支持

10、考虑工具的适应性,即是否容易被封装,可以很容易被嵌入或引入到其它的框架中,比如:功能框架被引入到执行框架中

11、考虑工具的针对性,即如果有专门的针对性工具可选,自然比那些综合性很强的工具其适用性要高的多了


最后,自动化是任重而道远的,真正难解决的还是那些实际的应用和实施,不同的项目有不同的测试需求、场景需求、环境需求,需要进行综合考虑;最终的结果是要提交一个可交付的,易维护的,高效率的,较稳定的测试构建,就不是仅仅了解测试工具就能办到的,所以还有很长的路需要去实践。

六大自动化测试工具:技术人员的必备指南! 今天给大家介绍6款测试工具。 阅读详情

相关推荐

常用功能自动化测试工具汇总

话说自动化测试方面的工具还是非常的多的,不可能也没有必要查看了所有的测试工具;个人觉得当学习众多同类知识或相关主题时,分几步走: 1、学习所有同类知识的共同理论、原理部分【此为共性】 2、学习所有同类知识的独有特性、技巧部分【此为个性】 3、根据具体的实际场景,适当的运用所学知识的【即运用知识的个性部分去解决特定的问题】 学习自动化测试工具也是这样的,之前不愿意学习太多是怕混淆视听,现在对原有知识已有了一定的固化认识【即了解了基本原理】,也就可以从新学习个性化的东西了;而这一步正是为了以后能够适当运用

软件测试阿沐博客 1296

12大常用自动化测试工具,请记得转发收藏!

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

m0_58026506的博客 1万+

软件测试常见英文单词汇总

一、专业名词篇 A: Automated Test 自动化测试 Alpha Test a测试 Acceptance Test 验收测试 Agile Testing 敏捷测试 Accuracy Testing 准确性测试 B: Black-Box Test 黑盒测试 Benchmark Test 基准测试 Beta Test β测试 Branch Testing 分支测试 C: Compatibility Test 兼容性测试 Combinatorial Testing 组合测试 C

m0_47610432的博客 2893

idb社区资源汇总:学习iOS自动化的最佳教程和工具

idb是Facebook开源的强大iOS自动化工具,能够帮助开发者高效管理iOS模拟器和设备。作为一名iOS开发者,掌握idb工具可以大幅提升测试效率和应用调试能力。本文汇总了最实用的idb教程和资源,让你快速上手iOS自动化测试。 ## 📚 官方文档与学习资源 idb项目提供了完整的官方文档体系,涵盖了从入门到精通的全部内容: **安装指南** - 详细说明如何安装idb客户端和comp

gitblog_00378的博客 1003

几款具有代表性的自动化测试工具汇总简介

几款具有代表性的自动化测试工具汇总简介 一、传统自动化测试工具/商业工具(传统工具较多仅介绍两款,基本都是国外的) 1、QTP,全名HP QuickTest Professional software ,最新的版本为HP QuickTest Professional 11.0QTP是quicktest Professional的简称,是一种自动测试工具。使用QTP的目的是想用它来执行重复的手动测试...

qq_36987881的博客 1620

Rational_Robot_7.0.1安裝包.zip.File1

Rational_Robot_7.0.1安裝包.zip.File1

史上最全java自动化测试工具汇总

收藏清单:史上最全java自动化测试工具汇总 xUnit frameworks 单元测试框架 JUnit - 常用的测试框架 TestNG - 测试框架 Test Data Supplier - TestNG DataProvider封装,让数据的生成更加灵活 TDD \ ATDD \ BDD 工具 JBehave - Behaviour-Driven Development (BDD)测试框架. BDD是从 test-driven development (TDD) 和 a

qq_44534541的博客 5450

Rational_Robot_7.0.1安裝包.zip.File4

Rational_Robot_7.0.1安裝包.zip.File4

常见的自动化测试工具汇总

在自动化测试领域,自动化工具的核心地位毋庸置疑。这篇博客总结了最顶尖的自动化测试工具和框架,这些工具和框架可以帮助组织更好地定位自己,跟上软件测试的趋势。这份清单包含了开源和商业的自动化测试解决方案。 1.Selenium Selenium可能是网页应用中最流行的开源自动化测试框架。起源于 2000 年,10 多年来不断地完善,Selenium 成为许多 Web 自动化测试人员的选择,尤...

stone_tomcate的博客 6922

Rational_Robot_7.0.1安裝包.zip.File2

Rational_Robot_7.0.1安裝包.zip.File2

EasyTesting接口自动化测试平台,使用Django、Django REST框架、SQLite、Bootstrap和HTTPRunner构建的综合测试平台,支持异步执行测试用例,测试套件等

EasyTesting接口自动化测试平台,使用Django、Django REST框架、SQLite、Bootstrap和HTTPRunner构建的综合测试平台,支持异步执行测试用例,测试套件,方便调试接口,管理接口,用例,执行自动化测试接口,测试报告查看,界面简约美观。

常用自动化测试工具汇总

自动化测试

lixiaomei0623的专栏 6038

安装keil5(MDK)及导入pack包教程

首先说明的是我安装的Keil版本为Keil V5.29.0.0 1、安装软件 右键管理员权限运行安装包 设置安装路径以及pack的存放路径 随意输入First Name和E-mail 安装驱动 完成软件安装,然后可以先关闭弹出的Pack Install(一会再添加) 2、激活一下软件 打开桌面的Keil File → License Management(我之前注册过了) 右...

hrx-@@ 10万+

常见的自动化测试工具和框架

Selenium:一个用于浏览器自动化测试的工具,支持多种编程语言,可以模拟用户在真实环境下的操作。Appium:一个用于移动应用自动化测试的工具,支持多种移动平台,可以模拟用户在真实设备上的操作。JUnit:一个用于Java语言的单元测试框架,可以用于编写和运行自动化测试用例。TestNG:一个功能更强大的用于Java语言的测试框架,支持并发测试、数据驱动测试等高级功能。Cucumber:一个行为驱动开发(BDD)框架,支持用简单的自然语言编写测试用例,并能生成易读的测试报告。

okcross0的博客 1327

VisionMaster -Group循环、数组数据格式化

这里创建一个格式化工具,按照自己想要的模式格式化刚刚输出的数据。因为是检测多个物体,所以这里选择输出的是数组。第一次的模板很不满意,反复调整参数也没好,边缘不整齐,强迫症患者受不了。实测如果输入设置太多,会导致模块失效,所以尽量选择需要的少量参数。这里要打开循环使能,循环数值就是高精度匹配的匹配个数。Group输出设置里选择刚刚建立的数据集。左边是主流程,右边是组合模块内部流程。修改采图这里的曝光值,图像提亮一点。建一个数据集,把想要的数据收集起来。用TCP助手测试一下OK。成功得到了想要的数据。

weixin_69505365的博客 4532

android 数据库锁的问题

最近在项目中遇到一个错误: 12-26 17:29:10.501 32592 32644 W SQLiteConnectionPool: The connection pool for database '***.db' has been unable to grant a connection to thread 1378 (thread-pool-0) with flags 0x2 for...

低调的成长 2903

常见自动化测试工具,你用过哪些?

一 Appium 官网:http://appium.io AppUI自动化测试 Appium 是一个移动端自动化测试开源工具,支持iOS 和Android 平台,支持Python、Java 等语言,即同一套Java 或Python 脚本可以同时运行在iOS 和Android平台,Appium 是一个C/S 架构,核心是一个 Web 服务器,它提供了一套 RES...

tiantian1980的专栏 4922

Anylogic试用版密匙

#$%99dTMbLIj+hm/c9fn0suWlfQjdK9FzRH8oSbR Rbm3FEeONkF5mDLKHxhscEDBANDg4BSU2Oi6hErk TH/KzwiCtsM0jfD50uRsj60+gi9ifTlduwcpSr6a GtVSilXwF997xTVAoMLddqOzGQAbnSjBiJOBdm1Z 0QwwIEJynvYgckLfoEADzncIgNnJjYshWcmGh3s9 gTgyuQPlRBeTXfb+ZJPI1JGi4sAUljwdB53Df+AX SEf5FaIbih

qq_43939616的博客 8271

2024常见的自动化测试工具和框架!

​ 在软件测试领域,自动化测试框架有很多,这里主要介绍几种常用的自动化测试框架。 ​

apex_eixl的博客 841

空心杯电机在美容仪器中的应用:为什么你的洗脸刷动力这么强?

本文深入解析了空心杯电机如何成为高端美容仪器的核心动力源。通过对比传统电机,揭示了其无铁芯、低惯量、零齿槽效应的技术优势,从而实现了强劲动力、极致静音与细腻震动的用户体验。文章详细阐述了空心杯电机在洁面刷、导入仪等美容仪器中的具体应用与选型考量,并指出了开发中驱动匹配、测试等关键实战要点。

j2k3l4的博客 1013

Arduino ESP8266通过 RF433数据收发实验

Arduino ESP8266通过 RF433射频模块实现数据收发实验 写这篇文章,折腾了2天,在没有成功之前,一直在摸索和采坑当中,不要问我黑暗和黎明之间有多长。开发很多时候只问结果,不问过程的,在这里分享来之不易的结果,希望后面的人不要采坑,有成功的案例先河,后面与之相关的应用开发只需要套用模板修改即可实现。 实物搭建 RF433模块 我使用的是这个:nodemcu 本案例开发所使用到的库:RadioHead:http://www.airspayce.com/mikem/

perseverance51博客 3808

常见自动化测试工具及框架的选用

一、自动化测试简介 1、什么是自动化测试软件测试是软件产品开发过程中不可或缺的环节,众所周知,软件测试的分类方法非常多,根据不同的分类,测试可以分为很多种不同的测试方式。如果根据不同的测试点分类,可以将测试分类划分为功能测试、性能测试,这也是我们最常见的的软件测试范畴。而我们的自动化测试,一般意义上来说,是指对功能、性能进行脱离手工的自动化的测试。对于自动化测试,更广泛的意义,是对界面功能的自动化测试。因此,按照对软件测试的自动化程度,可以分为手工测试、自动化测试。再进一步细分,界面自动化测试,又可根据平

qq_48811377的博客 1157

YOLOv11 环境配置全流程 | 从零开始搭建训练与推理环境

YOLOv11环境配置与训练全流程指南 本文详细介绍了YOLOv11目标检测模型的环境配置、训练与推理全流程。内容包括: 环境要求:列出GPU、CUDA、Python等组件的版本要求,提供快速检查脚本 Windows配置: CUDA 12.6和cuDNN 8.9.7安装步骤 使用Conda创建隔离环境 PyTorch GPU版本安装方法 IDE环境配置 Linux配置:提供Ubuntu 22.04下的CUDA、cuDNN安装命令和Conda环境搭建 Docker方案:提供一键式容器化部署命令 训练实战: 数

shrgegrb的博客 2019
上一篇: python之禅学
下一篇: 如何完全卸载QTP工具
上帝De助手
上帝De助手 领域专家: Python技术领域 领域专家: Python技术领域
博客等级 码龄19年 1494粉丝 215原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

上帝De助手

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值