最佳答案
我有一个单元测试(nUnit)。如果方法是通过单元测试运行的,那么调用堆栈下面的许多层都会失败。
理想情况下,你可以使用类似 Mocking 的东西来设置这个方法所依赖的对象,但是这是第三方代码,我不能不做很多工作。
我不想设置 nUnit 特定的方法-这里有太多的级别,这是一个糟糕的单元测试方法。
相反,我想要做的是在调用堆栈的深处添加类似这样的内容
#IF DEBUG // Unit tests only included in debug build
if (IsRunningInUnitTest)
{
// Do some setup to avoid error
}
#endif
那么,对于如何编写 IsRunningInUnitTest 有什么想法吗?
附注: 我完全知道这不是一个伟大的设计,但我 好好想想它比其他选择更好。