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
C#单元测试:如何设置惰性<;T>;。值被创建为false?_C#_Unit Testing_Singleton_Lazy Evaluation - Fatal编程技术网

C#单元测试:如何设置惰性<;T>;。值被创建为false?

C#单元测试:如何设置惰性<;T>;。值被创建为false?,c#,unit-testing,singleton,lazy-evaluation,C#,Unit Testing,Singleton,Lazy Evaluation,基本上,我有一个单元测试,它获取一个类的单例实例。我的一些测试要求我模拟这个单例,所以当我执行Foo.Instance时,我会得到一个不同类型的实例 问题是,我的检查个别通过,但总体失败,因为一个测试干扰了另一个测试 我尝试在设置:Foo\u访问器的地方进行测试清理但这不起作用。我真正需要的是Foo\u访问器。\u instance.IsValueCreated=false(\u实例是一个惰性实例) 有没有办法取消设置我没有想到的惰性对象?为什么不这样做:Foo\u Accessor.\u in

基本上,我有一个单元测试,它获取一个类的单例实例。我的一些测试要求我模拟这个单例,所以当我执行Foo.Instance时,我会得到一个不同类型的实例

问题是,我的检查个别通过,但总体失败,因为一个测试干扰了另一个测试

我尝试在设置:
Foo\u访问器的地方进行测试清理但这不起作用。我真正需要的是
Foo\u访问器。\u instance.IsValueCreated=false(\u实例是一个惰性实例)


有没有办法取消设置我没有想到的惰性对象?

为什么不这样做:
Foo\u Accessor.\u instance=new Lazy(某物)


确保“Something”与您的Foo类所做的完全相同。

为什么不这样做:
Foo\u访问器。\u instance=new Lazy(Something)


确保“Something”与您的Foo类所做的完全相同。

是的,在每个测试设置阶段中放置类似的内容。好的,无论是在设置阶段还是在清理阶段。无论哪种方式,你基本上都是在将你的惰性实例设置回惰性状态。是的,在每个测试设置阶段都要这样做。好的,无论是在设置阶段还是在清理阶段。无论哪种方式,你基本上都是在将你的懒惰实例设置回懒惰状态。你能发布一些代码让我们看看为什么Foo\u Accessor.\u instance=null不起作用吗?你能发布一些代码让我们看看为什么Foo\u Accessor.\u instance=null不起作用吗?