【问题标题】:How to run Coded UI Tests against the Windows Azure SDK v1.4如何针对 Windows Azure SDK v1.4 运行编码的 UI 测试
【发布时间】:2011-09-21 04:52:16
【问题描述】:

我有一个 MVC3 Web 应用程序,它已经发展到我想开始自动化一些功能测试的地步。因此,我一直在尝试将编码的 UI 测试添加到我放入单元测试的同一个项目中。只是沮丧。

我已经能够记录一系列简单的步骤:登录应用程序。

我能够生成代码,并且可以在名为 UIMap.Designer.cs 的文件中看到生成的代码。实例化这个类的一个实例,并在我命名为 LoginTest.cs 的文件中调用测试方法。

当我尝试右键单击 LoginTest.cs 中的 [TestMethod] 并选择运行测试时,我最初收到以下错误:

无法加载测试容器“C:...\WebRole.Tests.dll”或其依赖项之一。错误详细信息:System.IO.FileNotFoundException:无法加载文件或程序集 'Microsoft.VisualStudio.TestTools.UITesting,Version=10.0.0.0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a' 或其依赖项之一。系统找不到指定的文件。

所以,我将以下引用从 Copy Local = false 翻转为 true:

  • Microsoft.VisualStudio.TestTools.UITesting
  • Microsoft.VisualStudio.TestTools.UITest.Extension
  • Microsoft.VisualStudio.QualityTools.CodedUITestFramework

现在,当我运行测试时,我得到以下输出:

测试开始:

总测试:1,过滤:1

没有找到测试。

持续时间:94.9989452249951

浏览器实例未启动。 Azure Compute 和 Azure Storage 模拟器均未启动。应用程序未打包和部署。简而言之,我运行应用程序时发生的任何事情似乎都没有发生。所以,我对 UI 测试如何运行感到困惑,因为 Azure 模拟器环境没有运行。

为了解决这个问题,我尝试打开两个 VS2010 实例。首先,我像往常一样运行应用程序以运行 Azure 模拟器并部署应用程序。第二,我运行 CodedUITest 方法。结果相同。

现在,我被困住了。是否有其他人能够针对 Azure SDK v1.4 提供的 Azure 模拟器运行 Coded UI 测试?

【问题讨论】:

    标签: azure coded-ui-tests


    【解决方案1】:

    这对于 OP 来说可能为时已晚,但可能会帮助遇到类似问题的其他人(几个小时前是我)。

    警告:我是 CodedUI 的新手,所以这可能不是 正确的 方法。但至少它让我开始了。

    我遇到了类似的情况:Azure 1.4,ASP.NET MVC(在我的例子中是 2 个)Web 应用程序。我想开始一套 UI 测试,我可以在我的桌面开发环境 (VS2010 Premium) 中运行。

    以下是让我开始的步骤: 1. 记录一点 CodedUI 测试——这样您就可以看到正在运行的东西来证明您能够做到这一点。 (我遵循了前几步:http://msdn.microsoft.com/en-us/library/dd286608.aspx)。

    在开始录制之前打开浏览器并记录启动 Web 应用所需的所有操作。

    1. 在测试中添加初始化代码以启动浏览器: 在您的 Coded UI 测试类中,添加一个具有 [TestInitialize] 属性的方法:
        [TestInitialize]
        public void LaunchBroswer()
        {
            BrowserWindow browser = BrowserWindow.Launch(new System.Uri("https://127.0.0.2/Logon"));
        }
    

    当然,您的 URI 可能会有所不同。这是我不得不从其他一些帖子中推断出的一点魔力。在折叠的代码区域中使用 TestInitialize 并没有帮助。

    1. 要运行测试,请启动 Azure 模拟器:Ctrl+F5(这将在浏览器中启动 Web 应用程序,但不运行测试。

    2. 您现在可以从启动模拟器的同一个 VS 实例运行测试。

    【讨论】:

      【解决方案2】:

      您遇到的痛苦不仅与 Azure 有关,而且与整个 IMHO 的编码 UI 测试有关。对于 MVC(和 asp.net),有几个工具可以减轻痛苦(而且您不需要编码的 ui 套件)。

      您尝试过SpecFlowWatiN 吗?甚至还有一个您可以从 Nuget 使用的包,它是作为 MVCContrib 库的一部分构建的。

      希望它能帮助您测试 UI。

      查看频道 9 以获取一些说明,例如:this video

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-12-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-09-03
        • 1970-01-01
        相关资源
        最近更新 更多