为什么硒会产生这个错误?
我使用 selenium 2.0.3 (来自 nuget 包)进行一些浏览器测试。这些在我的本地机器上都运行良好。
在我们的 TFS 构建机器上,运行 selenium 测试时出现以下错误。
System.IO.FileLoadException : Could not load file or assembly 'Newtonsoft.Json, Version=3.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
TearDown : System.NullReferenceException : Object reference not set to an instance of an object.
我如何确保该程序集已加载。项目中没有引用它,但 selenium 需要它。
更新
我不知道我做了什么,但它现在有效......这是一个谜。抱歉,我无法发布解决方案,我不知道它是什么。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您需要在构建服务器上安装 selenium 2.0.3 及其所有依赖项。
谢谢拉德
万先生
You need to install selenium 2.0.3 and all its dependencies on the build server.
Thanks
M.Radwan
请参阅我关于管理构建时依赖项的回答:
使用 TFS 2010 进行依赖项管理
您可以使用 NuGet 命令行工具将依赖项更新为通过对 *.*proj 文件进行简单修改来完成构建过程的一部分。
See my answer on managing build-time dependencies here:
Dependency management with TFS 2010
You can use the NuGet command line tool to update your dependencies as part of your build process using a simple modification to your *.*proj file.
现在(从版本 2.2.0 开始)Selenium 团队提供了一个官方 NuGet 包,可以在 项目网站上的 .zip 文件分发版,则需要引用 JSON.NET 4.0r2 中的 Newtonsoft.Json.Net35.dll 和 DotNetZip 1.9 中的 Ionic.Zip.Reduced.dll。
There is now (as of version 2.2.0) an official NuGet package from the Selenium team, which can be found at this link. It should contain the correct dependencies. Should you decide to use the .zip file distribution at the project site, you'll need references to Newtonsoft.Json.Net35.dll from JSON.NET 4.0r2, and Ionic.Zip.Reduced.dll from DotNetZip 1.9.