平台: win7 64位、vs2010、mvc v2、TestDriven.Net 3.0、Reshaper 5.0、MSpec 0.3
我最近开始了一个新项目,并希望使用mspec。
(1)将Machine.Specifications.ReSharperRunner.5.0.dll和Machine.Specifications.dll复制到JetBrains\ReSharper\5.0\Bin\Plugins\Machine.Specifications (2)将Machine.Specifications.TDNetRunner.dll复制到TestDriven.NET 3\Machine.Specifications
当我尝试运行测试时,我得到这个错误: System.IO.FileNotFoundException:无法加载文件或程序集的Machine.Specifications
我不知道这个错误是从哪里来的。
vs2010菜单-> ReSharper ->Plugins显示了MSpec插件。vs2010菜单->ReSharper -> Options -> Tools -> Unit Testing也会显示MSpec单元测试提供程序,但是当我单击它时,它不会像MSTest和nUnit那样显示任何详细信息。
我发现了这个:http://marcinobel.com/index.php/mspec-bdd-installer/,它不能工作。我还尝试了这个:http://eduncan911.com/blog/registering-mspec-runners-for-testdriven-net-on-windows-x64.aspx,它也不起作用。现在我担心我搞砸了我的注册。
有什么建议吗?
完全错误:
测试'F:Tests.OTBRadio.Tasks.AlbumTasksSpecs.when_the_album_tasks_are_asked_to_get_all.context‘失败:无法加载文件或程序集'Machine.Specifications,Version=0.3.0.0,Culture=neutral,PublicKeyToken=null’或其依赖项之一。系统找不到指定的文件。System.IO.FileNotFoundException:未能加载文件或程序集'Machine.Specifications,Version=0.3.0.0,Culture=neutral,PublicKeyToken=null‘或其依赖项之一。系统找不到指定的文件。文件名:'Machine.Specifications,Version=0.3.0.0,Culture=neutral,PublicKeyToken=null‘(位于Machine.Specifications.TDNetRunner.SpecificationRunner.RunMember(ITestListener的程序集,程序集,MemberInfo成员)位于TestDriven.TestRunner.ThreadTestRunner.Runner.Run()的testListener,ITraceListener traceListener,String assemblyPath,String testPath
发布于 2010-05-07 02:33:20
您不需要将Machine.Specifications.TDNetRunner.dll复制到任何地方,只需将其放在项目的tools或lib目录中,即保存项目依赖项的位置。包含MSpec测试的项目将引用此目录中的Machine.Specifications.dll。只要TD.Net位于同一目录中,TestDriven.Net >=2.24就能够获取Machine.Specifications.dll.tdnet runner。我喜欢如何组织我的tools目录的一个例子可以在here找到。
我觉得你的ReSharper 5.0插件目录很不错。但是,我有用户报告说,当您使用资源管理器解压Windows文件(可能是从http://teamcity.codebetter.com下载的)时,MSpec会将提取的DLL标记为从互联网下载的。
您能否确保Windows不会阻止<ReSharper 5.0>\bin\plugins中的动态链接库,打开每个动态链接库的属性并在第一个属性页上单击“取消阻止”。如果“解锁”按钮没有显示,您的文件是正常的。在这种情况下,请张贴在这里,我们将看到我们如何才能使您的MSpec插件工作。
发布于 2010-05-18 21:57:23
在更改了任何dll之后,你应该清理项目-这样你就不会在新的项目中有任何错误。
发布于 2010-12-02 16:37:53
我也遇到了同样的问题,我通过在Github (https://github.com/machine/machine.specifications)上克隆一个MSpec的副本来修复它。
然后在“源”文件夹中,我运行了一个批处理文件(在我的例子中是build-4.0-debug.cmd),它在“xxx\源\构建\调试”中创建了"Machine.Specifications.dll“。
我删除了对“旧的”dll的引用,清理了我的项目,用我在上一步中获得的新dll复制了旧的dll,然后重新构建,这就完成了。
https://stackoverflow.com/questions/2782457
复制相似问题