性能测试工具

1.性能测试工具:

1.LoadRunner

2.JMeter

3.Locust

4.Molotov

https://mp.weixin.qq.com/s/Sm9OAnd0k8_E-I7Se2TlbQ

安装

GitHub:https://github.com/loads/molotov

安装:

pip install molotov

文档:https://molotov.readthedocs.io/en/stable/

例子

我们来进行接口测试,创建创建脚本loadtest.py。

"""

molotov 性能测试脚本"""

from molotovimport scenario

_API ='http://127.0.0.1:5000/'

@scenario(weight=40)

async def scenario_one(session):

"""测试默认接口(get)"""

    async with session.get(_API)as resp:

res =await resp.json()

assert resp.status ==200

        assert res['code'] ==10200

        assert res['message'] =='Welcome to API testing'

@scenario(weight=60)

async def scenario_two(session):

"""添加用户信息接口(post->JSON)"""

    payload = {"name":"jack", "age":22, "height":177}

async with session.post(_API +"add_user", json=payload)as resp:

res =await resp.json()

assert resp.status ==200

        assert res['code'] ==10200

        assert res['message'] =='add success'


weight表示接口的虚拟用户权重。比如100个用户40%用来请求第一个接口,60%用来请求第二个接口。

我们还可以使用assert非常方便的为接口写断言。

被测接口来自:https://github.com/defnngj/learning-API-test

运行

当Molotov测试使用该扩展时,该函数将收集执行时间,并打印出Molotov发出的所有请求的平均响应时间:

>molotov loadtest.py -w 10 -r 100

**** Molotov v1.6. Happy breaking!****

Preparing 10 workers...

OK

SUCCESSES: 1000|FAILURES: 0|WORKERS: 10

*** Bye ***

主要参数:

-w 指定worker的虚拟用户。

-r 指定每个虚拟用户的请求个数。

-d 指定运行的时长。

-q 静默情况执行。

-x 当出现失败时停止。

这样轻量的性能工具还是非常好用的,很合适接口的性能测试。

你可能感兴趣的:(性能测试工具)