上一篇appium运行环境搭建完后appium运行环境搭建,我们本地已经安装了appium server服务了,打开cmd,输入appium即可启动appium。本篇将继续appium自动化测试探索与学习。
- 新建maven项目
- 引入TestNg
新建完后,打开项目根目录的pom.xml文件,添加TestNg依赖
<!-- https://mvnrepository.com/artifact/org.testng/testng -->
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>7.0.0-beta1</version>
</dependency>
- 引入appium依赖
<!-- https://mvnrepository.com/artifact/io.appium/java-client -->
<dependency>
<groupId>io.appium</groupId>
<artifactId>java-client</artifactId>
<version>${java-client.version}</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java -->
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>${selenium-java.version}</version>
</dependency>
版本号可以去maven仓库去找最新的
- 引入测试报告分析模板Allure报告
allure是一款很好用的测试报告分析插件,界面如上所示,很美观,并且有多种菜单从多个维度去生成测试报告,官方文档链接:allure报告官方文档
maven中需要添加如下依赖:
<dependency>
<groupId>ru.yandex.qatools.allure</groupId>
<artifactId>allure-testng-adaptor</artifactId>
<version>${allure-testng-adaptor.version}</version>
<exclusions>
<exclusion>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- https://mvnrepository.com/artifact/io.qameta.allure/allure-testng -->
<dependency>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-testng</artifactId>
<version>${allure-testng.version}</version>
</dependency>
<plugins>
<!-- 添加插件,添加插件, 关联testNg.xml,添加ReportNg的监听器,修改最后的TestNg的报告 -->
<plugin>
<!--这样就可以实现Maven运行test命令时按照TestNG的testng.xml配置运行相应的测试用例,运行mvn test指令即可-->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${maven-surefire-plugin.version}</version>
<configuration>
<testFailureIgnore>true</testFailureIgnore>
<suiteXmlFiles>
<suiteXmlFile>testng.xml</suiteXmlFile>
</suiteXmlFiles>
<argLine>
-javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/1.9.1/aspectjweaver-1.9.1.jar"
</argLine>
<properties>
<property>
<name>usedefaultlisteners</name>
<value>false</value>
</property>
</properties>
<!-- 使allure-results在target文件夹下(很重要) -->
<workingDirectory>target/</workingDirectory>
</configuration>
<dependencies>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>${aspectjweaver.version}</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.2.1</version>
<configuration>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>org.testng.TestNG</mainClass>
</transformer>
</transformers>
</configuration>
<executions>
<execution>
<id>package_shade_profile</id>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>8</source>
<target>8</target>
</configuration>
</plugin>
</plugins>
- 新建testng.xml文件,配置TestNg测试入口
注意,xml的文件名必须是testng.xml,不然会识别不到,如果测试想要分模块,那么再重新新建一个xml文件,类似于这样的结构
然后,testng.xml中再引入想要添加到测试组中的模块
testng.xml配置如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="测试套汇总">
<parameter name="XXX" value="XXX" />
<suite-files>
<!--<suite-file path="testng_OTT.xml"></suite-file>-->
<suite-file path="testng_Setting.xml"></suite-file>
</suite-files>
</suite>
接下来,写出测试case,再执行maven test命令,即可运行测试套,执行完后再执行allure serve target/allure-results 即可生成allure报告。