【问题标题】:Watin in TFS 2008?在 TFS 2008 中使用 Watin?
【发布时间】: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 超时错误 - 我想我应该就此发表一个单独的问题。

标签: .net testing tfs watin


【解决方案1】:

WatiN 根本不依赖 'Microsoft.VisualStudio.QualityTools.Tips.WebLoadTest.Tip..

您需要做的就是创建一个测试项目,然后向它添加一个单元测试,对 watin.core.dll、mshtml.dll 和 SHDocVw.dll 的引用我认为在某些时候您已经添加了一个VS Web 测试解决方案,它现在具有对这些程序集的引用。

尝试使用新的空测试解决方案,看看效果如何。

【讨论】:

    【解决方案2】:

    众所周知,在构建服务器上获取正确的程序集和其他一切以进行 Team System 内容的自动构建非常困难。受支持的方法是在构建服务器上安装您需要的东西的副本,并获得运行它们的许可,前提是为源代码贡献这些东西的人拥有相关团队版本的许可(例如,如果您正在运行 Web 测试,那么您需要拥有测试 SKU 许可证)。

    我对 Watin 了解不多,但从您的错误来看,您似乎正在使用 WebLoadTest 功能,它是测试 SKU 的一部分,因此您需要获得许可。

    您可以在构建服务器上安装开发者版和测试版,如果您拥有适当的许可证,它将组成开发+测试组合。或者,如果您有许可证,您可以安装套件。

    如果您的组织中没有套件许可证,我会犹豫是否安装 Team Suite 试用版,因为这意味着您可能会解决问题并且您会启动并运行,只是在 90 天内发现时间(当您的试用期到期时)您需要完整套件的许可副本才能继续运行您在过去 90 天内编写的所有测试...

    【讨论】:

    • 谢谢! > “如果您的组织中没有套件许可证,我会犹豫是否安装 Team Suite 试用版,因为这意味着您可能会解决问题”同意,我们只是在评估它,看看这是否是问题的原因.
    • 给您的问题:在运行 WatiN 测试之前,您如何部署网站?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-04
    • 2015-11-26
    • 2012-04-18
    相关资源
    最近更新 更多