1、接口测试时传递json格式的数据
1接口测试时传递json格式的数据
添加'HTTP信息头管理器'(添加-配置原件-HTTP信息头管理器)并设置Content-Type = application/json;charset=UTF-8,如下图所示
2、beanshell的使用
1、beanshell中使用ArrayList方法
java中使用:ArrayList <Company> companyList = new ArrayList<Company>();
jmeter中使用:ArrayList companyList = new ArrayList();
2、Bean shell内置对象vars对变量进行存取操作
只能对字符形式的数据操作
如果是其他类型的数据类型需要使用vars.put("keyyear",year.toString());转换成字符形式。
3、引用外部java文件和class文件
在bean shel中通过source("代码路径")方法引入java,然后调用方法和java一样,new一个class,再调用里面的add 方法。
用addClassPath("D:\\")方法引入 class文件,在用import导入包及类,然后就可以像java一样调用了
3、乱码问题:UTF-8
1、当响应报文里面有乱码或者是非中文的字符,http请求传的值里面有乱码或者是非中文的字符
1)添加一个HTTP信息头管理器里添加
Accept application/xml;application/json;charset=utf-8
2、你参数化的数据是中文
1)在脚本的参数接设置数据的接收编码为UTF-8
2)从本地txt文件中传递的数据也有如下两个要求:
a)txt文本保存为UTF-8编码
b) CSV元件处编码选择UTF-8
3、响应结果中出现乱码
修改Jmeter的配置文件:jmeter.properties
这种方式经过我的测试,只是对响应结果有效果。
找到jmeter安装目录下bin目录下的jmeter.properties文件。
然后搜索encoding,找到如下这一行代码并修改成UTF-8
4、Body data中写的中文,乱码都是问号(jmeter3.0之后才会出现的问题)
在 jmeter.properties(\bin\jmeter.properties) 中把 jsyntaxtextarea.font.family=Hack 前面的注释去掉。