• 如何用Jmeter编写脚本压测?


    随着商业业务不断扩张,调用adsearch服务频率越来越高,所以这次想做个压测,了解目前多少并发量可以到达adsearch服务的界值。

    这次选用的jmeter压测工具,压测思路如图:

    一、日志入参

    日志选取的adsearch 的 getads部分

    思路: rd线上获取该部分入参下载到本地,我们读取该部分生成入参对象。(这个套路用到很多工具上,比较省事不用拼参数)

    如图:

    通过jaskson库扫描文件转成对象 

    ps:jaskson开源库,用于处理JSON和xml生成对象,百度一下很多博客,遇到问题可以直接搜索都有解决方案。

    我们拿到日志之后简单处理下,变成如图格式,在我们读取的要文件的时候,注意下哪部分入参,jaskson是把json结构结合构造函数,自动完成set动作生成有值的对象。

    同时,我也为大家准备了一份软件测试视频教程(含面试、接口、自动化、性能测试等),就在下方,需要的可以直接去观看,也可以直接点击文末小卡片免费领取资料文档

    软件测试视频教程观看处:

    字节大佬教你逼自己如何在15天内掌握自动化测试(接口自动化/APP自动化/Web自动化/性能测试),内含项目实战

    二、jmeterGUI并发

    1.依赖jar包

    如何打包

    idea直接使用marven→package就可以把项目打成jar包。打包jar在项目本地路径/target/.jar

    jar放置哪里

    项目jar包和依赖jar需要放置在jmeter本地路径:./jmeter/apache-jmeter/lib/ext/

    • 坑1:我之前放置在lib同级目录 extras/下面,一直没有办法运行,后面注意看清楚。
    • 坑2:./lib/ 下面jmeter相关的jar不要乱动,否则坑死你,各种莫名错误。

    项目相关依赖jar包

    因为要调用adsearch肯定要有adsearch的jar,但是还有其他,你有不知道怎么办呢,这坑了好久,后面发现一个办法: 

    • 就是你不知道依赖什么jar先用jmeter的GUI端运行一下,同时打开/bin/jmeter.log查看报错,非常详细,缺少那个,找个那放进去就行了。

    三、参数设置

    • 线程数:并发量,可以理解一次有多少用户同时访问。

    • Rame-Up(secondes):jmeter每个多少s增加并发。

           举例:1000线程,rame-up=10s。即每s增加100线程。

    • 循环次数:一个线程循环多少次

    jmeter并发,注释链接服务的打印,不然打印结果也会被搭理自动请求,服务会提示有误

    报错如图:

    解决方案: 

    四、结果分析

    • 下游最大调用量20万/min :adsearch→zzsearch/zzqr 

    • 最大响应时间:500ms
    • 最大qps:不断增加并发数,增加一个值后tps出现下降,那么最大tps就是那个值。

    • 最大并发数:不断增加并发数,增加到某个值后,服务端不断出现超时,则最大并发数就是那个值。

    五、启动多个jmeter实例,会提示端口占用

    如图: 

    送给大家一句话,共勉:当我们能力不足的时候,首先要做的是内修!当我们能力足够强大的时候,就可以外寻了! 

    PS:这里分享一套软件测试的自学教程合集。对于在测试行业发展的小伙伴们来说应该会很有帮助,有需要的朋友你可以dd我。除了基础入门的资源,博主也收集不少进阶自动化的资源,从理论到实战,知行合一才能真正的掌握。全套内容已经打包到网盘,内容总量接近100个G。

    ☑ 240集-零基础到精通全套视频课程
    ☑ [课件+源码]-完整配套的教程
    ☑ 18套-测试实战项目源码
    ☑ 37套-测试工具软件包
    ☑ 268道-真实面试题
    ☑ 200个模板-面试简历模板、测试方案模板、软件测试报告模板、测试分析模版、测试计划模板、性能测试报告、性能测试报告、性能测试脚本用例模板(信息完整)

    这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

  • 相关阅读:
    jQuery常用API--效果
    软件测试相关知识
    SpringBoot-AOP-Logback用切面拦截操作日志
    冒泡法排序哪错了,明明和书上一样呀
    态势丨黑客侵扰加剧,靶场为网络安全架设“防御盾”
    深度强化学习DRL现存问题和训练指南(D3QN(Dueling Double DQN))
    提取字母后数字
    SpringBoot——整合Mongodb
    WebGIS----前端(二)
    Microsoft Edge浏览器:高效、简洁、个性化的网页浏览体验
  • 原文地址:https://blog.csdn.net/huace3852/article/details/132672585