Visual Studio Ms测试运行器无法找到程序集

时间:2017-04-22 13:54:32

标签: c# .net visual-studio unit-testing mstest

我在Visual Studio中的所有测试都失败了。它们由VS Ms test runner执行。

问题在于,即使项目中引用了dll,并且copy local也为它们设置为True,它们也不会被复制到Ms test runner debug文件夹中。

我正在使用部署设置为true的测试设置文件。

当我运行测试时,Ms test runner会创建一个TestResults文件夹,并将Debug文件夹的内容复制到TestResults / out文件夹中。然而,并非所有的dll都被复制了。就像MS测试运行器只复制选择性dll而不是第三方库一样。

然后测试失败,无法找到所需的组合。当我使用nunit或运行测试作为控制台应用程序时,它们可以工作。 同样在测试设置文件中,我还通过将Deployment设置为false和Assembly location文件夹到我的根目录进行测试,它们似乎都有效。

我也尝试在我的测试类上使用Deploymentitem(bin / debug),但这不起作用。

我的问题是: 我如何确保当我通过Ms test runner运行测试时,调试文件夹中的所有dll都会被复制到Testresults文件夹中?任何指导将不胜感激。

有没有办法强制ms测试运行器使用dll?

1 个答案:

答案 0 :(得分:0)

我遇到了与Entity Framework类似的情况。此链接应该有所帮助: EntityFramework.SqlServer (or other providers) not being copied locally