【问题标题】:Running automated Selenium web driver UI tests using JAVA in Azure Devops CI/CD pipelines在 Azure Devops CI/CD 管道中使用 JAVA 运行自动化 Selenium Web 驱动程序 UI 测试
【发布时间】:2020-05-12 16:33:36
【问题描述】:

我有一个 JAVA spring boot 应用程序。我在同一个项目中使用 Selenium Web Driver 进行了 JUnit 单元测试和功能测试。 我想在 Azure DevOps 管道中自动化这些测试。

到目前为止,我所做的是: 在构建管道中设置一个 Maven 任务来自动化单元测试。

问题说明:如何在发布管道中设置 Selenium UI 测试。

Microsoft 文档讨论了 VsTest 任务。但是 Java 项目不支持此任务。 我错过了什么?

【问题讨论】:

    标签: java spring-boot maven selenium-webdriver azure-devops


    【解决方案1】:

    问题陈述:如何在 Release 中设置 Selenium UI 测试 管道。

    您仍然可以使用 Maven 任务在发布管道中运行 Selenium UI 测试。没有可用于直接实现您想要的任务的任务。但作为一种解决方法,您可以考虑在构建中使用 Copy taskPublish Build Artifacts 任务,然后使用第二个 Maven 任务来运行这些 Selenium UI 测试。

    您可能会从similar issue 获得有用的信息。

    【讨论】:

      【解决方案2】:

      在 Azure DevOps Pipeline 中,您只需要 Maven 任务。确保在 pom.xml 中添加了所有依赖项和插件。

      对于特定的测试类编辑 Maven 任务中的目标:

      package -Dtest=NAMEOFYOURTESTCLASS test -f pom.xml
      

      在创建管道之前,您可以在工作室中对其进行测试。在 IntelliJ IDEA 中,您可以创建一个运行配置并将上述相同的命令粘贴到命令行部分。

      另外,这个Article 很好地解释了如何正确设置 Maven 项目。

      【讨论】:

        【解决方案3】:

        在发布管道中,您可以使用bash script 任务通过headless chrome 执行 selenium UI 自动化测试。

        1) 首先,在 build 或 release agent 中安装 chrome 浏览器和 Web 驱动程序。您可以使用 Microsoft 托管代理或自托管代理。您的所有管道都需要至少一名代理来完成这项工作。

        2) 从源代码管理中克隆功能测试存储库。

        3) 运行 MVN 测试命令

        确保您在构建代理上安装了相同版本的 chrome web 驱动程序和 chrome web 浏览器。

        在无头模式下运行功能测试需要以下属性。

        ChromeOptions options = new ChromeOptions();
        options.addArguments("headless");
        

        并添加网络驱动的路径,

        System.setProperty("webdriver.chrome.driver", "/usr/bin/chromedriver");
        

        您可以在此处遵循 Azure 管道bash task 的示例脚本

        apt-get update
        wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
        sudo dpkg -i google-chrome-stable_current_amd64.deb; apt-get -fy install
        wget https://chromedriver.storage.googleapis.com/84.0.4147.30/chromedriver_linux64.zip
        unzip chromedriver_linux64.zip
        sudo mv chromedriver /usr/bin/chromedriver
        sudo chmod +x /usr/bin/chromedriver
        git clone https://repo_url/functionalTests
        cd functionalTests
        mvn test
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2021-03-08
          • 2020-01-08
          • 2019-12-15
          • 2019-10-04
          • 2020-09-22
          • 2019-08-29
          相关资源
          最近更新 更多