【发布时间】:2010-10-03 23:22:44
【问题描述】:
我正在尝试让我的 WATIN 测试作为夜间构建的一部分在 TFS2008(持续集成)中工作。
所有测试在我的本地机器(来自 VS2008)上运行良好,我的单元测试(非 watin)在本地以及 TFS 中运行良好。
说明我们在做什么 我有一个简单的测试:
[TestMethod]
public void Watin()
{
//set up stuff
browser.GoTo("http://localhost/");
}
在 TFS 中运行测试时,会导致以下错误:
TestTypes\37e36796-fb51-4610-8d5c-e00ceaa68b9f 无法加载,因为 TIP 无法为 以下原因: System.IO.FileNotFoundException:可能 不加载文件或程序集 'Microsoft.VisualStudio.QualityTools.Tips.WebLoadTest.Tip, 版本=9.0.0.0,文化=中性, PublicKeyToken=b03f5f7f11d50a3a' 或 它的依赖项之一。系统 找不到指定的文件。文件 姓名: 'Microsoft.VisualStudio.QualityTools.Tips.WebLoadTest.Tip, 版本=9.0.0.0,文化=中性, PublicKeyToken=b03f5f7f11d50a3a' 在 System.RuntimeTypeHandle._GetTypeByName(字符串 名称,布尔值 throwOnError,布尔值 ignoreCase,布尔反射仅, StackCrawlMark 和 stackMark,布尔值 loadTypeFromPartialName)
在网上搜索类似问题时,我被引导相信这是我们正在使用的 TFS 版本的问题 - 但我不确定。我们使用的是 TFS 2008 开发者版/VS2008 开发者版
我们尝试下载 TFS 套件 试用版,其中包含有问题的 DLL。我们已将 WebLoadTest.Tip 文件复制到 TFS 服务器的全局程序集缓存中(只是想看看这是否能解决问题)。这确实导致错误消失,但不幸的是它产生了一个新错误:
MSBUILD : 警告 MSB6006: "MSTest.exe" 以代码 1 退出。
升级到套件版是解决此问题的唯一方法吗?这似乎有点严格。
感谢任何帮助!
编辑: 我不明白的是,它似乎需要 TFS 的 WebLoadTest 功能,即使我们没有明确调用它。相反,我们使用的是第三方框架 Watin。 我认为 Watin 也没有任何 webloadtest 依赖项。
【问题讨论】:
-
您是否尝试过从命令行运行 msbuild 并查看它吐出的错误(如果有)?我遇到了一个问题,mstest 或 msbuild 返回相同的代码,但直到我从命令行运行我才看到实际错误。
-
我也在努力让 WatiN 测试在 TFS 下运行。我没有遇到这个问题,但我确实必须在 VSTestHost 可以找到它的服务器上安装 WatiN.core.dll。现在我在加载 IE 时遇到了 WatiN 超时错误 - 我想我应该就此发表一个单独的问题。