Locust的API介绍-----HttpSession类和Response类
来源:互联网 发布:sql入门经典第5版 编辑:程序博客网 时间:2024/06/02 02:38
class HttpSession(base_url, *args, **kwargs)
用于执行Web请求并保持cookie的类(以便能够登录和退出网站)。记录每个请求,以便Locust显示统计信息。
这是python-request的 requests.Session类的一个扩展的版本,工作原理也差不多相同。然而,发送请求(get,post,delete,put,head,options,patch,request)的方法,现在使用的URL只是部分的url参数,URL的host部分将由Locust类的host参数提供,当然也可以在Locust启动命令中添加。
每个提出请求的方法还需要两个额外的可选参数,这些参数是Locust特定的,并且不存在于python请求中。这些是:
参数:
- name - (可选)可以指定在Locust统计信息中用作标签的参数,而不是URL路径。这可以用于将请求的不同URL分组到Locust统计信息中的单个条目中。
- catch_response - (可选)布尔参数,如果设置,可以用于发出请求,返回上下文管理器作为with语句的参数。这将允许根据响应的内容将请求标记为失败,即使响应代码正常(2xx)。相反的工作,可以使用catch_response来捕获请求,然后将其标记为成功,即使响应代码不是(即500或404)。
发送DELETE请求。返回Response对象。
参数:
url - 新请求的URL 。
** kwargs - 请求的可选参数。
返回类型:
requests.Response
get(url,** kwargs )
发送GET请求。返回Response对象。
参数:
url - 新请求的URL 。
** kwargs - 请求的可选参数。
返回类型:
requests.Response
head(url,** kwargs )
发送HEAD请求。返回Response对象。
参数:
url - 新请求的URL 。
** kwargs - 请求的可选参数。
返回类型:
requests.Response
options(url,** kwargs )
发送OPTIONS请求。返回Response对象。
参数:
url - 新请求的URL 。
** kwargs - 请求的可选参数。
返回类型:
requests.Response
patch(url,data = None,** kwargs )
发送PATCH请求。返回Response对象。
参数:
url - 新请求的URL 。
data - (可选)发送请求的字典,字节或类文件对象。
** kwargs - 请求的可选参数。
返回类型:
requests.Response
post(url,data = None,json = None,** kwargs )
发送POST请求。返回Response对象。
参数:
url - 新请求的URL 。
data - (可选)发送请求的字典,字节或类文件对象。
json - (可选)请求的发送的json。
** kwargs - 请求的可选参数。
返回类型:
requests.Response
put(url,data = None,** kwargs )
发送PUT请求。返回Response对象。
参数:
url - 新请求的URL 。
data - (可选)发送请求的字典,字节或类文件对象。
** kwargs - 请求的可选参数。
返回类型:
requests.Response
request(method,url,name = None,catch_response = False,** kwargs )
构造并发送requests.Request。返回requests.Response对象。
参数:
- method - 新请求的方法。
- url - 新请求的URL 。
- name - (可选)可以指定在Locust统计信息中用作标签的参数,而不是URL路径。这可以用于将请求的不同URL分组到Locust统计信息中的单个条目中。
- catch_response - (可选)布尔参数,如果设置,可以用于发出请求,返回上下文管理器作为with语句的参数。这将允许根据响应的内容将请求标记为失败,即使响应代码正常(2xx)。相反的工作,可以使用catch_response来捕获请求,然后将其标记为成功,即使响应代码不是(即500或404)。
- params - (可选)要在查询字符串中发送的字典或字节Request。
- data - (可选)发送请求的字典,字节或类文件对象。
- headers - (可选)要发送的HTTP标题字典Request。
- cookies - (可选)要发送的Dict或CookieJar对象Request。
- files - (可选)多部分编码上传的字典。'filename': file-like-objects
- auth - (可选)Auth元组或可以启用基本/摘要/自定义HTTP验证。
- timeout(float 或tuple) - (可选)等待服务器在放弃之前发送数据,浮点数或(连接超时,读取超时)元组等待多长时间。
- allow_redirects(bool) - (可选)默认设置为True。
- proxies - (可选)字典映射协议到代理的URL。
- stream - (可选)是否立即下载响应内容。默认为False。
- verify - (可选),如果TrueSSL证书将被验证。还可以提供CA_BUNDLE路径。
- cert - (可选)如果String,ssl客户端证书文件(.pem)的路径。如果Tuple,('cert','key')对。
Response类
类 Response
该Response对象包含服务器对HTTP请求的响应。
apparent_encoding
响应的编码,由chardet库提供。
close()
将连接释放。一旦调用此方法,raw不能再次访问底层对象。
注意:通常不需要明确地调用。
content
响应的内容,以字节为单位。
cookies =无
服务器返回的Cookie。
elapsed =无
发送请求和响应到达之间的时间量(作为timedelta)。此属性专门测量发送请求的第一个字节和完成解析头文件之间的时间。因此,不需要消耗响应内容或stream关键字参数的值。
encoding =无
编码在访问r.text时进行解码。
headers =无
不区分大小写的响应头字典。例如,headers['content-encoding']将返回'Content-Encoding'响应头的值。
history =无
Response来自请求历史记录的对象列表。任何重定向响应将在此处结束。列表从最旧的请求排序到最近的请求。
is_permanent_redirect
如果此响应是永久版本的重定向,则为true。
is_redirect
如果此响应是可以很好自动处理(通过Session.resolve_redirects())格式的HTTP重定向,则为true 。
iter_content(chunk_size = 1,decode_unicode = False )
迭代响应数据。当请求中设置了stream = True时,这避免了一次将内容读入内存以进行大的响应。块大小是它应该读入内存的字节数。这不一定是在解码可以发生时返回的每个项目的长度。
chunk_size必须是int类型或None类型。stream = True将在数据到达时以任何大小块的形式读取数据。如果stream = False,则数据作为单个块返回。
如果decode_unicode为True,则将使用基于响应的最佳可用编码对内容进行解码。
iter_lines(chunk_size = 512,decode_unicode = None,delimiter = None )
响应数据迭代,一次一行。当请求中设置了stream = True时,这避免了一次将内容读入内存以进行大的响应。
注意
这种方法不是可重入的。
json(** kwargs )
返回响应的json编码内容(如果有)。
Parameters: ** kwargs - 可选参数json.loads。
Raises: ValueError - 如果响应正文不包含有效的json。
links
返回响应的解析头链接(如果有)。
next
返回一个PreparedRequest,用于重定向链中的下一个请求(如果有的话)。
ok
如果status_code小于400,则返回True 。
此属性检查响应的状态代码是否在400到600之间,以查看是否有客户端错误或服务器错误。如果状态代码在200到400之间,则返回True。这不是一个检查,看看是否有响应代码。200 OK
raise_for_status()
升高存储HTTPError,如果发生。
raw =无
表示文件类对象的响应(用于高级用法)。使用raw需要stream=True根据请求设置。
reason =无
响应HTTP状态的文本原因,例如“未找到”或“确定”。
request =无
PreparedRequest这是一个响应的对象。
status_code =无
响应HTTP状态的整数代码,例如404或200。
text
内容的回应,在unicode。
如果Response.encoding为None,则会使用编码进行猜测 chardet。
响应内容的编码仅基于HTTP标头确定,遵循RFC 2616的字母。如果您可以利用非HTTP知识来更好地猜测编码,则r.encoding在访问此属性之前,应该适当地进行设置。
url =无
响应的最终URL位置。
- Locust的API介绍-----HttpSession类和Response类
- Locust的API介绍-----Locust类和HttpLocust类
- Locust的API介绍-----TaskSet类和task decorator
- Locust的API介绍-----ResponseContextManager类InterruptTaskSet Exception及Event hooks
- ServletContext类和HttpSession类的区别
- httpsession的api
- 8.性能测试工具Locust的高级使用——熟悉相关的类和方法、特性
- 6.性能测试工具Locust介绍和安装
- http协议、Request和Response、Cookie、HttpSession、JSP
- HttpSession介绍
- servlet中response的介绍和使用
- HttpSession和Hibernate的session
- HttpSession和HibernateSession的区别
- HttpSession类找不到
- servlet-api的基本类和其接口的介绍
- Struts2教程6:Action类中获得HttpSession,HttpRequest和HttpServletResponse对象的四种方法
- response和request类
- locust
- 【清北】【笔记】DP
- Java学习笔记 09 Java实现多继承的方法:接口 + 内部类
- URI和URL
- PX4自主飞行相关问题
- 网页加载完毕执行函数的三种方法
- Locust的API介绍-----HttpSession类和Response类
- hadoop基础
- 界面编程-写一个滑动条
- vue之组件 slot内容分发
- C++封装DLL,导出一个类
- Handler机制的简单原理
- Ubuntu 下修改用户文件权限的方法
- Kotlin 设计模式-命令
- meta标签整理