JMeter工具可用于性能测试、功能测试和压力测试,是一款功能十分强大的自动化测试工具。
1、启动Jmeter。进入bin目录运行jmeter.bat启动jmeter。打开的时候会有两个窗口,JMeter的命令窗口和JMeter的图形操作界面,不可以关闭命令窗口(如果你关闭了命令窗口,JMeter图形操作界面也会被关闭)。如下图:
文章图片
【Jmeter工具基础功能操作】2、修改语言。默认是英文的,若要修改成中文的,选择Option选项下的Choose Language,选择Chinese就可以了。如果你喜欢其他语言,选择对应的就可以了。
文章图片
3、添加线程组。右击测试计划,选择添加->Threads->线程组。线程组的名字根据你的需要随意取一个就好,只是一个名字,不影响其他操作。
文章图片
(1)、thread group(线程组)
这个就是我们通常添加运行的线程。通俗的讲一个线程组,可以看做一个虚拟用户组,线程组中的每个线程都可以理解为一个虚拟用户。
(2)、setup thread group
一种特殊类型的ThreadGroup,可用于执行预测试操作。这些线程的行为完全像一个正常的线程组元件。不同的是,这些类型的线程执行测试前进行定期线程组的执行;类似LoadRunner的init,测试开始时进行初始化的工作。
(3)、teardown thread group
一种特殊类型的ThreadGroup,可用于执行测试后动作。这些线程的行为完全像一个正常的线程组元件。不同的是,这些类型的线程执行测试结束后执行定期的线程组;类似LoadRunnner的end,测试结束时进行回收工作。
4、线程组
文章图片
在取样器错误后要执行的操作:
- continue:继续执行接下来的操作;
- Start Next Thread Loop:开始下一次循环;
- stop Thread:停止线程,退出该线程(不再执行此线程的操作);
- stop Test:等待当前执行的采样器结束后,结束整个测试;
- Stop Test Now:马上停止测试;
- Number of Threads(users):线程数,相当于模拟的用户数量;
- Ramp-up Period(in seconds):达到指定线程需要的时间,例如线程数为100,时间设定为10s,那么就是10s加载100个线程,每秒启动的线程数=100/10=10;
- Loop Count:如果填具体的数值,就是循环对应的次数;如果选择“Forever”,则一直执行下去,直到手动停止;
- Delay Thread creation until needed:延迟线程创建,直到需要才创建。
- 调度器:需要选中调度器(scheduler),调度器配置才生效
- 持续时间(秒):测试计划持续多长时间
- 启动延迟(秒):测试计划延迟多少时间启动
文章图片
6、逻辑控制器。逻辑控制器,包括两类无件,一类是用于控制Test plan 中 sampler 节点发送请求的逻辑顺序的控制器,常用的有 如果(If)控制器 、 switch Controller 、Runtime Controller、循环控制器等。另一类是用来组织可控制 sampler 来节点的, 如 事务控制器、吞吐量控制器。
文章图片
7、前置处理器。前置处理器用于在实际的请求发出之前对即将发出的请求进行特殊处理。如,HTTP URL重写修复符则可以实现URL重写,当RUL中有sessionID 一类的session信息时,可以通过该处理器填充发出请求的实际的sessionID。
文章图片
8、后置处理器。后置处理器是用于对Sampler 发出请求后得到的服务器响应进行处理。一般用来提取响应中的特定数据。例如,正则表达式提取器,则可以提取响应数据中通过正则表达式获得的数据(如登录过后的token信息)
文章图片
9、断言。断言用于检查测试中得到的相应数据等是否符合预期,断言一般用来设置检查点,用以保证性能测试过程中的数据交互是否与预期一致。
文章图片
10、定时器。定时器(Timer)用于操作之间设置等待时间,等待时间是性能测试中常用的控制客户端QPS的手段。
文章图片
11、配置元件。用于提供对静态数据配置的支持。CSV Data Set config 可以将本地数据文件形成数据池 (Data Pool),而对应于HTTP Request Sampler和 TCP Request Sampler等类型的配制无件则可以修改 Sampler的默认数据。常用到的HTTP信息头管理器,可以添加一些头部信息,如token。HTTP 请求默认值不会触发Jmeter发送http请求,而只是定义HTTP请求的默认属性。
文章图片
12、监听器。用来对测试结果数据进行处理和可视化展示的一系列元件。 图形结果、察看结果树、聚合报告、用表格察看结果都是我们经常用到的元件。
文章图片
推荐阅读
- 源代码分析|Google C++ 测试框架
- 微信开发者工具|微信开发者工具下载及公众号使用介绍
- 测试|UI自动化
- 软件测试 100 天上岸 2- 测试必须有策略
- 嵌入式开发|键盘驱动程序的修改
- 测试|自动化测试selenium基础篇——webdriverAPI
- ui|16.网络《果壳中的c#》
- 测试|软件测试常见英文单词汇总
- ALS推荐算法—训练并保存—加载并测试