我刚刚将xUnit添加到我们的测试项目中(对于Asserts,我们仍然使用MSTest作为框架)并且测试运行立即拒绝执行任何测试。这是错误消息:
无法对测试运行'{....}进行排队 测试运行部署问题: 文件或目录的位置 '... xUnit.dll'不受信任。
答案 0 :(得分:98)
我花了几次尝试在谷歌找到答案,所以我把它放在这里以防万一其他人遇到同样的问题。详细说明可在this blog posting找到。
基本上,修复程序会在Windows资源管理器中右键单击dll文件(例如xunit.dll),转到“属性”,然后单击“安全”文本旁边选项卡底部的“取消阻止”。似乎Vista / Windows 2008会自动将来自其他机器或互联网的程序集标记为不安全。
正如一些评论者提到的那样,您可能还需要重新启动Visual Studio才能生效。
答案 1 :(得分:17)
在我的团队中,我们遇到了同样的问题。
您的解决方案不起作用,但this post by Charles Sterling确实有所帮助。
我们使用以下行:
caspol -machine -addgroup 1 -url file://\\server/share/* FullTrust -name DevShare
答案 2 :(得分:10)
在遇到这个问题并且燃烧时间试图让“解锁”持续时间超过几分钟和/或搞清楚 caspol 无济于事之后,我终于通过谷歌发现了一点点花絮下次构建或重建项目时,程序集将再次被阻止,因为它们是从原始源位置重新复制的。 (我想我从来没有注意到这发生在引用程序集之前,但无论如何......)
我对此的解决方法如下:
将所有需要的DLL复制到另一个DLL 保管现场
删除 Visual Studio中的引用
以物理方式删除中的DLL bin文件夹
取消阻止DLL 单独在他们的地方 被复制了
添加引用 回到Visual Studio中 持有现货
之后的每个后续构建或重建都运行良好。
答案 3 :(得分:8)
在XP机器上运行(即使安装了.NET 3.5 SP1)我也无法获得此处列出的任何其他解决方案。
然而,在Davy Landman引用的post by Charles Sterling工作时,我终于成功了这个变化:
完成这些步骤后,我可以运行测试,包括重启和重建后。
编辑:如this answer中所述,您可能需要安装.NET SDK(与.NET框架不同)才能在您的系统上安装.NET 2.0配置工具。
答案 4 :(得分:4)
我遇到了与moq相同的问题。但不会“解锁”。每次我解锁它,它仍然被阻止!?!?
我必须取消阻止我下载的原始zip文件。然后再次从zip文件中复制DLL。它之后工作。
答案 5 :(得分:3)
现在看起来很明显,但是当我点击取消阻止时,文件被设置为只读。
只有在取消检查该属性后,才应用,然后选择取消阻止,我实际上是否正常工作。
放手一搏。
:)
PS:我还删除了bin文件夹中的所有旧dll,只是为了确保Visual Studio没有拿到旧的。
答案 6 :(得分:1)
我遇到了与Vista阻止的已下载DLL相同的问题。 您需要管理员权限才能获取文件属性上的“取消阻止”按钮。 我简单地用源代码控制(TFS)中的最新版本替换了DLL,之前我已经提交了它们。
答案 7 :(得分:1)
file
Properties
Allow
答案 8 :(得分:0)
我也尝试在notepad ++中打开文件并重命名。 略有不同的方法,但它对我有用。然后本地文件系统认为它来自同一台机器。
答案 9 :(得分:0)
这不仅仅是需要解除阻止的moq.dll。最新的zip文件包含moq.xml和moq.pdb文件 - 引用dll也会将这两个其他文件复制到bin文件夹中。如果所有这三个都没有被解锁,测试将无法运行,我找到了。