目标确定后,我第一步要做的就是找资料,找资料的工作都是春节在家里完成的(其间还带爸妈浏览了一下公司的网站),找开源的工具,主要是看大众的评价和普及度。
软件的易用度很重要,否则无法达到优化测试管理的目的。……(此处省略n字baidu和google),主流的开源测试管理工具如下:
缺陷管理工具
1. Mantis(http://mantisbt.sourceforge.net/)
2. Bugzilla(http://www.mozilla.org/projects/bugzilla/
3. Bugfree (http://www.bugfree.cn/)
测试管理工具
1. TestLink(http://testlink.sourceforge.net/docs/testLink.php)
2. Bugzilla Test Runner (http://sourceforge.net/projects/testrunner/)
最开始的时候特别侵向于2&2,因为Bugzilla Test Runner 就是基于Bugzilla的测试用例管理系统。本打算把前者改造一下让它支持更多测试计划(上篇提到的需求1),可惜工作量有点大,另外它的网络支持也较少,决定Pass。
到这时,测试管理工具就剩下Testlink了,缺陷管理工具开始也是想用2,比较熟悉,这个没有兑现则纯粹是缘分问题,现在怀疑是当时下载的Bugzilla的包是个坏的,感兴趣的同学可以再试试。
最终Testlink和Bugfree的结合就是顺理成章了。这样确定的时候,有点无奈,因为二者是PHP+mysql+Apache的,我对PHP了解太少,没有写过程序,不知道遇到问题能不能改。新发布的Bugfree2.0增加了测试用例和测试结果的管理,“冗余”了,还是用1.1.
服务器启来,Testlink和Bugfree分别执行了一下,总的来说挺幸运,除了Testlink的乱码比较多,两个都能独立顺利跑起来。乱码的问题最后改,根据经验,这一定是个minor的bug,应该就是配置的问题。先尝试能把两个连接起来重要些。
找到配置文件,链接按钮也照着葫芦画瓢编码进去并且正确显示了,只是点击按钮后就会异常退出。找Bug是咱测试人员的强项,分析跟这个bug相关的第一嫌疑是testlink和bugfree的主程序,次嫌疑是相关的两个配置文件,主程序很短,两个index.php 从头至尾看过一遍,最可能出bug的就是几个if语句了,分支走错了退出,太常见了。果然就是少了一个!的问题。乱码是键值没有内容,逐个配置上就解决了。
试着模拟了一次CCI回归测试,从建计划到执行到指派相关人员处理临时问题,可以满足上篇的需求,也可以胜任小型项目的测试管理工作。CCI的同学可以连到我的机器玩玩http://10.1.1.187/testlink/index.php test/123456(senior tester). 目前自动化测试管理剩下一些修补的工作,像是邮件配置,明确权限管理、测试流程等,需要在业余时间慢慢做完,只是繁琐,应该不难。另外计划在4月份可以准备一次《基于Testlink&Bugfree的测试管理工具UserGuide》的内部交流。
最后总结一下整个自动化测试管理的过程,最大的感触就是“选择比努力更重要”,和人生一样,永远不只是A和B的选择,应该还有C。另外一个感触是,很多实验没有做彻底有些遗憾(主要是时间成本),无法确切定位问题,疏漏难免,因此非常欢迎大家的建议和指导!来电来函均有来必复~