testng接口自动化测试_Java+Maven+TestNG接口(API)自动化测试教程(10) 使用 Jenkins 构建自动化测试持续集成...

现在代码可以运行了,但是每次运行都需要我们手工去执行,并且测试报告也只能在执行测试的电脑上才能看到,我们希望能够定时自动执行测试,并且能够做到自动发送测试报告到相关人员的电子邮箱中。Jenkins 正好可以很好的完成以上诉求,那我们首先下载并安装好Jenkins(网上有很多相关资料和教程,这里略过)。接下来说下具体的配置步骤:

10.1 相关的工具软件在 Jenkins 服务器中安装和配置

JDK:必须配置,Java 写的程序哦!Maven:必须配置,我们建立的就是 Maven 类型的项目。

10.2. 相关插件下载

Maven Integration: 必须,我们需要在 Jenkins 中建立一个 Maven 项目;HTML Publisher plugin:必须,extent reporters 美化报告替换 testng本来的报告就是为了美观,要在 Jenkins 中展示必须安装此插件;Groovy:必须,Jenkins 不支持异类样式 CSS,所以 Groovy 插件是为了解决HTML Publisher plugin 在展示 extent reporets 时能够正确的显示。

10.3 相关工具软件和插件在 Jenkins 管理界面中配置

以管理员登录 Jenkins 成功,点击左侧菜单中的 Manage Jenkins → Global Tool Configuration:

10.3.1 JDK

d8d7f221ef94861091f528101efd43c6.png

别名填写一个容易辨识的就可以,JAVA_HOME 中填写该环境变量的值。

10.3.2 Maven

360318f5cbc7c0cffc8f3a986af3c2b4.png

Maven 的名字填写一个容易辨识的就可以,MAVE_HOME 中填写该环境变量的值。

10.3.3 Maven 配置

8076418e39ba8d6a55d2084f4c183046.png

Maven 配置需要填写两个 settings 的文件路径,填写实际配置的路径即可。

10.3.4 Groovy

a08f345aa0dee4fe0a113f3ee077d472.png

这里选中 Install automatically,就不用自己再去下载安装了,现在 Jenkins 功能越来越强大了。版本选择一个最新的就可以了。

10.4 新建一个 Maven 类型的项目

68ac7d2cacea1c5de1a3f2acc61b8692.png

在 Build 中正确配置好 Maven 设置:

4d0b9cb7765bfafb386d75ebfeb6d247.png

这里的 Root POM 中填写的路径是相对于${workspace},也可以写成绝对路径:${workspace}\apidemo\pom.xml,这里 apidemo 是对应的 exclipse 项目文件夹,需要改为自己的项目文件夹名称。接下来在 Post Steps 中选择构建步骤“Execute system Groovy script”,

2b775c602e37fc3c25b3e14bde31e17a.png

选择Groovy command,填入

92074eb5503bb35f67921bb27b936e53.pngSystem.setProperty("hudson.model.DirectoryBrowserSupport.CSP", ""), 如下图所示:

9edebb1b111c1b26037071b56bc97d51.png

在构建后设置中选择 Publishe HTML reports,在HTML directory to archive 中填写生成的测试报告所在的文件夹,这里需要填写的就是在 ExtentTestNGReporterListener.java 文件中定义的文件夹路径,Index page[s]填写的也是 ExtentTestNGReporterListener.java 文件中定义的文件路径,Report title 中填写的是报告标题,Include files 保持默认即可。

fb4485a65349a8d1e32e12ee610377d0.png

全文完,感谢阅读!另外:本人之前在本公众号发布的4篇文章,其实也是针对Java+Maven+TestNG接口(API)自动化测试过程中出现的问题:
来自东方的救赎,公众号:闲话ITTestNG+Maven+ExtentReports在Jenkins中的测试报告出坑记(一):样式不生效及解决方案
来自东方的救赎,公众号:FocusontestingTestNG+Maven+ExtentReports在Jenkins中的测试报告出坑记(二):测试报告乱码问题及解决方案
来自东方的救赎,公众号:FocusontestingTestNG+Maven+ExtentReports在Jenkins中的测试报告出坑记(三):结果始终为Success的解决方案
来自东方的救赎,公众号:FocusontestingTestNG+Maven+ExtentReports在Jenkins中的测试报告出坑记(四):测试报告邮件内容与美化解决方案

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/276363.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

sql数据类型详解

BCD码1字符1/2字节 ASC码1字符1字节 GB2312码1字符2字节 BIG5码1字符5字节 (1)二进制数据类型 二进制数据包括 Binary、Varbinary 和 Image  Binary 数据类型既可以是固定长度的(Binary),也可以是变长度的。  Binary[(n)] 是 n 位固定的二进制数据。其中,n 的取…

论公众号内卷

关注若川视野, 回复"pdf" 领取资料,回复"加群",可加群长期交流学习曾几何时公众号文章的标题单纯且没有套路七年前的我就是这样仅仅把公众号当做一个写文章的博客平台甚至是像有道云一样的在线笔记平台当时的标题是这样子滴《hashma…

PHP 利用Mail_MimeDecode类提取邮件信息

转载链接:http://blog.csdn.net/laijingyao881201/article/details/5512693 重点为one_mail函数。利用Mail_mimeDecode类从邮件中提取邮件头和邮件正文。 <?php header("content-type:text/html; charsetUTF-8"); /** record kid words and insert into databa…

【转】概要设计说明书

概要设计说明书 一&#xff0e; 引言 1&#xff0e; 编写目的 从该阶段开发正式进入软件的实际开发阶段&#xff0c;本阶段完成系统的大致设计并明确系统的数据结构与软件结构。在软件设计阶段主要是把一个软件需求转化为软件表示的过程&#xff0c;这种表示只是描绘出软件的…

