2011-04-19 108 views
7

我们使用junit进行集成测试。测试正在Eclipse和Jenkins中运行。如何将junit测试运行结果记录到数据库

现在我想将所有junit测试运行结果记录到数据库以便于报告(我想记录测试类/方法名称,环境,持续时间和成功)。 我曾想过解析junit结果xmls,但是直接将它记录到数据库对我来说听起来也不错。这听起来很干扰,但也很漂亮。

通常我们只是用@Test注解来标注测试方法,而我们有我们的junit测试方法。

这意味着我们没有额外的框架围绕junit,我想保持这种方式。我担心这意味着如果我想实施这种记录,我可能不得不进入junit。

有没有人这样做,并可以给建议,如果这很好地工作?也许你有一个关于如何/在哪里放置钩子的想法。还是有更容易的方法来解决我的问题?

谢谢!

编辑: 为了澄清,我们已经有单测试运行的junit测试结果。你可以从eclipse(导出junit结果)或jenkins中取出它们。在Jenkins运行我们的junit测试套件还可以让我们跟踪测试套件的测试失败率。它向你展示一张不错的图表,可以跟踪随着时间推移传递了多少次测试。在每个詹金斯建立,你可以看到哪些测试通过,也与上次运行相比。 我们需要更多。我们希望能够分析某些测试用例的性能(持续时间),随着时间的推移,多次运行,也可能他们在不同的环境中表现如何不同。提取趋势。做一些数据挖掘。

+0

你是否会记录你的单元测试历史。 ?你的问题根本没有意义。几乎所有包括Hudson(Jenkins)在内的CI服务器都发布了Junit功能,它提供了非常好的测试报告。 – 2011-04-19 20:48:26

+0

我已更新我的问题。 – nemoo 2011-04-28 15:23:33

回答

2

我不确定这是否对您有帮助,但您可以对JUnit测试的输出执行各种类型的重定向,甚至可以指定测试报告的格式,然后您可以将其存储在数据库中能够访问并保持时间,进一步分析甚至统计目的。

与解释的指南对如何可以做到这一点,这表明HTML报告,可以在这里找到:http://www.skill-guru.com/blog/2010/03/26/generating-junit-test-results-as-html-report/

我希望帮助。