如何实时制作RFT报告测试结果?

时间:2010-09-03 19:38:01

标签: teamcity rft

在我们的开发环境中,我们运行持续集成服务(TeamCity),它通过运行构建/测试作业并报告结果来响应代码签入。虽然工作正在进行中,但我们可以很容易地看到到目前为止已经执行了多少单元测试,有多少已经失败等等。

我的自动化测试团队正在提供在Rational Functional Tester中开发的UI测试。从源代码控制系统中提取这些测试,编译它们,并从命令行执行它们似乎都是非常简单的练习。

我无法找到的是一种自动报告测试结果的方法 - 例如,似乎没有任何监听器挂钩,或者任何方式来自定义发出的消息。

从我的研究到目前为止,我得出的结论是,我唯一的选择是(a)等到测试结束,然后(b)解析RFT生成的HTML报告。

有人有更好的答案吗?

2 个答案:

答案 0 :(得分:1)

以下是我用于类似目的的解决方法:

  1. 编写一个覆盖onTerminate回调方法的帮助程序超类,在那里实现日志解析逻辑。
  2. 将测试脚本的帮助程序超类更改为步骤1中的辅助程序超类。
  3. 使用RFT CLI在连续集成代码中调用脚本。

答案 1 :(得分:0)

扩展@ eric2323223,在onTerminate覆盖中,您可以使用TeamCity的build script interaction功能将您的RFT通过/失败状态汇总到TeamCity。您只需要将这些TeamCity特定的消息发送到命令行,以便TeamCity选择它们。

##teamcity[testStarted name='test1']
##teamcity[testFailed name='test1' message='failure message' details='message and stack trace']
##teamcity[testFinished name='test1']

##teamcity[testStarted name='test2']
##teamcity[testFailed type='comparisonFailure' name='test2' message='failure message' details='message and stack trace' expected='expected value' actual='actual value']
##teamcity[testFinished name='test2']