TestLink作为开源
测试管理工具,可以进行测试工程、测试计划以及执行计划的管理,而且TestLink团队提供了XML-PRC的接口供第三方工具调用,接口支持程度也比较好。
Fitnesse作为开源验收测试框架,本身可以做到测试集、
测试用例的执行,有较为优秀的测试执行行为的管理以及测试结果的收集。
由于Testlink大部分场合下是用于手工测试用例的管理,为了能够是Testlink对于测试用例管理的优点也用于Fitnesse上
自动化测试用例的管理,也为了能够让手工测试用例和自动化回归测试用例mapping起来,方便测试管理者能够清晰知道自动化测试用例在测试项目中的比例,也为了测试管理者可以较好的管理回归测试流程,考虑将Fitnesse和Testlink进行集成。
两个平台集成的基本思路是: 1. 将Testlink上的用例和Fitnesse上的用例一一mapping. 2. 将Fitnesse上用例的执行结果能够实时反馈给Testlink上用例的执行结果。
Testlink Java api client提供了一个非常好的接口,
reportTestCaseResult(projectName,testPlanName,testCaseNameOrVisiableID,buildName,execNotes,testResultStatus)
该接口有6个参数,其中
projectName: Testlink上对应的测试工程名称
testPlanName:Testlink上测试工程对应的测试计划
testCaseNameOrVisiableID: Testlink上测试用例的名称或ID,这里的ID是指测试项目前缀加上'-'在加上阿拉伯数字
buildName:Testlink上对应测试计划的构建执行计划
execNotes:是指每个case执行后的备注,可以为null
testResultStatus:是指测试用例执行结果,'p'或者'f'
通过调用给接口,我们可以完成测试用例执行结果的传递。
接下去我们要解析Fitnesse执行结果的分析:
在这里我通过一个代理proxy来完成该任务,该代理需要完成Fitnesse测试执行结果的解析,测试用例ID的解析,然后完成TestLink接口的调用
如下图所示总体架构: