0

我有一个本地 nuget 包,其中包含一个测试。测试用[TestClass]修饰,它的测试方法是[TestMethod]。

这是一个 nuget 包的原因是因为此测试将被引入任何测试项目,以测试在引用的程序集中是否发生了 t4 转换。t4 模板动态生成类,我希望运行测试以验证 t4 模板是否已执行(使用反射确保生成的类具有预期的方法)

当我引用 nuget 包时,Visual Studio 测试资源管理器从不显示测试。我的印象是 VS 反映了程序集中的类型以构建它的测试列表,但这似乎是一个不正确的假设。

为了发现测试,是否有配置设置或我缺少的东西?

谢谢你,杰森

4

1 回答 1

1

Visual Studio 测试资源管理器只能从解决方案中的多个测试项目和作为生产代码项目一部分的测试类运行测试。

您的方案有两种解决方法:

  1. 从命令行运行测试

  2. 不是将生成的dll文件放在nuget包中,而是将测试类文件放在nuget包的“content”文件夹中。这将在安装 nuget 包时将测试类文件添加到您的项目中,然后测试资源管理器将在构建解决方案后检测测试。

于 2016-10-11T03:06:53.590 回答