.C#单元测试环境,具有完整的运行转储以进行重放

时间:2014-10-24 07:40:38

标签: c# unit-testing dump

是否有工具可以让我记录完整的环境设置,包括运行单元测试时的所有局部变量值?

我的问题是我有几个不确定的单元测试,在这种意义上,在启动时,一些变量被赋予随机值。 我注意到的是,95%的情况下特定的测试是正确的,但是那些难以捕获的5%的测试失败了。

如果有一个工具/测试环境可以重放特定的测试方法,以防它失败,那将是一件好事。当然,必须跳过分配随机值并用记录值替换。

也许实现起来太难了。所以我的第二个问题是有一个很好的测试框架,具有良好的日志功能(在异常情况下,堆栈跟踪记录,断言失败等),这将允许我分析所述方案中的错误。或者也许我现在使用的工具,有这些功能,但我不知道它们。

我现在使用哪些工具: Visual Studio 2012高级版CU4 + NUnit 2.6.3 + NUnit测试适配器1.2 + TestDriven.NET-3.8.2860

1 个答案:

答案 0 :(得分:0)

在这种情况下,我倾向于在我的测试中将种子值传递给我的Random对象。这将确保您每次在测试中生成相同的“随机”数据,从而使它们具有随机性和确定性。

所以,无论你说什么

Random random = new Random();

将其更改为

Random random = new Random(0);