如何将junit测试运行结果记录到数据库中

nem*_*moo 7 java hook logging junit

我们使用junit进行集成测试.测试正在Eclipse和Jenkins中运行.

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

通常我们只是用@Test注释注释一个测试方法,瞧,我们有junit测试方法.

这意味着我们没有围绕junit的额外框架,我想保持这种方式.我担心这意味着如果我想实现那种日志记录,我可能不得不入侵junit.

有没有人这样做,如果能很好地提供建议?也许你对如何/在何处将钩子置于junit中有所了解.或者我的问题有更简单的方法吗?

谢谢!

编辑:为了澄清,我们已经有单个测试运行的junit测试结果.你可以从eclipse(导出junit结果)或jenkins中取出它们.在Jenkins运行我们的junit测试套件还允许我们跟踪测试套件的测试失败率.它会显示一个很好的图表,可以跟踪一段时间内传递的测试数量.在每个jenkins构建中,您可以看到传递了哪些测试,也与上次运行相比.我们还需要更多.我们希望能够分析某些测试用例在多次运行中的性能(持续时间),也可能分析它们在不同环境中的行为方式.提取趋势.做一些数据挖掘.

Lui*_*ano 2

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

可以在此处找到有关如何实现此目的的说明以及建议 HTML 报告的指南: http: //www.skill-guru.com/blog/2010/03/26/generate-junit-test-results-as -html-报告/

我希望这有帮助。