"Cannot verify on real object - use a fake object instead" 异常
"Cannot verify on real object - use a fake object instead" exception
我使用的是 Typemock Isolator 8.6.2.0 版。
我有以下 类:
public class A
{
public B b { get; }
public A()
{
b = new B();
}
}
public class B
{
public B()
{
Console.WriteLine("In B c'tor");
}
public void doSomething()
{
}
}
测试方法为:
public void test()
{
Isolate.Fake.NextInstance<B>();
A a = new A();
var bObject = a.b;
bObject.doSomething();
Isolate.Verify.WasCalledWithAnyArguments(() => bObject.doSomething());
}
当我 运行 测试时,我得到以下异常:"Cannot verify on real object - use a fake object instead",但是对象 是 伪造的!
有谁知道它为什么会发生以及我该如何解决?
NextInstance returns 可以调用 Verify 的句柄。现在,您将返回的句柄扔掉。
上的文档
Verifying is done on the instance returned from Isolate.Fake.NextInstance.
像这样写你的测试:
`
public void test()
{
var fake = Isolate.Fake.NextInstance<B>();
A a = new A();
var bObject = a.b;
bObject.doSomething();
Isolate.Verify.WasCalledWithAnyArguments(() => fake.doSomething());
}
`
我使用的是 Typemock Isolator 8.6.2.0 版。 我有以下 类:
public class A
{
public B b { get; }
public A()
{
b = new B();
}
}
public class B
{
public B()
{
Console.WriteLine("In B c'tor");
}
public void doSomething()
{
}
}
测试方法为:
public void test()
{
Isolate.Fake.NextInstance<B>();
A a = new A();
var bObject = a.b;
bObject.doSomething();
Isolate.Verify.WasCalledWithAnyArguments(() => bObject.doSomething());
}
当我 运行 测试时,我得到以下异常:"Cannot verify on real object - use a fake object instead",但是对象 是 伪造的! 有谁知道它为什么会发生以及我该如何解决?
NextInstance returns 可以调用 Verify 的句柄。现在,您将返回的句柄扔掉。
上的文档Verifying is done on the instance returned from Isolate.Fake.NextInstance.
像这样写你的测试: `
public void test()
{
var fake = Isolate.Fake.NextInstance<B>();
A a = new A();
var bObject = a.b;
bObject.doSomething();
Isolate.Verify.WasCalledWithAnyArguments(() => fake.doSomething());
}
`