性能测试系列干货!JMeter核心技术:上篇

Posted 测试小工

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了性能测试系列干货!JMeter核心技术:上篇相关的知识,希望对你有一定的参考价值。

↑↑↑↑


为什么选择JMeter



对于服务端的性能测试,其实有非常多的工具,比如:JMeter,Loadrunner,Locust,Apache Bench(ab)等


那为什么要选择Jmeter呢:


  • JMeter开源免费,而Loadrunner高昂的价格,让许多企业用户望而却步。

  • JMeter安装简易,并且支持多平台运行:Windows,Linux,Mac


  • JMeter提供了丰富的组件和各种插件,并提供了二次开发的入口来满足用户的定制化需求。


  • JMeter在国内的生态非常好,有许多质量优秀的教程,为初学者提供了非常良好的生态环境。





JMeter核心技术



网上有非常多JMeter的基础教程和示例,本文重在帮你理清JMeter的核心技术。


JMeter系列文章3篇,本文为上篇(入门篇):

    上篇(即本篇),主要围绕以下3点:

    • 线程组

    • 元件和组件

    • 实战 - 发送一个请求


    中篇(进阶篇),主要围绕:

    • 参数化

    • 分布式压测


    下篇:

    • Jmeter二次开发

    • Bean Shell


接下来,我们正式开始进入到JMeter上篇的核心内容。




JMeter核心技术:线程组



线程组是JMeter进行性能测试最基础的组件,线程组中可以有多个线程,每一个线程,可以理解为一个用户。


我们来看下线程组中的关键配置:

【性能测试系列】干货!JMeter核心技术:上篇


除了理解线程组的配置,这里需要特别注意一点,JMeter的线程数,是会占用硬件资源的,切记不能盲目加大线程数,在执行性能测试时,最好使用性能较好的机器,防止线程因为硬件配置不足,导致性能测试结果出现较大偏差。




JMeter核心技术:元件和组件



我们先来了解下JMeter元件和组件之间的关系:

  • 元件是具备相似功能的组件的集合

  • 而每一个功能则对应一个组件(比如HTTP Request),是JMeter的最小组成部分

  • 各个元件由具备相似作用的组件共同组成


我们来看下下面这张图,进一步来理解JMeter的主要元件:

【性能测试系列】干货!JMeter核心技术:上篇




JMeter核心技术:实战-模拟用户登录操作



我们先来定义一下本次实战的场景:

    10个用户,在5秒内启动,每个用户进行15次登录。


实现步骤:

  • 新建一个测试计划

  • 新建一个线程组,用于生成线程(用户),以下是线程组的配置:

【性能测试系列】干货!JMeter核心技术:上篇


  • 新建一个HTTP Requests(http请求),用于模拟线程(用户)登录操作

        【性能测试系列】干货!JMeter核心技术:上篇


  • 新建一个Responce Assertions响应断),用于判断是否成功登录指定用户

   

【性能测试系列】干货!JMeter核心技术:上篇


  • 新建一个View Result Tree(查看结果树),查看请求和响应数据

    

【性能测试系列】干货!JMeter核心技术:上篇

 可以看到,响应数据中返回的phone和我们断言设置的预期结果一致


以上就是使用JMeter发送请求最简单的一个实例,这个实例中还不涉及到一些进阶使用,比如参数化等,后续文章会提到。



↓↓↓↓↓↓↓↓

测试小工

长按二维码/微信扫码  关注




 推 荐 阅 读 
福利  |  

测试开发系列 | 

测试开发系列 |  

自动化测试 | 

测试必须懂 |  


END


觉得还不错,请点这里↓↓↓


以上是关于性能测试系列干货!JMeter核心技术:上篇的主要内容,如果未能解决你的问题,请参考以下文章

源码时代软测干货分享|Jmeter性能测试实战(上)

2019-2021:测试实用干货精选汇总

性能测试 性能测试实战Jmeter性能测试平台开发,性能测试平台架构解析 ,性能测试平台搭建 分布式性能压测平台 Jmeter分布式性能测试管理平台 性能测试平台示例案例 《完结篇》

Jmeter性能实战--实现接口压测完整流程(一)

Jmeter学习-性能测试准备工作

全链路压测核心技术解析