接口测试

接口知识

  • 接口测试就是功能测试,接口测试依赖接口文档。
  • 接口通用的数据类型:json(key:value),xml(<ID>0001</ID>)
  • json数据格式

{id:100,          //Key:value形式,参数之间用'',"隔开,int类型不需要引号

name:"小明" }       //参数最后不需要逗号,字符类型需要引号

 

  • get请求和post请求

get:获取数据,参数在URL中,无请求体

post:发送数据,参数在body中

jmeter

  • jmeter中文乱码:修改sampleresult.default.encoding=UTF-8,取消JSyntaxTextArea注释。

  • 参数化:CSV Data Set Config中定义,接口中使用:${xxx}

Filename:参数文件名,可以写绝对路径,个人强烈建议采用相对路径,避免脚本迁移时需要修改路径。

File encoding:参数文件的编码格式。推荐选择 UTF-8。

Variable Names:对对应参数文件每列的变量名。类似于 Excel 文件的文件头,起到标示的作用,同时也是后续引用的标识符,建议采用有意义的英文标示。

Delimiter:参数文件分隔符。与参数文件中的分隔符保持一致即可。

Allow quoted data?:是否允许引用数据。默认设置为 false。例如数据样式为:"101-005-98536","29357","1","1993575","477948510289","android","45" 时,此处需设置为 true,一般默认为 false 即可。

Recycle on EOF?:是否循环读取参数文件内容。默认设置为 true。设置为 true 时,当已经读取完参数文件内的测试用例数据,还需要继续获取用例数据时,此时会循环读取参数文件数据;设置为 false 时,若已至文件末尾,则不再继续读取测试数据。通常在 线程组的线程数 * 线程组的循环次数 > 参数文件行数时,才需要将此项设置为 true。

Sotp thread on EOF?:当读取到参数文件末尾时,是否停止读取线程。默认为 false。当 Recycle on EOF?  设置为 true 时,此项不起任何作用。当且仅当 Recycle on EOF? 为 false 时,此项配置才生效。

若为 true,则在读取到参数文件行末尾时,终止参数文件读取线程。例如:线程组的线程数 * 线程组的循环次数 = 10,参数文件行数 = 7,那么将在第 8 次开始停止线程。

若为 false,此时线程会继续读取,但是会请求错误,因此时读取的数据为 EOF。以上同例,自第 8 次开始,线程的请求数据为 EOF。

Sharing mode:共享模式,即参数文件变量作用域。主要有以下几种方式:

All threads:当前测试计划中的所有线程组中的所有的线程均有效。默认。

Current thread group:当前的线程组中的线程有效。

Current thread:当前线程有效。

  • json变量获取:插件json path extractor,$.login_info.sign   $代表json串,之后为节点具体位置,用点分隔

 

  • 正则表达式

():封装了待返回的匹配字符串。

 .:匹配任何单个字符串。

+:一次或多次。

?:不要太贪婪,在找到第一个匹配项后停止。

.*:代表任意次

  • 数据库操作:注意变量名和数据库地址信息


调用上一配置的变量名

 对应数据库和驱动配置及地址样例

 

posted @ 2017-12-12 19:04  Crish  阅读(200)  评论(0编辑  收藏  举报