Jenkins+ant+jmeter小白入门篇(一)

本次在windows版本中进行研究
书写本文目的是为了跟我一样的小白们少走一些弯路,把我现在摸索出来的正确打开方式总结一下,望共勉,此外里面内容还有好多我不太懂的地方还请路过的大神们多多提出宝贵意见,3Q!

  • 首先了解下什么是接口测试:

一、什么是接口测试?

接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。
  接口测试适用于为其他系统提供服务的底层框架系统和中心服务系统,主要测试这些系统对外部提供的接口,验证其正确性和稳定性。接口测试同样适用于一个上层系统中的服务层接口,越往上层,其测试的难度越大。
  接口测试实施在多系统多平台的构架下,有着极为高效的成本收益比,接口测试天生为高复杂性的平台带来高效的缺陷监测和质量监督能力。平台越复杂,系统越庞大,接口测试的效果越明显。
  基于接口测试的重要性,以及它比较容易自动化的特性,通过持续集成的接口监控能够及时的发现项目中存在的问题,这对持续运营的项目来说,非常重要。

二、接口测试的流程

1、 项目启动后,测试人员要尽早找到开发人员拿到接口测试文档
  2、 获取接口测试文档后,就可以进行接口用例的编写和调试
  3、 接口用例编写调试完成后,部署到持续集成的测试环境中,
  4、 设定脚本运行频率,告警方式等基本参数,进行接口的日常监控
  5、 每日进行接口脚本的维护更新,接口异常的处理

  • 然后准备好测试脚本

    1. 那个不知道jmeter怎么用的可以先学习一下jmeter的 基本用法
    2. 这里我提前准备好了一个jmx文件(提取码:a446)
    3. 这里是我们使用非 GUI 模式运行测试脚本时可以使用的一些命令:
      -h 帮助 -> 打印出有用的信息并退出
      -n 非 GUI 模式 -> 在非 GUI 模式下运行 JMeter
      -t 测试文件 -> 要运行的 JMeter 测试脚本文件
      -l 日志文件 -> 记录结果的文件
      -r 远程执行 -> 启动远程服务
      -H 代理主机 -> 设置 JMeter 使用的代理主机
      -P 代理端口 -> 设置 JMeter 使用的代理主机的端口号
      例如:
      jmeter -n -t test.jmx -l logfile1.jtl -H 192.168.1.1 -P 8080
      其中可以给jmx文件指定路径,也可以给输入日志文件指定输出路径
执行结果.png
  • 如果要在windows机器上执行这个命令行,有两
    第一种方法:通过cmd 进入到 *\apache-jmeter-2.13\bin(也就是jmeter所在的目录)中执行
    第二种方法:通过给jmeter配置环境变量,
    1. JMETER_HOME:E:\workplace-jenkins\apache-jmeter-2.13\bin
    2. PATH: %JMETER_HOME%bin
    3. CLASS_PATH: %JMETER_HOME%lib
    注:这里有的时候用%JMETER_HOME%不好用,可以换成绝对路径;如果用第二种方法配置以后,则在任何路径下都可以执行jmeter命令了,我比较推荐这个;在这里最好能实现通过命令行执行jmx以后再往下进行

  • Jenkins for windows 的安装

    1. 首先需要下载Jenkins的安装包,或者根据自己需要Jenkins官网下载
    2. 下载好windows版以后,直接解压打开msi


      安装包.png
    3. 安装的过程中选择好路径,然后就是傻瓜式的下一步,完成后会自动打开Jenkins的网站:
      http://localhost:8080
      即${安装机器的ip}:8080
    4. 首次进入会有个密码,根据红色提示信息 ,复制到 在文件管理器中找到密码
Paste_Image.png
  1. 选择推荐插件就行,运气好能少失败几个,然后就等着吧 ,等到进度条到头的时候(这时候Jenkins不一直在那不动,我也不知道为啥,欢迎指教),可以手动刷新页面再次进入Jenkins,选择continue就可以

主页.png

可以先去修改个密码省的下次登录还得找 “系统管理->管理用户”

  • 安装好了以后还需要准备一个build.xml文件

直接手动建立一个build.xml文件放在你认为合适的地方,因为一会建job还要用呢!
    <?xml version="1.0" encoding="utf-8"?>
    <project name="JmeterTest" default="all" basedir=".">
        <tstamp>
              <format property="time" pattern="yyyyMMddhhmm" />
        </tstamp>
    <!-- 需要改成自己本地的 Jmeter 目录-->
    <property name="jmeter.home" value="E:\workplace-jenkins\apache-jmeter-2.13\" />
    <!-- jmeter生成jtl格式的结果报告的路径-->
    <property name="jmeter.result.jtl.dir" value="E:\workplace-jenkins\jmeter-restult\jtl" />
    <!-- jmeter生成html格式的结果报告的路径-->
    <property name="jmeter.result.html.dir" value="E:\workplace-jenkins\jmeter-restult\html" />
    <!-- 生成的报告的前缀 -->
    <property name="ReportName" value="TestReport" />
    <property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}.jtl" />
    <property name="jmeter.result.htmlName"         value="${jmeter.result.html.dir}/${ReportName}${time}.html" />
    <!-- 接收测试报告的邮箱 -->
    <property name="mail_to" value="XX@gmail.com" />
    <!-- 电脑地址 -->
    <property name="ComputerName" value="andre" />
    <target name="all">
        <antcall target="test" />
        <antcall target="report" />
    </target>
    <target name="test">
        <taskdef name="jmeter"   classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" />
        <jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}">
            <!-- 声明要运行的脚本。"*.jmx"指包含此目录下的所有jmeter脚本 -->
            <testplans dir="E:\workplace-jenkins\test_case" includes="*.jmx" />
        </jmeter>
    </target>
    <target name="report">
        <xslt in="${jmeter.result.jtlName}" out="${jmeter.result.htmlName}" style="${jmeter.home}/extras/jmeter.results.shanhe.me.xsl" />
        <!-- 因为上面生成报告的时候,不会将相关的图片也一起拷贝至目标目录,所以,需要手动拷贝 -->
        <copy todir="${jmeter.result.html.dir}">
            <fileset dir="${jmeter.home}/extras">
                <include name="collapse.png" />
                <include name="expand.png" />
            </fileset>
        </copy>
    </target>
    <!-- 发送邮件 -->
    </project>

查阅了大量的文章,写法都差不多,但是我还不能自己优化,故直接拿来,记录下待他日有深刻体会时再次修改,特别说明一个地方:${jmeter.home}/extras/jmeter.results.shanhe.me.xsl这个是我下载的一个第三方模板(提取码:d982),有兴趣你也可以下个试试,不过jmter自带了4个模板

  • 准备差不多了,现在就建个job体验一下

新建.png

然后:

job名字.png

别的不用管直接到增加构建步骤:

构建.png
Paste_Image.png

添加参数:
Targets:参数你研究一下build.xml文件就知道了
build file : build.xml路径

Paste_Image.png

点击保存即可。

然后点击构建,我这里成功了。

Paste_Image.png
Paste_Image.png

还可以去看一下生成的报告:

Paste_Image.png
  • 到现在为止一个Jenkins+jmeter+ant自动化的框架基本搭建完事了,剩下的就是看你怎样发挥你的想象力去创造了,后续还会更新一些创建report,以及发送报警邮件等等的其它功能,待续!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,053评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,527评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,779评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,685评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,699评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,609评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,989评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,654评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,890评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,634评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,716评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,394评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,976评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,950评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,191评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,849评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,458评论 2 342

推荐阅读更多精彩内容