【发布时间】:2015-06-17 13:49:56
【问题描述】:
我正在使用 Microsoft.QualityTools.Testing.Fakes 来模拟一些单元测试。
但此程序集仅适用于使用 VisualStudio Ultimate 的用户。
其他版本(专业版)的用户无法构建和运行此测试项目,并且在他们的环境中出现错误。
所以我创建了一个编译器指令来处理这个:
#define Ultimate
#if Ultimate
using Microsoft.QualityTools.Testing.Fakes;
#endif
而我的测试方法是:
#if Ultimate
using (ShimsContext.Create())
{
... My code
}
#else
Assert.Inconclusive("This test needs VS Ultimate to run");
#endif
这很好用,但用户仍然需要注释/取消注释定义行。
那么,有没有办法将我的 VS 版本传递给编译器?还是有其他方法?
【问题讨论】:
标签: c# visual-studio unit-testing vs-unit-testing-framework compiler-options