10大主流自动化测试工具介绍
在国内,软件测试的步骤就比较晚,其作为弱势的部分的地方一直难于改变。但另一方面软件行业的迅速发展,软件的版本升级的频度超出了人们的想像。作为软件测试也不得不跟紧这种飞速的进度。
当版本发布时,就必须要求在短时间内完成测试任务,测试人员进度靠人力的堆积变得越来越不可行,自动化测试的就显得越来越重要。国内自动化测试虽然比软件测试要晚得多,但是却从一开始声势就要大的得多,几科一时间所有的部门都在讨论自动化测试,自动化测试的未来似乎一片光明。但是几年过年过去,自动化测试的发展有点雷声大雨点小,自动化测试的现状显然没有想象的那么好。常见的原因有以下几个方面,
望而却步型:且不谈商业软件的购买成本,自动化测试就要投入人力做到自动化脚本和维护就投入大量的人力
虎头蛇尾型:刚开始全体人员热血沸腾,买工具,作培训,建架构做流程,全员一起上战场。投入一段时间发现自动化测试并能在短时间内产生效益,并且工具本身也有很多限制。
型同允肋型:公司部分投入花大力气,投入巨大的成本推行,但在推行之前又没有很好的分析项目测试的具体情况,结果做出来的脚本的维护成本比手工测试还要大。
基于当前市场的主要应用场景,这里主要谈一谈常用的WEB自动化,要想WEB自动化在项目中利起来,测试工具必须要具务的一项必杀之技是脚本录制,如果靠手工编写脚本,那么项目结局注定以失败告终,因为后期的脚本维护成本会你让痛不欲生。
脚本录制技术一般分析为以下内种几技术:
坐标定位:是这一种简单脚本技术,适合简单要的重复回放,不适用于项目的自动化功能,如:按钮精灵。
图形识别:就是一种以图像的相似度的方式定位元素。这种技术定位精度不准,很容易失效。
元素属性定位:定位精准,可以靠性好。这种元素定位的技术有也有很多,如果:id,name,xpaht等,但是当代码变更也容易失效。
针对这些情况笔者针对市场主流的自动化工具一一点评,以享读者
1.kylinTOP
是一款国产自动化测试工具,支持性能测试、自动化测试、业务监控功能。这里主要谈一谈他的自动化功能,它的自动化功能主要支持:接口测试、web、APP功能。
kylinTOP的支持脚本录制生成脚本,元素定位采用一种元素属性综合定位技术(AI技术),同时把脚本可视化,免除了测试人员编码痛苦,有效提高了自动化脚本建设的效率,降低维成本,是目前国内最有潜力的一款自动化测试工具,也是一款在项目中最有可能实现成功的自动化测试工具。
2.HP QuickTest Professional software (QTP)
是一种自动测试工具。使用QTP的目的是想用它来执行重复的手动测试,主要是用于回归测试和测试同一软件的新版本。采用元素定位技术,测试人员需要手工维护脚本代代码。
3.QuickTest
QuickTest针对的是GUI应用程序,包括传统的Windows应用程序,以及现在越来越流行的Web应用。是代传统的GUI测试工具,采用元素定位,需要维护脚本代码。
4. WinRunner
WinRunner是Interactive公司的是一种企业级的功能测试工具,用于检测应用程序是否能够达到预期的功能及正常运行。
是一种传统的自动化测试工具,需要维护脚本代码。
脚本样例:
# insert a record # Flight Reservation set_window ("Flight Reservation", 1); obj_mouse_click ("Button", 13, 16, LEFT); obj_type ("MSMaskWndClass","101002"); list_select_item ("Fly From:", "London"); # Item Number 2; list_select_item ("Fly To:", "Paris"); # Item Number 3; obj_mouse_click ("FLIGHT", 56, 22, LEFT);
5.Rational Robot
是业界最顶尖的功能测试工具,它甚至可以在测试人员学习高级脚本技术之前帮助其进行成功的测试。
传统的自动化测试工具,支持本录制,但是录制后的脚本需要人力修改脚本。脚本体现形式以代码体现,需要测试人员具备代码能力。
6.IBM Rational Test Manager
,在这里测试人员可以计划、组织、执行、管理和报告所有测试活动,包括手动测试报告。
传统的自动化测试工具,支持本录制,但是录制后的脚本需要人力修改脚本。脚本体现形式以代码体现,需要测试人员具备代码能力。
7.AdventNet QEngineAdventNet Qengine
是一个应用广泛且独立于平台的自动化软件测试工具,可用于Web功能测试、web性能测试、Java应用功能测试、Java API测试、SOAP测试、回归测试和Java应用性能测试。
8.QARun
测试实现方式是通过鼠标移动、键盘点击操作被测应用,即而得到相应的测试脚本,对该脚本可以进行编辑和调试。
9.Test Partner
是一个自动化的功能测试工具,它专为测试基于微软、Java和Web技术的复杂应用而设计。传统的自动化测试工具,支持本录制,但是录制后的脚本需要人力修改脚本。脚本体现形式以代码体现,需要测试人员具备代码能力。
10.Telelogic TAUTAU
包含三个最新的、最强大的技术用来加速大规模软件开发和测试:统一建模语言(UML);功能强大的测试语言TTCN-3和新的构造系统的方法:Model Driven Architecture(模型驱动构架)。
原文地址:https://www.cnblogs.com/kylinTOP/p/15087108.html
- vhost-user 简介
- 把玩爬虫框架Gecco
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(55)-Web打印
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(75)-微信公众平台开发-用户管理
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(89)-EF执行SQL语句与存储过程
- GitHub上大热的Deep Photo终于有TensorFlow版了!
- 资源 | Style2paints:专业的AI漫画线稿自动上色工具
- Github 项目推荐 | 真实全景图像强化学习 AI 平台 —— Matterport3DSimulator
- Github 项目推荐 | 用 Pytorch 实现的 Capsule Network
- 野外动物监测图像挑战赛:预测捕捉到的野外图像是否包含动物
- Github 项目推荐 | 用 Keras 实现的神经网络机器翻译
- Github 项目推荐 | 类 Keras 的 PyTorch 深度学习框架 —— PyToune
- Github 项目推荐 | 可提取结构化信息的自然语言理解 Python 库 Snips NLU
- 工具| 诸神之眼nmap定制化之并发处理
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 解决yum安装报错Protected multilib versions的问题
- Linux与Windows编码不一致的解决方案
- Linux运维之如何使用ss命令代替netstat
- 对Linux终端使用socks5代理的方法详解
- linux安装xmind的方法步骤
- 对linux下软件(库)的更新命令详解
- Linux环境下Apache服务器配置二级域名的方法详解
- Linux环境下Apache开启https服务的方法详解
- 使用GANs生成时间序列数据:DoppelGANger论文详解
- CentOS 7使用samba共享文件夹的完整步骤
- Linux环境使用crontab命令设置定时周期性执行任务【含php执行代码】
- linux系统报xfs_vm_releasepage警告问题的处理方法
- linux系统报tcp_mark_head_lost错误的处理方法
- Pandas的列表值处理技巧,避免过多循环加快处理速度
- 详解Linux iptables常用防火墙规则