gpt4 book ai didi

c# - 如何使用 `using` 语句对方法进行单元测试?

转载 作者:行者123 更新时间:2023-12-03 13:43:29 25 4
gpt4 key购买 nike

如何为具有 using 语句的方法编写单元测试?

例如假设我有一个方法 Foo .

public bool Foo()
{
using (IMyDisposableClass client = new MyDisposableClass())
{
return client.SomeOtherMethod();
}
}

我怎样才能测试类似上面的代码?

有时我选择不使用 using声明和 Dispose()手动一个对象。我希望有人能告诉我一个我可以使用的技巧。

最佳答案

如果您构建 IMyDisposableClass使用工厂(注入(inject)父类)而不是使用 new 关键字,您可以模拟 IMyDisposable并对 dispose 方法调用进行验证。

public bool Foo()
{
using (IMyDisposableClass client = _myDisposableClassFactory.Create())
{
return client.SomeOtherMethod();
}
}

关于c# - 如何使用 `using` 语句对方法进行单元测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1953644/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com