需求如下:
当某个http response包含"status" : "STARTED"的时候,间隔固定时间,进行持续刷新.当Response包含"status" : "READY"时,则停止刷新,进行下一个其他请求.
第一步:我们直接请求某个request,在http请求下面添加Regular Expression Extractor抽取status状态:
第二步:添加While Controller, 引用上一步中定义的status变量去判断status的值.此处当status的值不为STARTED,则退出While.
第三步: 在While里面再次添加在第一步中添加的相同的http请求,项目的结构如下:
小小提示:
- 可以在http请求的名字中加入线程数${__threadNum}便于调试
- 可以在适当的位置加入Debug Sampler,它可以输出Jmeter的属性和变量.可以将它理解为只输出变量值的http请求.它可以再View Results Tree中被看到
- 可以使用${__Random(100,999,)}函数来产生随机数.在上述情况中,它对于每个http请求,都能产生一个新的值.如果该函数定义与User Defined Variables,那么将为每个Thread产生一个值
- 在使用While Controller之前, status变量必须先被定义,否则While Controller是不会被执行的.这也是为什么本例要将同样的请求在while之前放一个,在while里面也放一个
- Constant Time用于设置Http请求的间隔时间
- 除了使用Regular Expression Extractor,还可以使用Xpath Extractor抽取页面上的属性或者值
- "View Results in Table" Lister可以看到每个请求的开始时间
本文出自"lijingshou"博客,转载请务必保留此出处http://lijingshou.iteye.com/blog/2051480
相关推荐
- **录制JMeter脚本**:有两种方法可以实现脚本的录制:一是通过配置JMeter的代理服务器功能;二是使用第三方工具BadBoy。这两种方法都旨在帮助快速生成测试脚本。 - **脚本录制JMeter**:首先,在JMeter的工作台中...
2. **采样器(Sampler)**:用于发送请求到服务器,比如HTTP请求、FTP请求、数据库查询等。2.5.1版本中包含了各种常见的采样器。 3. **监听器(Listener)**:用于收集并显示测试结果,例如查看响应时间、错误率、...
- **模块控制器**:复用已有的采样器,减少重复工作。 - **分布式测试配置**:通过jmeter-server脚本在多台机器上启动JMeter服务器,配合主JMeter进行分布式测试。 总之,Apache JMeter 3.1是一个强大且灵活的测试...
在JMeter 4.0中,常见的采样器如HTTP Request用于发送HTTP请求,FTP Request用于FTP操作,JDBC Request则用于数据库操作。每个采样器都可以配置详细的请求参数,如URL、方法(GET、POST等)、数据源等。 5. **逻辑...
- 取样器:发送请求到服务器并记录响应。 - 监听器:显示测试结果。 - 断言:验证测试结果是否符合预期。 - 配置元素:为测试提供配置信息。 - **4.3 创建测试计划** 创建测试计划的第一步是打开JMeter,并...
1. **采样器(Samplers)**:采样器负责发送请求给服务器,可以是HTTP请求、FTP请求、数据库查询等。例如,HTTP采样器用于测试Web应用,而JDBC采样器则用于执行SQL查询。 2. **断言(Assertions)**:断言用于验证...
取样器负责发送请求并接收响应,常见的取样器类型有: - **HTTP请求**:模拟HTTP请求,包括GET、POST等方法。 - **FTP请求**:模拟FTP文件传输操作。 - **JDBC请求**:用于测试数据库连接。 ##### 监听器 (Listener...
压力测试的主要目标是评估系统在高负载条件下的性能表现,这有助于确定系统的极限容量并识别潜在的瓶颈。具体来说,压力测试通常有两个核心目的: 1. **稳定性验证**:确认应用在承受高并发请求时是否会出现错误或...
6. **取样器**:取样器是实际向服务器发送请求的元件,可以模拟各种协议的请求,如 HTTP、FTP、SMTP 等。你可以设置不同的请求类型、参数、头信息等,以测试服务器的不同功能。 7. **后置处理器**:后置处理器在...
采样器是JMeter用来发送各种类型请求的组件,如HTTP、FTP、JDBC等。在Web性能测试中,HTTP采样器是最常见的,它可以发送GET或POST请求,模拟用户浏览网页、填写表单等操作。采样器返回的结果可以被后续的断言组件...
根据提供的文件信息,我们可以深入探讨JMeter中JSON数据组装的方法以及如何使用不同的组件来实现这一目标。本篇文章将重点解析JMX文件中的关键组件及其在处理JSON格式数据时的应用。 ### JMeter概述 Apache JMeter...
测试Action通常是为了确保它能够正确地响应各种输入,包括合法的、非法的以及边界条件,同时验证其对模型的修改是否正确,并且能够引导用户到达预期的视图。 在标签“moke”中,虽然没有提供具体含义,我们可以假设...
5. **幂等性**:POST请求理论上是非幂等的,但针对新建课程,多次执行同一请求不应创建重复的课程。如果服务器实现了幂等性,那么多次调用应始终创建一个新课程,而不是多个。 6. **性能和压力测试**:评估接口在高...
4. **执行请求**:发送请求到目标接口,记录响应时间、状态码、响应体等信息。 5. **验证响应**:对比预期结果与实际响应,检查数据的正确性,如果有问题,记录并报告错误。 6. **自动化测试**:对于重复性的测试,...
4. **执行测试**:使用自动化工具或手动发送请求,验证响应内容、状态码、错误信息等是否符合预期。 5. **结果分析**:记录测试结果,分析失败原因,反馈给开发团队进行修复。 6. **回归测试**:在修复后重新运行...
ApacheBench的工作原理是向指定的URL发送一系列请求,并记录服务器的响应时间、吞吐量等指标。通过这些数据,我们可以分析服务器在高负载下的表现,找出可能的瓶颈,优化配置,或者确定硬件升级的需求。 使用ab工具...
3. 使用工具发送请求,收集响应数据。 4. 验证响应数据,使用断言确保预期结果。 5. 记录测试结果,对失败的用例进行调试和修复。 6. 执行回归测试,确保修改后接口功能正常。 在接口测试中,为了保证准确性,可以...
接口测试通常针对的是系统间的通信,即一个系统通过API向另一个系统发送请求并接收响应。在Java中,我们可以利用HTTP客户端库,如Apache HttpClient或OkHttp,来模拟这些请求。同时,我们还需要理解HTTP协议的基本...
WAST提供了一种脚本语言,可以编写模拟用户行为的脚本,比如发送HTTP请求、模拟登录和导航操作。学习这种脚本语言对于创建真实世界的测试场景至关重要。你还可以设置并发用户数量、持续时间以及其他参数,以模拟...