【发布时间】:2011-08-09 00:13:26
【问题描述】:
我们使用 junit 进行集成测试。测试在 Eclipse 和 Jenkins 中运行。
现在我想将所有 junit 测试运行结果记录到数据库中以便于报告(我想记录测试类/方法名称、环境、持续时间和成功)。 我曾考虑过解析 junit 结果 xmls,但将其直接记录到数据库对我来说也听起来不错。这听起来很突兀,但也很优雅。
通常我们只是用@Test注解来注解一个测试方法,瞧,我们有我们的junit测试方法。
这意味着我们没有围绕 junit 的额外框架,我想保持这种状态。我担心这意味着如果我想实现这种日志记录,我可能不得不侵入 junit。
有没有人这样做,如果效果很好,可以提供建议吗?也许您对如何/在何处将钩子放置在 junit 中有一个想法。还是有更简单的方法来解决我的问题?
谢谢!
编辑: 为了澄清,我们已经有了单次测试运行的 junit 测试结果。您可以将它们从 eclipse(导出 junit 结果)或 jenkins 中取出。在 Jenkins 中运行我们的 junit 测试套件还允许我们随时间跟踪测试套件的测试失败率。它向您显示了一个很好的图表,可以跟踪随着时间的推移通过了多少测试。在每个 jenkins 构建中,您都可以看到通过了哪些测试,也可以与上次运行进行比较。 我们需要更多。我们希望能够分析某些测试用例随着时间的推移、多次运行的性能(持续时间),也许还可以分析它们在不同环境中的不同表现。提取趋势。做一些数据挖掘。
【问题讨论】:
-
你想记录你的单元测试历史。 ?你的问题根本没有意义。包括 Hudson (Jenkins) 在内的几乎所有 CI 服务器都有发布 Junit 功能,提供了非常好的测试报告。
-
我已经更新了我的问题。