程序异常异常代码: 0xc0000005_Java基础:看完这篇你还怕碰到异常吗?

前言在日常的开发以及平时的学习练习中&#xff0c;异常相信对于大家来讲并不陌生&#xff0c;但是对于异常的具体使用、底层实现以及分类等等可能并不是很了解。今天我就抽出了一点时间系统的整理了异常的各个知识点&#xff0c;希望能够帮助到大家对于Java 异常的理解与学习。…

写给初中级前端工程师的进阶指南

学习一门新技术的时候&#xff0c;最大的苦恼之一&#xff0c;大概就是不知道从何入手。典型的情况是&#xff0c;你大概知道学会以后&#xff0c;这门技术可以帮你解决什么问题。但是&#xff0c;怎么才能学会、循序渐进的学习路线是什么、学习范围有多大的深度和广度、涉及到…

同一页面中引入多个JS库产生的冲突解决方案(转)

发生JS库冲突的主要原因&#xff1a;与jQuery库一样&#xff0c;许多JS库都使用‘$’符号作为其代号。因此在一个页面中引入多个JS库&#xff0c;并且使用‘$’作为代号时&#xff0c;程序不能识别其代表哪个库&#xff08;这个是我自己的解释&#xff0c;但更深的原因就必须深…

不用安装Oracle Client如何使用PLSQL Developer

1. 下载oracle的客户端程序包&#xff08;30M&#xff09;只需要在Oracle下载一个叫Instant Client Package的软件就可以了&#xff0c;这个软件不需要安装&#xff0c;只要解压就可以用了&#xff0c;很方便&#xff0c;就算重装了系统还是可以用的。下载地址&#xff1a;http…

input file的默认value清空与赋值方法

转载链接&#xff1a;http://www.jb51.net/article/24872.htm出于安全性考虑&#xff0c;JS是不能直接设置File的value值的&#xff0c;下面是我总结出来的方法第1个方法是大多人传统做法&#xff0c;替换HTML代码&#xff0c;楼上的已经用到了&#xff0c;我不过是用正则优化一…

python中o_Python I/O与进程的详细讲解

I/Owith语句with context_expression [as target(s)]:with-bodycontext_expression返回值遵从上下文管理协议&#xff0c;包含__enter__()与__exit__()方法&#xff0c;as语句的target(s)得到的是__enter__()返回值&#xff0c;执行with-body后会调用上下文管理器的__exit__()方…

千层套路 - Vue 3.0 初始化源码探秘

关注若川视野, 回复"pdf" 领取资料&#xff0c;回复"1"&#xff0c;可加群长期交流学习刘崇桢&#xff0c;微医云服务团队前端工程师&#xff0c;左手抱娃、右手持家的非典型码农。9 月初 Vue.js 3.0 正式发布&#xff0c;代号 "One Piece"。大秘…

css网页布局兼容性有哪些要点与诀窍

IE vs FFCSS 兼容要点&#xff1a;DOCTYPE 影响 CSS 处理FF: div 设置 margin-left, margin-right 为 auto 时已经居中, IE 不行FF: body 设置 text-align 时, div 需要设置 margin: auto(主要是 margin-left,margin-right) 方可居中FF: 设置 padding 后, div 会增加 height 和…

js 下拉底部加载|滑轮滚动到页面底部ajax加载数据的实例

转载链接&#xff1a;http://www.cnblogs.com/thinksley/archive/2013/05/12/3074237.html 滚动下拉到页面底部加载数据是很多瀑布流网站的做法&#xff0c;那来看看配合jsonp是如何实现的吧&#xff0c;小菜总结记录之用&#xff0c;高手勿喷。 当然本例子采用的是jquery库&…

python并行for循环_Python并行执行for循环

简介在介绍如何最简单地利用 python 实现并行前&#xff0c;我们先来看一个简单的代码。words [apple, bananan, cake, dumpling]for word in words:print word上面的例子中&#xff0c;我们用一个 for 循环打印出 words 列表中的每个单词。问题来了&#xff0c;这里我们打印完…

C语言之指针与数组总结

和指针相关的问题口诀1&#xff1a; 1. 地址变量得地址&#xff0c;得谁地址指向谁 和指针相关的问题要画图: 内容变量画房子&#xff0c;指针画箭头 ---->口 ---------------------------------------------------- 和指针相关的两个特殊运算符&#xff1a; 一、"&…

2020年大前端技术趋势解读

导Lead语如今的前端早已不再拘泥于满足页面展示&#xff0c;而是开始延展到通过全栈来闭环产品。这表明前端已经有能力透过业务深入产业&#xff0c;继而影响商业结果。这种表象的改变背后是本质的转变&#xff0c;从更为宏观的角度来说&#xff0c;前端正在通过持续的技术革新…

HTML默认样式表CSS属性

转载链接&#xff1a;http://www.xiao-a.com/index.php/archives/440.html 开始的时候 *{margin:0;padding:0;}&#xff0c;当需要使用边距的时候&#xff0c;就需要还原HTML默认CSS值了。以前一直在找这份 文档&#xff0c;今天偶然在w3上看到了。除了inline和block的定义&…

第六集 MSF构思阶段项目团队的组建

第六集 MSF构思阶段项目团队的组建__Note转载于:https://www.cnblogs.com/zencorn/archive/2009/10/18/1585495.html

lc滤波器是利用电感的感抗_你对LC谐振电路你都了解吗

根据在电路中电感器L和电容C的连接方式不同&#xff0c;可以有两种LC谐振电路&#xff0c;LC并联谐振电路和LC串联谐振电路。LC并联、串联谐振电路在应用中的变化较多&#xff0c;是电路中分析的一个难点&#xff0c;只有掌握LC并联、串联电路的阻抗特性等基本概念&#xff0c;…