搭建windows远程节点_jmeter自动化测试环境(接口测试)

WINDOWS10系统下
环境
172.16.0.115虚拟机windows系统做为远程节点。
jenkins安装在172.16.0.119:8088虚拟机中。
1、安装配置Java环境
 
windows10中安装java
JAVA_HOME:安装地址
path:
%Java_Home%\bin
%Java_Home%\jre\bin
 
2、安装jmeter
可经过直接运行ApacheJmeter启动jmeter
此安装的jmeter3.4.0版本。
 
3、.Jenkins配置(远程链接windows10)
参考:
 
配置jenkins(linux系统下)做为master远程构建执行windows系统slave测试。
实现安装在Linux的Jenkins能够执行Windows下的selenium test case
1.配置Jenkins的Windows节点
1.1 点击左侧面板中:
系统管理->管理节点
1.2 点击左侧面板:新建节点
1.3 输入节点名称,选择Dumb Slave(如今叫Permanent Agent),点击OK
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只能登一个帐号,因此后期再研究这种方式。
* 其余可随意或默认
1.5 save成功后出现如下记录
以你建立的名字显示的,未链接的节点机器。若取名“windows demo”则以下图
 
1.6 配置Windows机器
在目标Windows目录中建立上述的远程工做目录:C:\jenkins_jmeter(此工做目录,为节点默认工做目录,后面可在工程任务中单独设置工做目录)
点击机器名:Windows_demo,出现以下页面:
将Run from slave command line下的slave.jar下载到远程工做目录下,同时将Java命令复制到txt文件中,保存成bat文件。
双击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服务器端的配置细节                         
若是上面的窗口中显示Connected,但是一会有出现了Terminated的状态,那么极可能是由于你的jenkins配置权限的时候没有给匿名用户启动slave的权限: http://stackoverflow.com/questions/14277512/problems-launching-the-slave-agent-via-java-web-start-on-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部分的权限。以下:
 
链接成功撒花✿✿ヽ(°▽°)ノ✿。
 
4、安装配置ant
在windows远程节点115上安装ant
java版本1.8,和ant版本1.8匹配。并下载ant1.8进行安装。
环境变量配置:
ANT_HOME:安装文件路径
Path:%ANT_HOME%\bin
ClassPath: %ANT_HOME%\lib
安装完成。
 
5、jenkins配置任务(runJmeter工做)
1.建立项目任务:命名“RunJmeter_win10_115”
2.配置工程
2-1.勾选Restrict where this project can be run,限制项目运行节点 (肯定工程运行的节点,也就是咱们的115windows虚拟机)
2-2.勾选“使用自定义的工做空间”,并输入节点windows上的项目工做根目录。(输入根目录后,接下来的设计目录路径的地方都是以此根目录开始)
2-3.在构建中,选择“invoke ant”借助ant执行构建项目,填写构建xml文档,后面将如何编写build.xml。(此时填写绝对路径、或相对路径都行,相对路径既相对工做空间根目录设置)
2-4构建后操做中,“增长构建后操做步骤”下拉选择“Publish HTML reports”。
 
2-5在publish Html reports中配置,其中JmeterTestReports.html文件,为构建后产生的报告文件,须要在build.xml中去命名,名称需一致。
2-6构建后操做,再增长“Publish Performance test result report",并进行配置。填写Jmeter生成的Jtl结果文件路径和文件名称。此jtl文件名称依旧会在build.xml文件中命名。后面会讲到。ps.若不想写死文件名称,可用“*.jtl”代替,表述读取当前文件夹下全部jtl格式的文件,弊端是若没有清理之前的jtl文件,展现出其余的结果。
2-7增长构建后操做,“E-mail Notification”简单的发信,构建失败即发送邮件。(ps.没法判断构建成功,但jmeter中执行失败的状况,没法发信,后面将增长工程任务,专门判断Jmeter结果中若是有failed,则发信提醒。)如何配置jenkins发信邮箱,请百度。
 
6、在windows远程节点上部署文件和构建ant与jmeter文件目录
6-1.windows10(172.16.0.115)c盘下目录路径以下图。
其中,jenkins_jmeter文件夹为链接jenkins单独设置的节点工做空间。
ant和jmeter本来能够不用在AutoTestJmeter_Jenkins文件夹下,只是为了方便管理和维护,在Build.xml文件中会写到jmeter的路径,所以统一放到此目录下。
按照以下图结构,去建立文件夹,名字及大小写一致,可不用更改build.xml。若更改,则xml跟随更改。
 
6-2.配置编写build.xml
build.xml分别有详细的复杂,和简单部分编写的简单版。接下来介绍简单的
具体详细的都在文件中有备注,此处很少说了 。
7、在Jenkins上建立后续发信任务。(构建成功,但jmeter执行失败,发送执行失败的报错信息)
7-1建立新项目任务,取名“After115SendEmails”,或者本身随便取。
勾选Restrict where this project can be run ,并输入windows系统节点。
勾选“使用自定义的工做空间”并输入windows定义的工做根目录。
此处配置与配置主要Jmeter项目任务相同。
7-2 构建触发器
勾选“Bulid after other project are built”,并输入上一执行Jmeter项目的名称。
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
 
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"}
 
PS.注意触发条件。以下图。其余的东西还能够多看看。
至此文档结束。
相关文章
相关标签/搜索