jemeter组成原件和其他的压测工具相同一般由四个方面组成:
①负载发生器:用于产生负载,通常以多线程或者多进程的方式模拟用户行为
②用户运行器:通常是一个脚本运行引擎,用户运行器附加在线程或者进程上,根据脚本需求模拟用户行为。
③资源生成器:用于生成测试过程中的服务器,负载机的资源数据
④报表生成器:根据测试获得的数据生成报表,提供可视化的数据显示方式。
线程组:
三个不同的线程组,只是执行顺序不同
①setup thread group:预测试操作,在另外两个线程组执行之前执行的线程组
②teardown thread group:在另外两个线程执行之后执行的线程组
③thread group:虚拟用户组。线程组的每个线程模拟成每个虚拟用户。
两种控制器:
①逻辑取样器:性能测试中向服务器发送请求,记录响应信息,记录响应时间的最小单元
②逻辑控制器两类:用于控制sampler节点发送请求的逻辑顺序另一种是用来组织可控制的sampler节点的。
定时器:用于操作之间设置等待时间
jemeter运行原理
jmeter基本原理是运行一个线程池,多线程运行产生大量的负载,在运行过程中通过断言来验证结果的正确性,可以通过监听来记录测试结果。如果取样器有参数化要求,可以通过配置元件或者前置处理器完成。如果取样器有关联需求,可以通过后置处理器完成如果模拟负载,比如模拟多少用户,运动多长时间,可以通过线程组完成。如果需要模拟并发场景则通过定时器完成。如果要控制业务执行逻辑,比如登录运行一次,可以通过控制器来完成。