C# NUnit:生成动态测试结果输出

C# NUnit:生成动态测试结果输出,c#,nunit,C#,Nunit,我有一些N单元测试用例,它们的测试非常复杂。因此,我想在测试结果XML中包括一些步骤。虽然我可以通过静态字符串部分实现这一点,但我确实需要将内容动态化 例如,假设我有一个测试用例,它接受一个文件夹,并对第三个文件做了一些事情,我希望能够输出如下内容 步骤1:读取文件夹“MyFolder” 步骤2:读取文件“Myfile.txt” 。其中MyFile.txt是一个变量 我曾想过使用每个测试用例都可以调用的单例输出流将这些内容输出到一个临时文件中,但这有点不雅观 有什么想法吗?您可以: 使用一

我有一些N单元测试用例,它们的测试非常复杂。因此,我想在测试结果XML中包括一些步骤。虽然我可以通过静态字符串部分实现这一点,但我确实需要将内容动态化

例如,假设我有一个测试用例,它接受一个文件夹,并对第三个文件做了一些事情,我希望能够输出如下内容

  • 步骤1:读取文件夹“MyFolder”

  • 步骤2:读取文件“Myfile.txt”

。其中MyFile.txt是一个变量

我曾想过使用每个测试用例都可以调用的单例输出流将这些内容输出到一个临时文件中,但这有点不雅观

有什么想法吗?

您可以:

  • 使用一些可用的.NET日志框架(NLog/log4net/etc)或
  • 使用它,您可以用自己的方式处理断言消息

似乎没有标准的方法可以做到这一点。我通过将单元测试(本质上作为单独的子进程运行)打印到stdout,然后手动解析来实现我的目标。不太干净,但它可以工作。

在我看来,虽然听起来不太道貌岸然,但它似乎是在编写集成测试,而不是单元测试。因此,您最好编写一个控制台应用程序来为您运行这些测试。我在这里猜测一下,但是你说的话确实让人觉得使用了错误的工具来完成这项工作。不幸的是,我不是这个项目的创始人,所以这个测试框架早在我开始之前就已经准备好了。因此,即使测试框架的选择是错误的,我仍然需要完成这项工作。显然,我对一些解决方案有一些想法,但我想了解可能存在的更优雅的解决方案。我对此表示同情。这些测试需要多长时间才能运行?目前时间不长。可能需要15分钟来运行200多个casesIs,是否可以提供更多关于您正在做什么的信息?请出示一些代码好吗?