Jenkin+TestNG进行自动化测试执行
1.登陆jenkins'后,主页面有一个jenkins管理选项,进入该模块,对插件,系统进行配置。(安装一个extend choice parameter插件)
2.点击new item新建一个项目,选择自由风格的工程;
3.extend choice parameter插件使用:
在构建参数选项,选择extend choice parameter,输入name,比如selectcase,然后在value那里填入case的名字(和xml里或者脚本的名字一致),详细步骤可以参考这里:http://www.ibm.com/developerworks/cn/opensource/os-autotesting-jenkins-testing/
4.在项目高级选项,配置你的项目路径;选择Use custom workspace, 在Directory栏填入项目工程路径, 如E:\jenkins\workspace\WebUIAutomation
5.在版本控制选项,如果不用版本控制,选择none; (如果需要版本控制,可以选择svn, github等,然后填上你的版本库地址即可。)
6.建一个run.bat文件,内容如下,并将该bat放入你本地工程的根目录
java -cp E:\jenkins\workspace\WebUIAutomation\bin;E:\jenkins\workspace\WebUIAutomation\libs\* org.testng.TestNG SCI_WebUI_BVT.xml
7.在build选项那里,选择Execute windows batch commnad,填入run.bat
保存。
8. 或者通过ant来进行构建:在工程根目录建一个build.xml文件,内容如下。
<project basedir="." default="regression" name="automation test">
<!-- 变量设置 -->
<property name="base.dir" value="/tmp/workspace/WebUIAutomation"/>
<property name="testng.output.dir" value="${base.dir}/test-output"/>
<property name="3rd.lib.dir" value="${base.dir}/libs"/>
<property name="testng.file" value="SCI_WebUI_BVT.xml"/> <!-- testng任务 -->
<taskdef resource="testngtasks" classpath="${3rd.lib.dir}/testng6.8.jar"/> <!-- 引用包设置 -->
<path id="classes">
<fileset dir="${3rd.lib.dir}">
<include name="*.jar"/>
</fileset>
<pathelement location="${base.dir}/bin"/>
</path> <!-- 每次构建清空之前构建文件 -->
<target name="clean">
<delete dir="${base.dir}/bin"/>
</target> <!-- 编译文件 -->
<target name="compile" depends="clean">
<mkdir dir="${base.dir}/bin"/>
<javac srcdir="${base.dir}/src" destdir="${base.dir}/bin" classpathref="classes" includeantruntime="off" debug="on" debuglevel="lines,vars,source"/>
</target> <!-- 运行指定的xml -->
<target name="regression" depends="compile">
<testng outputdir="${testng.output.dir}" classpathref="classes" delegateCommandSystemProperties="true">
<xmlfileset dir="${base.dir}" includes="${testng.file}"/>
</testng>
</target>
</project>
建好文件后再jenkins的Build部分,选择execute shell或者invoke ant, 我这里选择的是invoke ant,然后在targets栏填入build.xml文件里的target name。
之后回到项目页面,选择build,选择build参数(这里就可以看到前面创建的selectcase选择框了,选择你要执行的case),点击build就可以开始执行测试了。执行完成后在左边会显示所有build的记录,点开某一个记录,通过console output可以查看运行的log。
Jenkin+TestNG进行自动化测试执行的更多相关文章
- 《手把手教你》系列基础篇(八十一)-java+ selenium自动化测试-框架设计基础-TestNG如何暂停执行一些case(详解教程)
1.简介 在实际测试过程中,我们经常会遇到这样的情况,开发由于某些原因导致一些模块进度延后,而你的自动化测试脚本已经提前完成,这样就会有部分模块测试,有部分模块不能进行测试.这就需要我们暂时不让一些t ...
- jenkins、ant、selenium、testng搭建自动化测试框架
如果在你的理解中自动化测试就是在eclipse里面讲webdriver的包引入,然后写一些测试脚本,这就是你所说的自动化测试,其实这个还不能算是真正的自动化测试,你见过每次需要运行的时候还需要打开ec ...
- testng.xml顺序执行多个case配置
testng.xml顺序执行多个case配置 项目结构如图:
- testNG之顺序执行
@Test testNG1.java: import org.testng.annotations.Test; public class testNG1 { @Test public void t ...
- 自动化测试框架selenium+java+TestNG——TestNG注解、执行、测试结果和测试报告
TestNG是java的一个测试框架,相比较于junit,功能更强大和完善,我是直接学习和使用的TestNG就来谈下TestNG的一些特点吧. TestNG的特点 注解 TestNG使用Java和面向 ...
- Jenkins,Maven及TestNG在自动化测试的应用(转)
转自:http://qa.blog.163.com/blog/static/190147002201581634549893/ 希望实现的场景:Jenkins中的Job可针对不同浏览器,不同环境,运行 ...
- maven+selenium+java+testng+jenkins自动化测试
最近在公司搭建了一套基于maven+selenium+java+testng+jenkins的自动化测试框架,免得以后重写记录下 工程目录 pom.xml <project xmlns=&quo ...
- java+Selenium+TestNg搭建自动化测试架构(3)实现POM(page+Object+modal)
1.Page Object是Selenium自动化测试项目开发实践的最佳设计模式之一,通过对界面元素的封装减少冗余代码,同时在后期维护中,若元素定位发生变化,只需要调整页面元素封装的代码,提高测试用例 ...
- TestNG设置测试用例执行优先级
@Test(priority = x)设置测试用例执行优先级.x默认为0,0的优先级最高,0>1>2>3... import org.testng.annotations.Test; ...
随机推荐
- js 获取 input file 文件 附给 image src
var a=document.querySelector('input[type=file]'); a.onchange = function (e) { //var reader = new Fil ...
- 3150 Pibonacci数 - Wikioi
题目描述 Description 你可能听说过的Fibonacci数和圆周率Pi. 如果你让这两个概念合并,一个新的深奥的概念应运而生:Pibonacci数. 这些数可以被定义为对于x>=0: ...
- jquery取消事件冒泡和取消默认行为
$('button').click(functon(e){ /*code*/ e.stopPropagation();//取消事件冒泡 e.preventDefault();//取消默认行为 })
- SDK更新问题解决
更新C:\WINDOWS\system32\drivers\etc\host文件百试不爽 第一步 打开SDK Manager下Tools->Options,选中“Force https://… ...
- spoj 95
栈应用 ...... 水题 #include<cstdio> #include<cstdlib> #include<cstring> #include<alg ...
- MyBatis之传入参数parameterType
在MyBatis的select.insert.update.delete这些元素中都提到了parameterType这个属性.MyBatis现在可以使用的parameterType有基本数据类型和Ja ...
- live555源码研究(五)------DynamicRTSPServer类
一.类DynamicRTSPServer作用 1,提供RTSP服务 二.类DynamicRTSPServer继承关系图
- jquery的ajax向后台servlet传递json类型的多维数组
后台运行结果: 前台运行结果: ...
- Mac中编译安装Qt 4.4
解压下载到的.gz源码:gunzip xxx.tar.gztar xvf xxx.tar, 其实在Mac中可以直接双击解压的.然后定位到解压后的目录下:./configuremakesudo make ...
- Qt之QtSoap(访问WebService)
http://blog.csdn.net/u011012932/article/details/51673800