Jenkins环境搭建(5)-与Jmeter完成参数化构建和构建前删除操作
此前介绍过几篇关于Jenkins配置相关的文章,今天再来说说参数化构建和构建前删除已有的报告。在实际测试过程中,是需要测试几套环境的,不使用参数化构建的话,构建脚本就比较麻烦了;自然,已生成的报告,不删除再构建,发送的报告也就比较冗余。接下来就来说下这两个简单的配置。
参数化构建
参数化,这个词,相信大家都很熟悉,就不啰嗦了。在jenkins配置中,常规配置下,勾选参数化构建过程按钮。添加对应的参数,有凭证参数、字符参数、密码参数等,此处选择Active Choices Reactive Parameter,如下图所示:

如果没有该参数可以选择,则需要先安装插件,具体安装插件的步骤也不过多介绍了,在可选插件中搜索并安装即可。

将该插件安装好后,再次进入到已有job下配置,即可选到该参数,接下来就来介绍下如何具体进行参数化。
参数化过程
1.添加一个名为test的参数,返回值有A/B/C/D

可以输入对应参数的描述:

2.添加一个名为url的参数,在test参数中,如果选择A,url处则显示www.baidu.com


Referenced parameters需要填入test,test就是第一个参数名
3.继续添加pro、username、password参数,跟配置url参数一样配置即可
4.配置好参数并保存,来构建当前job,进入到构建页面,出现如下图所示页面

在test参数处是可以修改不同的值,如下

切换到B,则url、pro、username、password参数也对应变更,如下

这样配置后,就可以灵活运用到不同的测试环境中,构建脚本了,使用起来很是方便。
给一张实际job构建的参数传递图,如下所示:

传递的参数显示在控制台中,参数传递了,那如何在jmeter中实际应用呢?这就需要在jmeter中引用一个函数,_P
函数_P是一个简化版的属性函数,目的是使用在命令行中定义的属性。不同于函数_property,本函数没有提供选项用于设置保存属性值的变量。 另外,如果没有设置默认值,默认值自动设为1。之所以选择1,原因在于它对于很多常见测试变量都是一个合理值,例如,循环次数、线程数、启动线程耗时间 等。
在jmeter测试计划中设置如下:

这样就完成了参数传递的配置
构建前删除已有报告
在做自动化测试时,会有测试报告生成,报告名称一样并不及时处理的话,再次构建时,报告会加在已有报告中,导致冗余。解决该问题可以在job配置中的构建设置下,添加windows批处理命令操作即可如下图所示:

添加该参数后,输入批处理命令
cd D:\Jenkins\workspace\123\html
del /F /S /Q TestReport.html
cd D:\Jenkins\workspace\123\jtl
del /F /S /Q TestReport.jtl
保存该配置后,去构建job,则会先执行批处理命令再开始构建。
构建job,查看控制台日志如下:

遇到的问题
1.在配置批处理命令时,没有注意到顺序问题,导致没有实现预想的效果
由于先有ant操作,再添加的批处理命令操作,构建job下来,是当脚本执行完后再执行的批处理命令,导致生成的报告被删除。由此检查看,是因为顺序的问题导致,调整顺序即可。

