WebUI 自动化配置

2021-03-01 02:26

阅读:708

标签:maven   查找   webdriver   enter   property   command   resources   comm   repo   

目录
  • 前言
  • 一、Selenium + TestNG 配置
  • 二、Allure 报告
  • 三、ChromeDriver 相关(待归纳)

前言

由于项目情况以及时间问题,本篇暂时仅用于记录当时web项目自动化配置相关信息(历史篇:在草稿箱存了老久了??)

一、Selenium + TestNG 配置

Java 工程的 pom 文件配置信息

4.0.0auto-tests
auto-test-punish
1.0-SNAPSHOT1.81.8UTF-8UTF-8UTF-8
      1.8.10
      yyyyMMddHHmmssorg.seleniumhq.selenium
            selenium-java
            3.141.59org.testng
            testng
            6.14.3io.qameta.allure
            allure-testng
            2.13.0com.alibaba
            fastjson
            1.2.62org.slf4j
            slf4j-log4j12
            1.7.2commons-io
            commons-io
            2.6src/main/resourcestruelog4j.propertiesorg.apache.maven.plugins
                  maven-compiler-plugin
                  3.11.81.8UTF8org.apache.maven.plugins
                  maven-surefire-plugin
                  2.22.1truetestng.xml
                              -Dfile.encoding=UTF-8
                              
                              -javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar"
                        

                        
                              ${project.build.directory}/allure-results/${maven.build.timestamp}
                        org.aspectj
                              aspectjweaver
                              ${aspectj.version}org.apache.maven.plugins
                  maven-assembly-plugin
                  2.5.5com.zzw.PunishCenterTestjar-with-dependenciesmake-assemblypackagesingle

二、Allure 报告

  • 简介

官网 http://allure.qatools.ru/
文档  https://docs.qameta.io/allure/
下载  https://github.com/allure-framework/allure2/releases
下载后配置环境变量,即可使用 allure 命令

  • 配置
    pom 文件 allure-testng 配置, 参考文档 https://docs.qameta.io/allure/#_testng
 
      1.8.10 
       
      yyyyMMddHHmmssio.qameta.allure 
      allure-testng 
      2.13.0org.apache.maven.plugins 
            maven-surefire-plugin 
            2.20 
                   -javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar" 
                  
                        ${project.build.directory}/allure-results/${maven.build.timestamp}
                  org.aspectj 
                  aspectjweaver 
                  ${aspectj.version}
  • 使用
    命令行帮助文档

格式:   allure [options] [command] [command options]

Options: 
      --help 打印命令行帮助信息 
      -q, --quiet 打开静音模式,默认为 false 
      -v, --verbose 打开详细模式,默认为 false 
      --version 打印 allure 版本号 
Commands: 
      generate 生成报告命令 
      Usage: generate [options] 生成的 allure 结果目录 
      Options: 
            -c, --clean 在生成新的 Allure 报告目录之前,清除该目录. 默认不清除 
            --config Allure 命令行配置路径. 如果通过--profile and --configDirectory 覆盖指定值 
            --configDirectory Allure命令行配置目录。默认使用ALLURE_HOME 目录. 
            --profile Allure 命令行配置文件 
            -o, --report-dir, --output 生成 Allure 报告的目录. 默认为 allure-report 

      serve 报告服务命令 
      Usage: serve [options] The directories with allure results 
      Options: 
            --config Allure 命令行配置路径. 如果通过--profile and --configDirectory 覆盖指定值 
            --configDirectory Allure命令行配置目录。默认使用ALLURE_HOME 目录. 
            -h, --host 指定用于启动报告 web 服务的主机 
            -p, --port 指定用于启动报告 web 服务的端口,默认为 0 
            --profile Allure 命令行配置文件 

      open 打开生成的报告 
      Usage: open [options] 报告目录 
      Options: 
           -h, --host 指定用于启动报告 web 服务的主机 
           -p, --port T指定用于启动报告 web 服务的端口,默认为 0 

      plugin 生成报告 
      Usage: plugin [options] 
      Options: 
            --config Allure 命令行配置路径. 如果通过--profile and --configDirectory 覆盖指定值 
            --configDirectory Allure命令行配置目录。默认使用ALLURE_HOME 目录. 
            --profile Allure 命令行配置文件
  • 实例
    手动生成测试报告,-c 清除 -o 指定输出报告目录
    allure generate -c -o

三、ChromeDriver 相关(待归纳)

  • chromedriver 下载
    https://npm.taobao.org/mirrors/chromedriver/
    http://chromedriver.storage.googleapis.com/index.html
ChromeOptions options = new ChromeOptions();
// Chrome 75 版本以下 
// options.addArguments("disable-infobars");
// Chrome 75 版本以上, 去除自动化控制 
options.setExperimentalOption("useAutomationExtension", false); 
options.setExperimentalOption("excludeSwitches", Collections.singletonList("enable-automation")); 
// 去除密码保存提示
Map prefs = new HashMap();
prefs.put("credentials_enable_service", false);
prefs.put("profile.password_manager_enabled", false);
options.setExperimentalOption("prefs", prefs);
// 直接最大化
options.addArguments("start-maximized");
// 去除 [SEVERE]: Timed out receiving message from renderer: 0.100 信息
// https://stackoverflow.com/questions/61201270/timed-out-receiving-message-from-renderer-in-selenium
System.setProperty(ChromeDriverService.CHROME_DRIVER_SILENT_OUTPUT_PROPERTY, "true");
System.setProperty(ChromeDriverService.CHROME_DRIVER_EXE_PROPERTY, "D:\\tools\\Python\\Python37\\chromedriver.exe");

ChromeDriver chrome = new ChromeDriver(options);
// 会有个变化过程
// chrome.manage().window().maximize();
EventFiringWebDriver eventFiringWebDriver = new EventFiringWebDriver(chrome);
eventFiringWebDriver.register(new WebEventListener());
driver = eventFiringWebDriver;

WebUI 自动化配置

标签:maven   查找   webdriver   enter   property   command   resources   comm   repo   

原文地址:https://www.cnblogs.com/zeo-to-one/p/13513300.html


评论


亲,登录后才可以留言!