• Jmeter系列(41)- Jmeter + Ant +Jenkins 持续集成


    如果你想从头学习Jmeter,可以看看这个系列的文章哦

    https://www.cnblogs.com/poloyy/category/1746599.html

    Window 环境准备

    安装 ant:https://www.cnblogs.com/poloyy/p/13267159.html

    安装 jenkins:https://www.cnblogs.com/poloyy/p/13269167.html

    Jenkins 配置 Ant

    进入插件管理安装 ant 插件

    进入 Global Tool Configuration,安装 Ant

    默认会读取 ANT_HOME 环境变量设置好的 ANT 安装路径

    本机配置 ant

    修改 jmeter.properties

    修改成  jmeter.save.saveservice.output_format=xml

    为了后面生成 html 报告需要设置

    移动 ant-jmeter-***.jar

     

    将  E:apache-jmeter-5.2.1extras 下的 ant-jmeter-1.1.1.jar 复制到 E:apache-ant-1.9.14lib 

    这是用于发送邮件的,如果不发邮件可忽略

    创建一个 items 项目

    最后一步添加 build.xml 至关重要!!

    至此创建成功

    讲解 build.xml(重点)

    前提

    先提供一个改好的 build.xml,不想看步骤的可以直接下载改一些配置即可,需要改的地方都标出来了

    链接:https://pan.baidu.com/s/116VUyjmf6pKGb1aY4ob_0Q

    提取码:lnvy

    project 标签

    作用

    ant 的根目录,每个 build 文件必须包括一个 project

    属性含义

    属性 含义
    name project 的名字
    default 默认执行的 target 任务
    basedir 指定的根路径

    详解 default 默认执行的任务

    在项目构建的 ant 配置中,如果 Targets 为空,则代表不指定需要执行的 target 任务

     default = "all" ,则名为 all 的 target 将会被默认执行(上图看箭头就懂了)

    target 标签

    作用

    target 为 ant 的基本执行单元,它可以包含一个或多个,多个之间可以存在相互依赖关系

    属性含义

    属性 含义
    name target 任务名称
    depends 依赖的父节点名称

    property 标签

    作用

    创建一个属性,全局通用

    name:属性名

    value:属性值

    如何引用属性:${name}

    修改 build.xml

    修改 property

    这里修改 jmeter 相关的属性,方便后续复用

    修改 jmeter脚本路径

    需要修改 .jmx 文件所在路径和文件名

    修改测试报告模板

    修改邮件相关

    • 要记住需要开启 smtp 服务,一般在邮箱设置-账户安全下面开启
    • 注意不同邮箱的 smtp 服务地址是不一样的哦,以发送人邮箱为准  
    • password 属性需要填授权码哦!不同邮箱生成授权码方式也不一样,看下面图片圈起来地方
    • mailport 属性,不同的邮箱,端口也是不一样的,163邮箱就是25

    下图是 qq 邮箱

    下图是 163 邮箱

    163邮箱的服务器地址和端口号

    构建项目

    构建成功

    查看邮箱

    构建常见问题

    如果下面的错误,参考这篇博文来解决问题哦:https://www.cnblogs.com/poloyy/p/13274741.html

    如果是下面的错误,需要检查邮箱发送者的账号和授权码是否填对了哦

    题外话

    • 这里我讲解的邮件发送时通过 build.xml 来配置发送邮件的内容
    • 当然也可以通过 jenkins 的邮件服务来发送邮件
    • 但相比而言,在 build.xml 中配置会容易上手
  • 相关阅读:
    Silverlight C# 游戏开发:Flyer05与什么什么进行搏斗
    Silverlight C# 游戏开发:Flyer07做一个有开始的游戏
    Silverlight C# 游戏开发:面向对象在游戏中的实例(一)
    Silverlight C# 游戏开发:面向对象在游戏中的实例(二)
    Silverlight C# 游戏开发:Flyer06小小的改进让游戏更有趣
    linux网络命令ip\route\links回顾
    Google Style的C++编码规范
    TCP/IP协议和IP组播的视频传输
    Multicast server and client in Python
    用户profile中umask码的含义详解(默认是022)
  • 原文地址:https://www.cnblogs.com/poloyy/p/13269049.html
Copyright © 2020-2023  润新知