开源软件运动正在获得很大成功,正在改变软件业的开发模式、运营方法等,也自然改变着软件测试的方法,借助开源软件测试工具完全可以构造一个完整的测试解决方案,从单元测试、功能测试到性能测试,从Web页面测试到VoIP/Telephony等一些多媒体应用的测试,直至测试的管理平台和缺陷跟踪系统,能覆盖整个测试工作领域。
开源工具的优劣势
对比 优势 劣势
开源工具
免费:投入少、见效快
小巧、轻便,在自己擅长的领域可以提供的解决方案
有更好的扩展自由度
资源丰富
功能简单
各个软件之间的集成度不高
主流商业测试工具 工具本身功能强大
有完善的售后服务
成体系:集成度高
功能强大
有一定费用
需要专业系统地学习
市场主流测试工具与开源工具的对应列表
测试工具类型 开源工具 市场主流工具
测试管理工具 TestLink TestDirect
配置管理工具 CVS、VSS、SVN ClearCase
BUG管理工具 Bugzilla、BugFree TD、ClearQuest、
单元测试工具 Junit、Jmeter JTest
功能测试工具 WATIR、Selenium WinRunner、SilkTest、QTP
性能测试工具 HTTP-LOAD、ab LoadRunner 、 QALoad
YAHOO开源工具–对 Bugzilla的扩展
Bugs 改名为Tickets
界面做了改进,操作起来更方便快捷
增加了产品组的概念
把版本细分为原版本和目的版本
改进了产品选择功能
YAHOO开源工具的应用--TestLink
TestLink用于测试过程中的管理,它可以将测试过程从测试需求、测试设计、到测试执行完整的管理起来,同时,它还提供了好多种测试结果的统计和分析,帮助我们管理测试工作和分析测试结果。作为基于web的测试管理系统。
YAHOO开源工具—TestLink主要功能
根据不同的项目管理不同的测试计划,测试用例,测试构建相互之间独立
根据树状的项目,组件,分类,测试用例,设计测试用例
可以基于关键字搜索测试用例。
可以将现有测试用例简单修改后复用,
同一项目可以制定不同的测试计划,然后将相同的测试用例分配给测试计划 (可以实现测试用例的复用,筛选)
可以设定执行测试的状态(通过,失败,锁定,尚未执行),失败的测试用例可以和 bugzilla 中的 bug 关联,每个测试用例执行的时候,可以填写相关说明。
测试结果分析(可以实现按照需求,按照测试计划,按照测试用例状态,按照版本,统计测试结果)
自定义角色,通过角色控制用户权限
测试结果可以导出为 excel 表格
测试用例可以导出为 csv , html 格式
通过超连接,可以将文本格式的需求,计划关联
可以将测试用例和测试需求对应。测试可以根据优先级指派给测试员,定义里程碑
YAHOO开源工具—TestLink需改进的功能
不能根据优先级筛选用例,如果需要优先级,必须通过关键字来实现
不能设定测试用例的种类,如果需要必须通过关键字来实现
如果测试用例需要大量的数据,创建测试用例时不方便
需与第三方缺陷管理工具集成,例BUGZILLA
YAHOO开源工具的应用--WATIR
Watir 是一个使用 Ruby 实现的开源Web 自动化测试框架,相对于那些庞大的商业工具来说,它很小巧,也很灵活,提供的功能也足够用。 主要优势:
1.因为是操作IE,而不是直接抓http,所以更加接近真实用户结果,很适合GUI功能测试
2.其开发语言ruby非常灵活,而且简单,易学,所以它也具有这些特性
3.活跃而友好的开发队伍和邮件组,很快的响应你所遇到的问题
4.提供了一些简单的framework,log等等,而且都是比较轻量级的封装,很容易可以customized
YAHOO开源工具应用实例—WATIR
require 'watir'
ie1=Watir::IE.start('yahoo.com.cn')
ie1.text_field(:name,'p').set('yahoo')
ie1.button(:value,'全网搜索').click
if ie1.link(:text,'雅虎首页').href=='http://www.yahoo.com.cn/'
puts 'ok!'
else
puts 'Failed!'
end