医疗网站建设市场,flash做安卓游戏下载网站,小程序开发平台打不了字,个人官方网站怎么建设我们都知道#xff0c;jmeter 可以做接口测试#xff0c;也可以用于性能测试#xff0c;现在企业中性能测试也大多使用 jmeter。docker 是最近这些年流行起来的容器部署工具#xff0c;可以创建一个容器#xff0c;然后把项目放到容器中#xff0c;就可以构建出一个独立的…我们都知道jmeter 可以做接口测试也可以用于性能测试现在企业中性能测试也大多使用 jmeter。docker 是最近这些年流行起来的容器部署工具可以创建一个容器然后把项目放到容器中就可以构建出一个独立的运行环境
所以有人就想能否把他们俩弄到一块来使用
今天我就来给大家讲讲如何结合起来使用。
首先选择一个 Linux 机器安装 docker
如果对软件测试、接口、自动化、性能测试、测试开发、面试经验交流。感兴趣可以加裙485187702群内会有不定期的发放免费的资料链接这些资料都是从各个技术网站搜集、整理出来的如果你有好的学习资料可以私聊发我我会注明出处之后分享给大家。
用 docker 创建 jmeter 容器(普通 jmeter)
从 nmb-jmeter-docker: 使用 docker 运行 jmeter 进行测试上下载代码到 Linux 机器的/opt 路径下
进入 base-jmeter-docker 文件夹
执行 sh build.sh, 构建本地 jmeter 镜像 默认版本是 jmeter5.1.1 待构建成功之后把用 jmeter 创建的 jmx 脚本文件上传到 Linux 机器的 base-jmeter-docker 路径下执行
sh jmeter.sh -n -t YouJMX_file \-l JTL_date %Y%m%d_%H%M%S.jtl \-j jmeter.log \-e -o Report_date %Y%m%d_%H%M%S
也可以把你的 jmx 文件上传到其他路径在运行 jmeter.sh 命令时指定 jmx 文件路径
这个命令和 jmeter 的 CLI 模式命令是一样的cli 的相关参数也是可以使用。
创建增强型 jmeter 容器(jmeter 带插件) 下载【jpgc-jmeter-docker】文件夹中所有文件 构建本地镜像sh build.sh 使用构建的镜像运行 jmx 文件 sh jmeter.sh -n -t YouJMX_file \ -l YouJTL_date %Y%m%d_%H%M%S.jtl \ -j jmeter.log \ -e -o report_date %Y%m%d_%H%M%S 默认 jmeter 版本为 5.1.1 如果想要更改为其他版本依次修改Dockerfile、build.sh、jmeter.sh 文件中的版本号 5.1.1 注意 请不要指定为低于 5 的版本低于 5生产的 HTML 报告可能有问题 在这个版本改造了 HTML 报告和引入了 jpgc 插件如果你还想要引入其他插件可以自己打包压缩到 JmeterPlugins-jpgc.zip 文件包中。然后执行 sh build.sh 构建新的镜像
创建分布式 jmeter 容器(slave)
做性能测试一般都会遇到 jmeter 不能产生足够数量的并发用户数需要使用分布式来创建足够数量的并发用户数但是现实中我们可能又不能获得足够数量的电脑。
使用 docker 创建 jmeter 的助攻服务这样就能实现理论上一台电脑上创建出任意多个 jmeter 助攻服务产生出足够量的并发用户数。另外在助攻机的维护上也变的更加简单因为所有的助攻机容器都是基于相同的镜像创建理论上所有容器都是一样。 下载【slave-jmeter-docker】文件夹中所有文件 构建本地 slave 镜像sh build.sh 创建 slave 容器 docker run -itd --name slave1 nmb/jmeter-slave:5.1.1 server 重复执行时修改容器名称name值则可创建多个slave容器 默认 jmeter 版本为 5.1.1 如果想要更改为其他版本依次修改Dockerfile、build.sh 文件中的版本号 5.1.1 注意 1、该镜像中加入 jpgc 插件更改了 HTML 报告模板 2、请不要指定为低于 5 的版本低于 5生产的 HTML 报告可能有问题 3、助攻服务端口 1099 5000 因为后面 master 用 link 连接容器所以可以不用映射端口 想要创建多个 slave 容器只需要修改创建容器命令中的指定的容器名称。
每个助攻服务的端口都是 1099 和 5000如果直接映射到宿主机上肯定会出现端口冲突的情况所以我们用 master 连接 link 每个 slave 容器就不用担心端口冲突问题了。
创建分布式 jmeter 容器(master)
下载【master-jmeter-docker】文件夹中所有文件构建本地 master 镜像sh build.sh修改 run-master.sh 文件中 --link 的数量和名称 冒号前面为 slave 容器名称冒号后面为自定义别名 使用 master 容器执行分布式脚本 sh run-master.sh -n \ -R 助攻机别名(多个时用逗号分隔) \ -t YouJMXfile \ -l YouJTL_date %Y%m%d_%H%M%S.jtl \ -j jmeter.log \ -e -o report_date %Y%m%d_%H%M%S 默认 jmeter 版本为 5.1.1 如果想要更改为其他版本依次修改Dockerfile、build.sh 文件中的版本号 5.1.1 注意 请不要指定为低于 5 的版本低于 5生产的 HTML 报告可能有问题 注意
该镜像构建成功后会带有 jpgc 插件可以执行使用 jpgc 插件编写的脚本该镜像还对 jmeter 生产的 HTML 报告进行了改造生产的报告将转换为中文jmeter 分布式主控和助攻机的 jmeter 必须一致所以master 和 slave 的 jmeter 版本务必一致
好了使用 docker 来创建 jmeter 进行性能测试的技术已经讲完了代码已经开源到 gitee, 如果你觉得有用请帮忙点个 star 噢
最后下面是配套学习资料对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库这个仓库也陪伴我走过了最艰难的路程希望也能帮助到你【100%无套路免费领取】 软件测试面试小程序
被百万人刷爆的软件测试题库谁用谁知道全网最全面试刷题小程序手机就可以刷题地铁上公交上卷起来 8小时传疯大厂面试真题全被大佬整理在这个小程序上了【软件测试建议收藏】 涵盖以下这些面试题板块 1、软件测试基础理论 2、web,app接口功能测试 3、网络 4、数据库 5、linux 6、web,app接口自动化 7、性能测试 8、编程基础9、hr面试题 10、开放性测试题11、安全测试12、计算机基础 全套资料获取方式点击下方小卡片自行领取即可