Jenkins + Ant + Java + TestNg + ReportNg + Appium 进行持续集成

来源:互联网 发布:syslog日志服务器端口 编辑:程序博客网 时间:2024/06/05 06:06

1、Appium 来进行APP端自动化测试,比如说针对民信贷APP端的登陆—— 投资无忧理财 -  无忧理财 等等业务场景 来进行自动化测试,

其详细的脚本后期会做说明,该篇只是简单将其项目结构粘贴出,其中Follow 类中将所需测的业务进行了串连,详细代码如下图




2、testng.xml 内容如下:

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd"><suite name="Simple Logger Suite"><listeners><listener class-name="org.uncommons.reportng.HTMLReporter" /><listener class-name="org.uncommons.reportng.JUnitXMLReporter" /></listeners>    <test name="Simple Logger test">        <classes>                        <class name="com.app.Follow" />              <methods>                  <include name = "follow" />               </methods>                   </classes>    </test></suite>



3、因为为了便于看其执行结果,使用ReportNg来进行报告的输出,项目中导入reportng所需jar包


4、build.xml 编写内容如下:

<?xml version="1.0"?><project name="Demo" default="run" basedir=".">    <echo  message="import libs" />    <path id="run.classpath">                <fileset dir="${basedir}/lib">            <include name="**/*.jar" />        </fileset>           </path>    <taskdef name="testng" classname="org.testng.TestNGAntTask" classpathref="run.classpath" />    <target name="clean">        <delete dir="build"/>    </target>    <target name="compile" depends="clean">        <echo message="mkdir"/>        <mkdir dir="build/classes"/>        <javac srcdir="src" destdir="build/classes" debug="on" encoding="UTF-8">            <classpath refid="run.classpath"/>        </javac>        <copy todir ="${basedir}/build">            <fileset dir = "${basedir}/src" >                <include name = "**/*.xml"/>            </fileset>        </copy>    </target>    <path id="runpath">          <path refid="run.classpath"/>          <pathelement location="build/classes"/>        </path>     <target name="run" depends="compile">        <echo message="Compile dir is:  ${basedir}" />        <testng  classpathref="runpath"  outputDir="test-output" haltOnfailure = "true"                 useDefaultListeners = "false"                   listeners="org.uncommons.reportng.HTMLReporter,org.testng.reporters.FailedReporter" >            <xmlfileset dir="${basedir}" includes="testng.xml"/>            <jvmarg value="-ea" />            <sysproperty key="org.uncommons.reportng.title" value="自动化测试报告"/>        </testng>    </target></project>


5、打开Jenkins,新建一个自由风格的项目,名称为appium,其详细的设置如下:





备注:在使用Ant 时,还需要在 “系统管理 —— 系统设置” 中进行设置Ant ,如下图所示:





还需要下载:AntPlugin 插件   TestNG Results Plugin 插件  HTML Publisher plugin 插件, 插件的管理在“系统管理—— 插件管理” 中进行添加


6、点击立即构建(注意需要把appium服务给开启,模拟器给打开,因为app自动化测试需要借助于虚拟机来进行测试),构建成功后的报告如下图所示:




7、Jenkins 中的 HTML Report 报告如下图所示:













0 1