2.参数化构建不填写Referenced parameters
不填写Referenced parameters参数,则会导致对应参数下显示不出值,需要引用第一个参数(基于第一个参数test)
上述两个问题都是小问题,但不仔细下,的确是会忽略掉的部分,需要多注意。参数化构建和构建前的删除操作就是这么的简单,相信阅读下来,肯定就能掌握。
Jenkins环境搭建(5)-与Jmeter完成参数化构建和构建前删除操作的更多相关文章
- Jenkins环境搭建(7)-集成钉钉消息推送
在去年的时候,搭建了一套Jenkins环境,基本功能已实现,可以通过如下地址查阅. Jenkins环境搭建(1)-下载与安装 Jenkins环境搭建(2)-搭建jmeter+ant+jenkins自动 ...
- 基于Centos搭建Jenkins 环境搭建
系统要求: CentOS 7.2 64 位操作系统 安装 Jenkins Jenkins 简介 Jenkins 是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提 ...
- jenkins 环境搭建与入门示例
环境说明: 1.win7 2.tomcat 9.0.0.M17 3.jenkins 2.32.2.war jenkins 环境搭建 1.下载jenkins部署包 https://jenkins.io/ ...
- windows系统下jenkins环境搭建与基本使用
一. windows 系统下搭建jenkins环境 1.1 jenkins环境搭建和构建job流程图 1.2 安装jdk JDK下载地址: http://www.oracle.com/technet ...
- Jenkins环境搭建(2)-搭建jmeter+ant+jenkins自动化测试环境
一直想在持续集成方向学习并研究一番,近期正准备结合jmeter+ant+jenkins做自动化接口测试,在学习的同时,正好实践一番,毕竟实践才是真理. 在搭建jmeter+ant+jenkins环境有 ...
- 32. 持续集成简介及JDK、Tomcat、Jenkins环境搭建
持续集成简介 持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成.每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验 ...
- [原]项目进阶 之 持续构建环境搭建(四)Jenkins环境搭建
在之前的几篇文章中,我给大家分别介绍了这次的持续化构建环境搭建的相关前提内容.如果说前面的文章都是小菜的话,那么今天的这篇文章就是我们这个系列文章的主菜. 1.前提 安装jenkins需要安装JDK. ...
- gitlab+jenkins环境搭建.md
gitlab+jenkins自动化部署环境搭建 环境说明 系统 主机 IP 安装软件 CentOS 7 study-1 192.168.100.51 gitlab.git CentOS 7 study ...
- 物联网架构成长之路(29)-Jenkins环境搭建
0. 说明 哈哈,前面中间插入了一篇Eclipse增加Git插件,在此之前真的没有用过GIT. 1. 运行Jenkins 这里为了方便,还是用Docker方式安装,由于这个是标准的war报,不对Doc ...
随机推荐
- 【python】内存调试
全文拷贝自:http://blog.csdn.net/BaishanCloud/article/details/76422782 问题定位过程解读 gdb-python:搞清楚python程序在做什么 ...
- Python计算器实操
要求: 开发一个简单的python计算器 实现加减乘除及拓号优先级解析 用户输入 1 - 2 * ( (60-30 +(-40/5) * (9-2*5/3 + 7 /3*99/4*2998 +10 * ...
- Fatal error: Uncaught Error: Call to undefined function mysqli_connect()
sudo apt-get install php7.2-mysql //版本号肯能不一样 sudo dpkg-reconfigure php7.2-mysql sudo /etc/init.d/m ...
- 10进制 VS 2进制
10进制 VS 2进制 时间限制: 1 Sec 内存限制: 32 MB 题目描述 样例输出 623 #include<stdio.h> #include<string.h> ...
- SVN项目迁移到Git上(并带有完整的提交记录)
公司需求:早期的一些项目使用的是SVN,现在想要更换为Git,需要代码迁移并且能在Git上看到之前在SVN中的项目的提交记录,公司没有使用gitlab,代码都push在公司的服务器上,用的是Torto ...
- python unittest框架装饰器
要说单元测试和UI自动化之间的是什么样的一个关系,说说我个人的一些心得体会吧,我并没有太多的这方面经验,由于工作本身就用的少,还有就是功能测试点点对于我这种比较懒惰的人来说,比单元测试复杂...思考单 ...
- MongDb介绍及简单实用
一:介绍 MongoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSql数据库中比较热门的一种.它在许多场景下可用于替代传统的关系型数据库或键/值存储方式.Mongo使用C ...
- [转]fiddler 抓包 HTTPS 请求
教程开始 安装 fiddler 首先准备一台可以上网的 windos 电脑,准备一部智能手机. fiddler 抓包工具:下载地址( 自行百度一搜一大片).安装,打开如果遇到. net framewo ...
- Spring Boot配置文件放在jar外部
Spring Boot程序默认从application.properties或者application.yaml读取配置,如何将配置信息外置,方便配置呢? 查询官网,可以得到下面的几种方案: 通过命令 ...
- groovy中的正则表达式操作符【groovy】
groovy中对于正则表达式的书写进行了简化,同时引入了新的操作符,使得正则表达式使用起来比较方便简单. 对于书写的改进: 比如 assert "\\d" == /\d/ 也就是在 ...