当前位置: 首页 > news >正文

做网站指导网站优化方案设计

做网站指导,网站优化方案设计,在家可以加工的小工厂,湖北seo优化诊断在前文 Beanshell Sampler 与 Beanshell 断言 中,初步阐述了JMeter beanshell的使用,接下来归集整理了JMeter beanshell 中常用的内置对象及其使用。 注:示例使用JMeter版本为5.1 1. vars 如 API 文档 所言,这是定义变量的类&a…

在前文 Beanshell Sampler 与 Beanshell 断言 中,初步阐述了JMeter beanshell的使用,接下来归集整理了JMeter beanshell 中常用的内置对象及其使用。

注:示例使用JMeter版本为5.1

1. vars

如 API 文档 所言,这是定义变量的类,而这些变量是单个线程的本地属性。听起来有些难理解,其实我们只要知道,这个类的一系列方法基本是在针对变量进行取值和赋值,而且这个取值和赋值行为只对当前线程的变量生效,而非全部线程。

在所有方法中,有两个方法值得重点关注,其他方法感兴趣的可以阅读文档做进一步了解。这两个方法就是 get() 和 put()。

String get(String key) 方法,顾名思义,是取值方法。其要素如下:

  • 参数:String key,即一个字符串格式的key,
  • 返回值:参数 key 对应的 value,前提是存在这个键值对,否则会返回null
  • 作用:从内存中通过 key 获取对应的 value

void put(String key, String value) 方法,则是赋值方法,其要素如下:

  • 参数:String key,即一个字符串格式的键,String value,则是字符串格式的值
  • 返回值:void,即没有返回值
  • 作用:将一对 key 和 value 以键值对格式存入内存

下面通过一个示例,体会一下这两个方法,先建立脚本结构如下:

在这里插入图片描述

 【用户定义的变量】的作用是:向内存中存入一个变量,参数名为"name",参数值为 “mu”,类似{ “name” : “mu”} 这样一个键值对(仅为示例,JMeter并不是这么存储变量的)

接下来,在【BeanShell取样器】中写入代码:

在这里插入图片描述

  • vars.get(“name”):前面【用户定义的变量】中已经存储了 name 这个变量和其对应的值,这里我们便可以获取其值。
  • vars.put(“nameNew”,name + “gz”):将name 的值拼接"gz"后,赋值给变量nameNew,并存入内存。

运行脚本,察看结果树:

在这里插入图片描述

 

2. ctx和prev

更多信息请见:API文档

这个内置对象的类提供了很多方法,但在接口测试中常用的一个方法是 SampleResult getPreviousResult() ,其要素如下:

  • 参数:无
  • 返回值:SampleResult,即取样器结果
  • 作用:获取前一个取样器的结果

SampleResult类 【API文档】又提供了很多方法,以提供取样器结果的诸要素,例如:

  • String getRequestHeaders() :获取取样器结果的请求头
  • String getResponseCode():获取取样器结果的响应码
  • String getResponseHeaders() :获取取样器结果的响应头
  • String getResponseDataAsString():获取取样器结果的响应数据

其他方法请查阅API文档

下面以一个示例进行演示,首先创建下面的脚本:在这里插入图片描述

在【beanShell取样器】中写入以下语句:

import org.apache.jmeter.samplers.SampleResult;// 获取取样器结果
SampleResult result = ctx.getPreviousResult();
// 获取请求头
String RequestHeaders = result.getRequestHeaders();
// 获取响应头
String ResponseHeaders = result.getResponseHeaders();
// 获取响应码
String responseCode = result.getResponseCode();
// 获取响应数据
String responseData = result.getResponseDataAsString();
// 获取url
URL url = result.getURL();
//
//log.info(RequestHeaders);
//log.info(ResponseHeaders);
log.info(responseData);

 运行脚本,在控制台可以看到相应的日志输出:

在这里插入图片描述

JMeter还提供了一个内置对象 prev,该内置对象可以直接使用 SampleResult 类中的方法,将上面示例中的【beanShell取样器】的语句修改成下面的:

// 获取请求头
String RequestHeaders = prev.getRequestHeaders();
// 获取响应头
String ResponseHeaders = prev.getResponseHeaders();
// 获取响应码
String responseCode = prev.getResponseCode();
// 获取响应数据
String responseData = prev.getResponseDataAsString();log.info(RequestHeaders);
log.info(ResponseHeaders);
log.info(responseData);

 运行后,发现效果是一样的。

http://www.hkea.cn/news/65806/

相关文章:

  • 网站去哪做在线crm软件
  • 做360手机网站快速汕头seo排名收费
  • 网站建设总做总结宜兴百度推广公司
  • 做毕业网站的周记外贸建站优化
  • 南昌市住房和城乡建设局网站百度官网推广平台电话
  • 真人做视频网站百度怎么发布广告
  • 网站页面优化包括怎么给网站做优化
  • 哪个网站用帝国cms做的软文素材网
  • 网站建设需要的资料深圳精准网络营销推广
  • 客户网站建设公司网站排名提升软件
  • 网站建设与维护试卷论文怎么在百度上做广告
  • 做博客网站要什么技术百度网站网址是多少
  • 河北建设厅官方网站八大员考试站长工具查询
  • 大连 做网站公司爱站工具包的主要功能
  • ps做简洁大气网站必应bing国内版
  • 做公司标志用哪个网站营销自动化
  • wordpress5.0.3厦门百度seo
  • 网站开发 企业 定制系统优化大师安卓版
  • 网站内链符号seo百度站长工具
  • 网站页面太多是否做静态seo优化软件
  • mac下怎么安装wordpress关键词排名优化易下拉霸屏
  • 国内做国外代购在哪个网站好百度平台客服怎么联系
  • 菏泽网站获客网站建设公司中国站长网入口
  • 黄冈网站建设推荐seo查询排名软件
  • 自己怎么做百度网站广州seo网站公司
  • 京东企业的电子网站建设百度seo教程网
  • 弥勒网站设计公司share群组链接分享
  • 网站建设栏目管理百度推广搜索排名
  • 企业管理类的网站全球搜是什么公司
  • 网站开发自我介绍seo报告