Jmeter&Python requests接口测试——get、post区别,上传文件方法
Jmeter
HTTP默认请求值填入对应的协议类型和服务器名称
HTTP信息头管理器可添加请求网页需要的参数,比如cookie、token等
GET方法
GET方法需要传入参数的情况下,可直接在参数中以键值对的形式添加名称与值。
POST方法
POST方法也存在传入参数的情况。
当请求头中包含Content-Tpye: application/json参数时,需要在本次请求中添加Content-Tpye: application/json的HTTP信息头管理器。
若请求头中没有包含这一参数,但添加了相应的信息头管理器,则会出现错误。
此时则需要以在消息体数据中以json的格式传入参数。
参数与消息体数据两者只可选择一种,当一种类型中填写了内容则另一项不可选择。
文件上传
当请求需要传入文件时,可在参数/消息体数据和文件上传选项中同时添加内容。
需要上传的参数不需在“参数”栏中添加,仅在“文件上传”中添加即可。
MIME类型选择需与上传的文件内容相符。比如文字类型填写text/plain,图片类型填写image/png。
Requests
get方法
请求需要的参数以字典的形式定义,在requests.get()中需要传入的参数有url地址,params参数,headers头文件。如果请求提示权限相关的错误时可添加verify=False。
post方法
若不需要content type的请求,操作方法与get一致,仅需将requests.get()更改为requests.post()。
content type为application/json格式时,需要以json的格式定义键值对参数,并且在头文件中添加content tpye = application/json,在请求完成之后,再将头文件中的content type删除,以防影响到其他接口的请求。如果是json格式的参数请求,requests.post()中的参数需将params=更改为data=,否则请求会失败。
文件上传
如果是含有文件的请求,与Jmeter类似,参数与文件分开,requests.post()中需要添加data=参数,files=文件。