ctx
对象(JMeterContext)
ctx
对象是 JMeter 中最强大的内置变量之一。它代表 JMeter 的上下文,提供对 JMeter 引擎、取样器、线程等的读写访问。在 JMeter 内部,ctx
映射为 org.apache.jmeter.threads.JMeterContext
类。由于 JMeterContext 不具有线程安全性,故仅适用于在单线程中使用。
以下是一些常用方法:
-
getCurrentSampler()
: 获取当前取样器。-
Sampler sampler = ctx.getCurrentSampler()
-
log.info("当前取样器名称: " + sampler.getName())
-
-
getEngine()
: 获取 JMeter 引擎。-
StandardJMeterEngine engine = ctx.getEngine()
-
log.info("JMeter 引擎: " + engine)
-
-
getPreviousResult()
: 获取上一个取样器的结果。-
SampleResult previousResult = ctx.getPreviousResult()
-
log.info("上一个取样器的响应时间: " + previousResult.getTime())
-
-
getThread()
: 获取当前线程。-
JMeterThread thread = ctx.getThread()
-
log.info("当前线程名称: " + thread.getThreadName())
-
-
getVariables()
: 获取当前线程的 JMeter 变量。-
JMeterVariables variables = ctx.getVariables()
-
log.info("当前线程的变量: " + variables)
-
prev
对象(SampleResult)
prev
对象是SampleResult
类的一个实例,它是一个对象,可以存储上一个请求(或者说上一个取样器)的结果信息。prev
变量的作用域是当前线程组,并且只能在后置处理器(PostProcessor)或断言(Assertion)中使用。
-
getSampleLabel()
: 获取取样器标签。-
String label = prev.getSampleLabel()
-
log.info("取样器标签: " + label)
-
-
getResponseData()
: 获取响应数据。-
byte[] responseData = prev.getResponseData()
-
log.info("响应数据: " + new String(responseData))
-
-
getResponseCode()
: 获取响应代码。-
String responseCode = prev.getResponseCode()
-
log.info("响应代码: " + responseCode)
-
-
getTime()
: 获取响应时间。-
long time = prev.getTime()
-
log.info("响应时间: " + time + " ms")
-
-
getURL()
: 获取请求的 URL。-
URL url = prev.getURL()
-
log.info("请求的 URL: " + url)
-
总结
以上就是小编今天为各位小伙伴准备的内容,如果你想了解更多关于Python自动化测试的知识和技巧,欢迎关注我。
感谢每一个认真阅读我文章的人!!!
作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。