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/mongodb/13.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 一次运行一个测试(顺序不重要)_Unit Testing_Xunit - Fatal编程技术网

Unit testing 一次运行一个测试(顺序不重要)

Unit testing 一次运行一个测试(顺序不重要),unit-testing,xunit,Unit Testing,Xunit,如何使xunit测试运行程序针对特定类一次运行一个测试 顺序并不重要(所有测试都会更改当前区域性)我认为唯一简单的解决方案是使用tearDown方法重置区域性 当前的文化是一个全局变量,全局变量始终是单元测试的一个问题。因此,您需要重新启动VM,以便将其重置为每个测试的默认值。虽然它不是必需的,因为它是线程本地的,并且如果您可以强制测试框架为每个单元测试跨一个新线程,那么它也可以工作。但这都是黑魔法,它使单元测试变得更重 作为替代方案,您可以重构代码以注入当前的区域性持有者。在这种情况下,您可以

如何使xunit测试运行程序针对特定类一次运行一个测试


顺序并不重要(所有测试都会更改当前区域性)

我认为唯一简单的解决方案是使用
tearDown
方法重置区域性

当前的文化是一个全局变量,全局变量始终是单元测试的一个问题。因此,您需要重新启动VM,以便将其重置为每个测试的默认值。虽然它不是必需的,因为它是线程本地的,并且如果您可以强制测试框架为每个单元测试跨一个新线程,那么它也可以工作。但这都是黑魔法,它使单元测试变得更重

作为替代方案,您可以重构代码以注入当前的区域性持有者。在这种情况下,您可以在单元测试中模拟区域性保持器,并传递一个简单的实现来在全局变量中保持区域性