Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Unit testing 如何将自动测试EXE重新打包为MSTest中的一系列单元测试?_Unit Testing_Mstest - Fatal编程技术网

Unit testing 如何将自动测试EXE重新打包为MSTest中的一系列单元测试?

Unit testing 如何将自动测试EXE重新打包为MSTest中的一系列单元测试?,unit-testing,mstest,Unit Testing,Mstest,我有一个自动测试应用程序,它作为控制台应用程序EXE运行。它在特定文件夹中查找包含测试数据的文件,并对每个文件运行测试,将结果写入控制台。因此,实际运行的测试数量取决于文件夹中的文件数量 我更喜欢在MSTest中将每个测试作为单元测试运行,这样我就可以通过标准的MSTest机制获得显示结果的好处。然而,虽然我可以看到如何创建一个基本上与我的控制台应用程序的主要方法相同的单个单元测试,但我看不到如何使每个测试用例和每个文件显示为一个单独的测试 这可以做到吗?我通过使用数据源属性并指定CSV数据源的

我有一个自动测试应用程序,它作为控制台应用程序EXE运行。它在特定文件夹中查找包含测试数据的文件,并对每个文件运行测试,将结果写入控制台。因此,实际运行的测试数量取决于文件夹中的文件数量

我更喜欢在MSTest中将每个测试作为单元测试运行,这样我就可以通过标准的MSTest机制获得显示结果的好处。然而,虽然我可以看到如何创建一个基本上与我的控制台应用程序的主要方法相同的单个单元测试,但我看不到如何使每个测试用例和每个文件显示为一个单独的测试


这可以做到吗?

我通过使用数据源属性并指定CSV数据源的数据驱动测试来实现这一点。我创建了CSV数据源作为构建后的一个步骤,以便它包含我需要的动态数据。哎呀

然而,我随后完全放弃了MSTest,使用了Xunit。这非常好,因为它不仅支持参数化测试和通过文件或数据库提供测试数据的测试,还支持扩展测试,这些测试的测试数据由类属性提供,这非常适合我的需要

关键的是,还有一个用于VS和MSBuild等的Xunit测试运行程序,因此它可以与标准测试框架一起使用