WINDOWS10系统下
环境
172.16.0.115虚拟机windows系统作为远程节点。
jenkins安装在172.16.0.119:8088虚拟机中。
一、安装配置Java环境
windows10中安装java
JAVA_HOME:安装地址
path:
%Java_Home%\bin
%Java_Home%\jre\bin
二、安装jmeter
可通过直接运行ApacheJmeter启动jmeter
此安装的jmeter3.4.0版本。
三、.Jenkins配置(远程连接windows10)
参考:
配置jenkins(linux系统下)作为master远程构建执行windows系统slave测试。
实现安装在Linux的Jenkins可以执行Windows下的selenium test case
1.配置Jenkins的Windows节点
1.1 点击左侧面板中:
系统管理->管理节点
1.2 点击左侧面板:新建节点
.png)
1.3 输入节点名称,选择Dumb Slave(现在叫Permanent Agent),点击OK
.png)
1.4 输入相关配置,点击save(需提前在windows上创建一个远程的Jenkins工作目录,如下图:c:\jenkins_jmeter)
# of executors:同时可运行的job数量,默认为1
远程工作目录:目标Windows的工作目录
标签:用来指定job以什么方式来进行构建
用法:选择“只允许运行绑定到这台机器的job”
启动方法:选择“Launch slave agents via Java Web Start”,Windows机器推荐选择该方法
共有四种方式连接,其中web start 针对windows较稳定。其中“let jenkins control this windows slave as windows service”至最稳定的一种,但是配置相对复杂,是直接以使用windows用户账号的形式登录windows控制,允许windows只能登一个账号,所以后期再研究这种方式。
* 其他可随意或默认
.png)
1.5 save成功后出现以下记录
以你创建的名字显示的,未连接的节点机器。若取名“windows demo”则如下图
.png)
1.6 配置Windows机器
在目标Windows目录中创建上述的远程工作目录:C:\jenkins_jmeter(此工作目录,为节点默认工作目录,后面可在工程任务中单独设置工作目录)
点击机器名:Windows_demo,出现如下页面:
.png)
将Run from slave command line下的slave.jar下载到远程工作目录下,同时将Java命令复制到txt文件中,保存成bat文件。
.png)
.png)
双击bat文件,建立Windows与Jenkins之间的联系。
* 可将open_connecte.bat拖至win->all programs->startup,开机自启动
在管理节点中可看到连接信息:
注意事项:1.使用 Launch slave agents via Java Web Start的方式连接windows,要求windows 中安装java 版本至少8以上。(日志中报错只会提示无法连接)
2 Master Jenkins服务器端的配置细节
Two solutions seem to be coming up:
Download the JNLP file (via browser, wget, curl, whatever) then run locally - may require extra parameters.
Go to Manage Jenkins -> Configure Global Security, and under Project-based Matrix Authorization Strategy, enable “connect” in the “slave” section, for user “Anonymous”. This would leave you open to attack where someone emulates a slave (but in my case, on a private work network - that's not an issue.)
具体操作是进入jenkins主界面,然后进入Manage Jenkins -> Configure Global Security ,勾选其中的anonymous用户的slave部分的权限。如下:
.png)
.png)
连接成功撒花✿✿ヽ(°▽°)ノ✿。
四、安装配置ant
在windows远程节点115上安装ant
java版本1.8,和ant版本1.8匹配。并下载ant1.8进行安装。
.png)
环境变量配置:
ANT_HOME:安装文件路径
Path:%ANT_HOME%\bin
ClassPath: %ANT_HOME%\lib
安装完成。
五、jenkins配置任务(runJmeter工作)
1.创建项目任务:命名“RunJmeter_win10_115”
2.配置工程
2-1.勾选Restrict where this project can be run,限制项目运行节点 (确定工程运行的节点,也就是我们的115windows虚拟机)
.png)
2-2.勾选“使用自定义的工作空间”,并输入节点windows上的项目工作根目录。(输入根目录后,接下来的设计目录路径的地方都是以此根目录开始)
.png)
2-3.在构建中,选择“invoke ant”借助ant执行构建项目,填写构建xml文档,后面将如何编写build.xml。(此时填写绝对路径、或相对路径都行,相对路径既相对工作空间根目录设置)
.png)
2-4构建后操作中,“增加构建后操作步骤”下拉选择“Publish HTML reports”。
.png)
2-5在publish Html reports中配置,其中JmeterTestReports.html文件,为构建后产生的报告文件,需要在build.xml中去命名,名称需一致。
.png)
2-6构建后操作,再增加“Publish Performance test result report",并进行配置。填写Jmeter生成的Jtl结果文件路径和文件名称。此jtl文件名称依旧会在build.xml文件中命名。后面会讲到。ps.若不想写死文件名称,可用“*.jtl”代替,表述读取当前文件夹下所有jtl格式的文件,弊端是若没有清理以前的jtl文件,展示出其他的结果。
.png)
2-7增加构建后操作,“E-mail Notification”简单的发信,构建失败即发送邮件。(ps.无法判断构建成功,但jmeter中执行失败的情况,无法发信,后面将增加工程任务,专门判断Jmeter结果中如果有failed,则发信提醒。)如何配置jenkins发信邮箱,请百度。
.png)
六、在windows远程节点上部署文件和构建ant与jmeter文件目录
6-1.windows10(172.16.0.115)c盘下目录路径如下图。
其中,jenkins_jmeter文件夹为连接jenkins单独设置的节点工作空间。
ant和jmeter原本可以不用在AutoTestJmeter_Jenkins文件夹下,只是为了方便管理和维护,在Build.xml文件中会写到jmeter的路径,因此统一放到此目录下。
按照如下图结构,去创建文件夹,名字及大小写一致,可不用更改build.xml。若更改,则xml跟随更改。
.png)
6-2.配置编写build.xml
build.xml分别有详细的复杂,和简单部分编写的简单版。接下来介绍简单的
具体详细的都在文件中有备注,此处不多说了 。
.png)
七、在Jenkins上创建后续发信任务。(构建成功,但jmeter执行失败,发送执行失败的报错信息)
7-1创建新项目任务,取名“After115SendEmails”,或者自己随便取。
勾选Restrict where this project can be run ,并输入windows系统节点。
勾选“使用自定义的工作空间”并输入windows定义的工作根目录。
此处配置与配置主要Jmeter项目任务相同。
.png)
7-2 构建触发器
勾选“Bulid after other project are built”,并输入上一执行Jmeter项目的名称。
.png)
7-3 增加构建步骤
下拉选择“Execute Windows batch command”,
7-3-1 使用cmd命令进行执行读html报告中,是否有100.00%字符判断接口测试是成功。
cd Reports
cd ReportsHtml
setlocal enabledelayedexpansion
call findstr "100.00%%" JmeterTestReports.html
::判断是否查找到false,成功找到返回0,没有找到返回1。没有找到exit退出系统,并发送邮件。
if %errorlevel% == 1 exit
.png)
7-3-2 将后面的发信触发条件“ Triggers ”更改为success,使用如下判断false是否存在,确定是否发送邮件。(目的是,当一个jmx文件中存在多个接口测试,则需要判断false,而不是100%)
cd Reports
cd ReportsHtml
setlocal enabledelayedexpansion
call findstr "false" JmeterTestReports.html
::判断是否查找到false,成功找到返回0,没有找到返回1。找到返回0,exit退出系统,并发送邮件。后边触发条件是构建成功则发送邮箱。
if %errorlevel% == 0 exit
7-4 增加构建后操作
下拉选择“Editable Email Notification”,进行发信设置。
按照如截图方式进行,设置。
其中,部分Jenkins自带变量,可进行发信内容选择。
“Content Type”:下拉选择“HTML”,内容包含HTML文件,可直接展示HMTL内容。
邮件主题标题内容输入:$DEFAULT_SUBJECT:RunJmeter通知:接口测试脚本报错-Build # $BUILD_NUMBER-$BUILD_STATUS!
在“Default content ”默认内容中输入下如下,可发送包含Jmeter的结果html文件。其path路径需要跟随自己的进行更改。
$DEFAULT_CONTENT
<hr/>
(本邮件是程序自动下发的,请勿回复)<br/><hr/>
项目名称:RunJmeter <br/><hr/>
${FILE,path="Reports/ReportsHtml/JmeterTestReports.html"}
.png)
.png)
PS.注意触发条件。如下图。其他的东西还可以多看看。
.png)
至此文档结束。
- 图文详解如何搭建Windows的Android C++开发环境
原地址:http://www.apkbus.com/android-18595-1-1.html //================================================= ...
- 如何快速搭建基于python+appium的自动化测试环境
首先申明本文是基本于Python与Android来快速搭建Appium自动化测试环境: 主要分为以下几个步骤: 前提条件: 1)安装与配置python环境,打开 Python官网,找到“Downloa ...
- 【转】Windows下selenium+python自动化测试环境搭建
原文链接:http://www.cnblogs.com/test-of-philosophy/articles/4322918.html 搭建平台:windows 1.安装python,下载地址:ht ...
- Jenkins搭建windows service自动编译发布环境
类库项目(Task)部署 前面搭建了Web站点的环境,类库项目发布不同于站点项目,它只需要将MSBuild编译出来的dll复制到目标服务器上即可,而不需要通过Web Deploy,下面来说一下如何发布 ...
- 搭建windows下的odoo开发环境
odoo运行环境的必须要要求是 python环境 postgreSQL数据 数据库可以安装在别的机器上,比如服务器:当然对于开发环境,通常,数据库与代码调试安装在同一台机器上. 首先安装 postgr ...
- Go语言学习笔记(一) : 搭建Windows下的Go开发环境
最近突然对Go语言产生了兴趣,主要是因为在使用python的时候遇到了一些不爽的问题,然后发现了Go.Go是Google出的一个动态语言,语法和C++接近,性能也非常的好,而且还支持编译成exe发布, ...
- 搭建Windows下Java Web开发环境
概要 1.SSH开发相关软件及开发包下载2.软件安装及相关设置3.最简单的Web程序 1.软件下载 在D盘建一个目录JavaTools,用来存放下载的软件和开发包.(本教程将使用D盘,你也可以使用 ...
- Docker - 使用 Jenkins 镜像创建容器,并搭建 Python + Pytest +Allure 的自动化测试环境
如果你还想从头学起 Docker,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1870863.html 安装 Docker 直接参考我这 ...
- Web自动化测试环境搭建1(基于firefox火狐浏览器)
自动化测试是时代趋势,因此很多测试人员开始研究自动化测试,web自动化测试化测试并不难,但是很多人都是被挡在了环境搭建这一步,后面学习激情全无,这里,韬哥手把手教大家搭建火狐浏览器下的自动化测试环境( ...
随机推荐
- Linux常用基本命令( ls, alias)
ls命令 作用:列举目录文件信息( list directory content ) 格式:ls [option] [file] 1,命令不跟任何选项与目录,表示列举当前目录的文件信息 ghostwu ...
- php面向对象精要(2)
1,self与parent关键字 >self指向当前的类,常用来访问静态成员,方法和常量 >parent指向父类,常用来调用父类的构造函数和方法和成员,也可以用来访问常量 <?php ...
- HDU2255(KB10-K 二分图最大权匹配)
奔小康赚大钱 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Subm ...
- 第三十天- 进程 Process模块 空间隔离
1.进程: 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础.在早期面向进程设计的计算机结构中,进程是程序的基本执行实体: ...
- js-ES6学习笔记-编程风格(1)
1.ES6提出了两个新的声明变量的命令:let和const.其中,let完全可以取代var,因为两者语义相同,而且let没有副作用. 2.var命令存在变量提升效用,let命令没有这个问题.建议不再使 ...
- AJAX的一些基础和AJAX的状态
大佬们,我又回来了,最近好几天都没写博客了,别问我干啥去了,我只是去围观奶茶妹变成抹茶妹而已 前几天我们一起封装了一个AJAX,那今天我们来说说AJAX的一些基础和AJAX的状态码 首先,啥是AJAX ...
- 【代码笔记】iOS-自定义选择框(高底强弱)
一,效果图 二,代码. ViewController.h #import <UIKit/UIKit.h> @interface ViewController : UIViewControl ...
- JSP (tomcat 内置对象)
1.内置对象: request: 方法:getParameter("txtName"):获取和页面上的name属性对象的value值 返回String ...
- 在ASP.NET MVC 中使用ActiveReports报表控件
随着MVC模式的广泛运用,对Web应用系统的开发带来了巨大的影响,我们好像又回到了原来的ASP时代,视乎这是一种后退而不是一种进步,不过MVC模式给我们带来的影响不仅限于我们所看到的这一点..MVC看 ...
- zabbix系列之监控类型及方式
http://www.ttlsa.com/zabbix/how-to-chose-zabbix-item-type/ zabbix提供十几种监控类型: 监控类型 特性 备注 Zabbix agent ...