Python_Httprunner接口测试+locust性能测试

Posted 小韩测试

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python_Httprunner接口测试+locust性能测试相关的知识,希望对你有一定的参考价值。

1、什么是接口?

接口,Application Programming Interface(API)

通俗的讲 就是HTTP请求

2、什么是接口测试

  接口测试测试组件间接口的一种测试。

  主要用于检测外部系统与系统之间,系统内部各子系统的交互点。

很多前端和后端都是分离的,单独只从前端验证,远远不够,绕过前端太容易了,还需要从接口层面进行验证。

3、需要安装的模块:Requests

Python的一个第三方HTTP库,然后有可能是这个星球上最好用的http库了

requests安装

Windows: 打开cmd命令行,输入pip install requests,等待安装完成即可

Linux: (建议使用Python3),终端中输入pip3 install requests,等待安装完成即可

Mac: (建议使用Python3), sudo python3 -m pip install requests,等待安装完成即可

验证是否安装成功:

打开命令行,输入python,在python shell环境下输入import requests没有报错即安装成功

4、requests的使用

一个最简单的GET请求:

组装请求 请求可能包含urlparams(url参数)data(请求数据)headers(请求头)cookies等,最少必须有url

发送请求,获取响应支持getpost等各种方法发送,返回的是一个响应对象

解析响应输出响应文本

简单实类:

# 导入requests包
import requests
# GET请求
url = "http://www.baidu.com"  # 这里只有url,字符串格式
# 2. 发送请求,获取响应
res = requests.get(url) # res即返回的响应对象
# 3. 解析响应
print(res.text)  # 输出响应的文本

5、Python 接口测试类1(unittest、生成html报告)

文件目录:test1

6、Python 接口测试类2(unittest、ddt、邮件发送、xlsx、生成html报告)

文件目录:python_Interface-master

7、Httprunner框架测试接口(json/yaml、生成html报告)

官方使用文档:

https://cn.httprunner.org/Installation/

接口获取便捷:

通过Charles获取到接口导出har文件,然后用命令转换成json文件

 

 

 

转换:

har2case apptest1.har 转换成JSON文件

 

 

 

har2case apptest1.har -2y 转换成yaml文件

 

 

Httprunner 的使用

输入命令:hrun apptest1.json

 

 

DEMO创建

hrun --startproject demo

 

1、全局变量

"variables": {

                "url" : "https://ppweb.haierzhongyou.com"

}

2、引用参数

关键字:$参数名$user_id

 

3、缓存参数。

 "extract": [

        {"token": "content.data.token"}

 ],

4、数据驱动

config:

    name:

testcases:

    create user $username-$password:

testcase: testcases\\test_demo.yml

parameters:

    - index: ["test", "test1"] --- 单一参数列表

    - username-password:

        - ["user1", "111111"]

        - ["user2", "222222"]

        - ["user3", "333333"] --- 多参数列表

    - resName-status: ${P(data/account.csv)} ---外部csv文件

 

5、重复运行

times: 5

6、跳转运行

"skip": "过滤次接口"

locust性能测试

使用locusts -V查看时,会提示需要先安装locustio

使用 pip 安装 locustio

pip install locustio

locusts 启动

使用locusts -f 启动脚本文件

locusts -f  1234.json

运行完成之后,可以看到locustweb页面在8089端口启动,接着在浏览器输入:http://localhost:8089/ 即可访问

 

设置模拟用户、每秒产生(启动)的虚拟用户数-点击启动按钮

 

性能测试参数

Type: 请求的类型,例如GET/POST

Name:请求的路径。这里为百度首页,即:https://www.baidu.com/

request:当前请求的数量。

fails:当前请求失败的数量。

Median:中间值,单位毫秒,一半的服务器响应时间低于该值,而另一半高于该值。

Average:平均值,单位毫秒,所有请求的平均响应时间。

Min:请求的最小服务器响应时间,单位毫秒。

Max:请求的最大服务器响应时间,单位毫秒。

Content Size:单个请求的大小,单位字节。

reqs/sec:是每秒钟请求的个数。

以上是关于Python_Httprunner接口测试+locust性能测试的主要内容,如果未能解决你的问题,请参考以下文章

Pandas,用于布尔索引的 loc 与非 loc

Python Locust性能测试框架实践

如何将df.loc []应用于多行并应用转换?

Zedboard VmodCAM PIN Constraint

android中的无效纬度和经度

Python参数传递(传值&传引用)