一、传统自动化测试工具/商业工具(传统工具较多仅介绍两款,基本都是国外的)
1、QTP,全名HP QuickTest Professional software,是一种自动测试工具。使用QTP的目的是想用它来执行重复的手动测试,主要是用于回归测试和测试同一软件的新版本。
因此你在测试前要考虑好如何对应用程序进行测试,例如要测试那些功能、操作步骤、输入数据和期望的输出数据等QuickTest针对的是GUI应用程序,包括传统的Windows应用程序,以及现在越来越流行的Web应用。它可以覆盖绝大多数的软件开发技术,简单高效,并具备测试用例可重用的特点。其中包括:创建测试、插入检查点、检验数据、增强测试、运行测试、分析结果和维护测试等方面。
2、IBM Rational Functional Tester(简称RFT)是一款先进的、自动化的功能和回归测试工具,它适用于测试人员和GUI开发人员。使用它,测试新手可以简化复杂的测试任务,很快上手;测试专家能够通过选择工业标准化的脚本语言,实现各种高级定制功能。
通过IBM的最新专利技术,例如基于Wizard的智能数据驱动的软件测试技术、提高测试脚本重用的ScriptAssurance技术等等,大大提高了脚本的易用性和可维护能力。
传统工具优点:老牌工具/厂商,经过千锤百炼,功能成熟,令人放心
传统工具不足:①工具购买价格高,需要用户数多的话不是一般企业承受得起的(使用不使用都要付钱,一旦废弃浪费很大)。②需要本地部署,维护,长期成本高;③工具封闭企业自己难以扩展;④使用传统编程语言,不是人人都能熟练编写用例,效率低;
二、免费/开源工具(web、app、win-gui各介绍一款,都是国外的)
1、Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7、8、9)、Mozilla Firefox、Mozilla Suite、Google Chrome等。这个工具的主要功能包括:测试与浏览器的兼容性——测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上。测试系统功能——创建回归测试检验软件功能和用户需求。支持自动录制动作和自动生成.Net、Java、Perl等不同语言的测试脚本。
2、Appium是一个支持移动App的开源、跨平台的自动化测试工具,用于测试原生和轻量移动应用,支持iOS, Android和FirefoxOS平台。Appium驱动苹果的UIAutomation库和Android的UiAutomator框架,使用Selenium的WebDriver JSON协议。
3、Autoit是一个使用类似BASIC脚本语言的免费软件,它设计用于Windows GUI(图形用户界面)中进行自动化操作。它利用模拟键盘按键,鼠标移动和窗口/控件的组合来实现自动化任务。而这是其它语言不可能做到或无可靠方法实现的(例如VBScript和SendKeys).
优点:开源/免费,中小企业最爱。
不足:①未经长时间锤炼,多少有些这样那样的BUG,修改维护不够及时;②虽然免费但企业使用成本未必就低,经常需要做集成开发(仔细算一下可能就会头疼),若企业场景复杂集成开发难度和工作量大,不是所有企业投能投得起的(一旦不用,浪费巨大);③使用传统编程语言,不是人人都能熟练编写用例,效率低;
三、国产免费自动化测试工具新秀——TestWriter
TestWriter是上海博为峰结合多年为企业做测试服务的经验所研发的一款具有自主知识产权的自动化测试工具,跨Web、Android、iOS三大平台,为企业用户提供真正的低成本、高效率的自动化测试,引领软件测试自动化运用由技术层面向业务层面转变。用户可在TestWriter中通过统一图形化界面轻松创建测试计划,并驱动执行引擎完成自动化测试任务,有效降低了测试人员能力要求及脚本维护工作量,让自动化测试更简单,更专注于业务。
1、完全零编码
TestWriter引入对象库,支持对页面元素的智能分析,自动生成操作对象库,或通过简单的点击生成操作对象库;
2、图形化界面
通过图形化界面,对测试对象、测试步骤、用例等层层封装映射,清晰理清业务关系;
业务变动、界面调整时仅需修改相应业务库内容;
3、简单易操作
支持分布式测试,通过拟定计划,自动匹配测试环境并分配执行机器,无需测试人员干预,轻松实现自动定期回归;
4、结果更直观
实时查看执行情况,自动记录测试结果,并对错误步骤进行问题分析及错误时UI截图。