我有大量的Nunit测试;我需要从给定的运行中将结果导入到数据库中,然后将结果集并向用户呈现(测试失败的电子邮件,Web演示文稿以检查结果)。我还需要随着时间的推移跟踪多次运行(用于报告失败率随时间等)。

XML将是Nunit-Console生成的XML。我想在某些数据库中导入至少大惊小怪的XML,然后可以将其用于持久并呈现结果。我们将有许多自定义类别,我们也需要能够进行分类。

有人知道可以处理可以根据我们个人需求定制的这种类型数据的数据库架构吗?这种类型的问题似乎应该很普遍,因此应该存在一个常见的解决方案,但我似乎找不到一个。如果有人以前实施了这样的解决方案,也将不胜感激。

有帮助吗?

解决方案

在我看来,就像您实际上是在构建服务器之后 cruisecontrol.net 或者 团队.

让构建服务器运行测试,并且可以告诉人们失败的事情以及原因。

我推荐TeamCity,因为它更容易设置。

其他提示

我在这里想解决同一问题。我们目前倾向于编写XSLT,以将XML结果转换为插入语句。然后通过命令行SQL解释器运行插入语句的结果文件。理想情况下,我宁愿有一个Nunit的加载项/扩展,可以为我处理所有这些。不幸的是,我找不到一个。

为了构建iainmh的答案,您可能需要看一下使用TRAC 咬伤, ,这是一个开源构建系统,可以运行N单元测试并报告结果。我目前将其用于该确切的功能。

使用MS SQL时,您可以将所有XML导入[XML]数据类型的常见列。为此,可以执行XPATH,搜索和转换。

CruiseControl或Teamcity的另一个替代方法是 阿特拉斯利亚人竹子 如果您被扣押了现金。我非常喜欢他们的软件,易用它,他们在您可以花10美元的地方有一笔交易。

我们希望避免这种情况,但是我们已经从Nunit结果XML模式生成了数据库模式;但是,这有点不足,因为Nunit进行了一些(不准确和奇怪的)处理来确定一些关键统计数据(例如,“忽略”与“不运行”)。

我们仍然希望找到一个不是完整的CIT构建系统的模式 /过程,该系统可以使我们可以自定义数据库以导入结果,但是当前我们正在使用一个手工卷的数据库许多自定义以获取所需的报告。

为什么需要在数据库中获得结果?谁将使用它们?故障的数量不能很大。如果是(反复),您的开发过程是错误的。修复该过程。消除废物(精益原则之一),不要收集它。

采取较小的步骤(较短的迭代,连续构建),消除依赖性。

这不是通常的,因为具有此类问题的项目不会提供,而是被取消(最终)。

编辑] Michael,在更长的时间内跟踪Nunit失败提供零值。您需要简短的反馈循环。现在解决问题。如果您等到积累了很多问题,那么您将被噪音不知所措。

良好的问题跟踪是在正确的(最高抽象)水平上完成的。绝对不是单位测试。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top