如何用Pytest做性能测试?5个步骤轻松学会!

这篇具有很好参考价值的文章主要介绍了如何用Pytest做性能测试?5个步骤轻松学会!。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Pytest其实也是可以做性能测试或者基准测试的。是非常方便的。 可以考虑使用Pytest-benchmark类库进行。

安装pytest-benchmark

首先,确保已经安装了pytest和pytest-benchmark插件。可以使用以下命令安装插件:

pip install pytest pytest-benchmark

创建被测函数

创建被测函数如下:

import time, pytest_benchmark
def method1(duration=0.000001):
    time.sleep(duration)
    return "test"

创建被测函数

创建性能测试函数:编写需要进行性能测试或基准测试的函数,并使用pytest装饰器将其标记为性能测试函数。例如:

import pytest, pytest_benchmark

def test_my_function(benchmark):
    result = benchmark(method1, argument1, argument2)
    assert result == expected_result

在上面的示例中,test_my_function是性能测试函数,benchmark是pytest-benchmark插件提供的装饰器。method1是要进行性能测试的函数,argument1和argument2是该函数的参数,这些参数要根据实际需要进行调整即可。

运行测试

pytest

测试结果

 

 

当使用pytest-benchmark运行性能测试后,测试结果将显示在控制台中。以下是结果中每列的含义:

1. name: 测试函数的名称。每个测试函数都有自己的名称,用于区分不同的测试。

2. min: 执行测试函数的最小时间。这是在所有运行中观察到的最短时间。

3. max: 执行测试函数的最大时间。这是在所有运行中观察到的最长时间。

4. mean: 执行测试函数的平均时间。这是所有运行时间的平均值。

5. stddev: 执行测试函数的标准差。标准差用于衡量运行时间的离散程度。较小的标准差表示运行时间更稳定。

6. median: 执行测试函数的中位数时间。中位数是将所有运行时间按大小排序后,位于中间位置的值。

7. IQR: 四分位距(InterQuartile Range)。这是一种不同的测量方差的方法。

8. outliers: 执行测试函数时观察到的异常值数量。异常值是指与其他观测值相比明显偏离的值。

9. OPS: 表示在一定时间内(比如1秒)测试方法被调用了多少次。

10. rounds: 执行测试函数的运行次数。pytest-benchmark默认会多次运行测试函数,并根据这些运行结果计算出平均时间等统计数据。

11. iterations: 每个运行中执行测试函数的迭代次数。pytest-benchmark会在每个运行中多次迭代执行测试函数,并计算每次迭代的时间。

在分析结果时,可以将不同函数的结果进行比较,并考虑是否满足性能要求。可以根据测试结果进行优化和改进,并重新运行测试以验证改进的效果。文章来源地址https://www.toymoban.com/news/detail-747464.html

最后如果你想学习软件测试和需要软件测试资料,欢迎加入笔者的交流群:320231853,里面可以免费领取软件测试+自动化测试资料+软件测试面试宝典+简历模版+实战项目+面试刷题工具和大佬答疑解惑,我们一起交流一起学习!

到了这里,关于如何用Pytest做性能测试?5个步骤轻松学会!的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 如何用 JMeter 编写性能测试脚本?

    Apache JMeter 应该是应用最广泛的性能测试工具。怎么用 JMeter 编写性能测试脚本? img HTTP 请求各项信息说明(以 JMeter 5.1 为例)。 如下图所示: Web服务器: 指定协议、HTTP 请求的主机地址和端口号,不需要加上“ http:// ”,JMeter 会自动加上,一般的 Web 服务端口号默认是 8

    2024年04月08日
    浏览(35)
  • 接口测试框架pytest+allure+jenkins之jenkins环境安装配置步骤

    pytest+Allure+jenkins,可以定时跑测试用例,生成测试报告并发送邮箱,关联git,自动更新git最新代码,解放双手。但是对于第一次接触jenkins的测试人员,装jenkins环境和配置job等步骤较繁琐,很容易出错。本文将记录主要的Jenkins安装和配置步骤,以及容易踩坑的地方。 1. 检查是

    2024年02月03日
    浏览(57)
  • 【涨薪技术】0到1学会性能测试 —— 分类及应用领域

      上一次推文我们分享了性能测试相关的专业术语,今天我们来看下性能测试的分类及应用领域!后续文章都会系统分享干货,带大家从0到1学会性能测试~ 负载测试是指服务器最大负载能力; 压力测试是指在一定压力情况下,服务器持续运行的能力,当前压力不是服务器所能

    2024年02月05日
    浏览(54)
  • 如何用Python对股票数据进行LSTM神经网络和XGboost机器学习预测分析(附源码和详细步骤),学会的小伙伴们说不定就成为炒股专家一夜暴富了

    最近调研了一下我做的项目受欢迎程度,大数据分析方向竟然排第一,尤其是这两年受疫情影响,大家都非常担心自家公司裁员或倒闭,都想着有没有其他副业搞搞或者炒炒股、投资点理财产品,未雨绸缪,所以不少小伙伴要求我这边分享下关于股票预测分析的技巧。 基于股

    2024年02月02日
    浏览(45)
  • 6个步骤轻松实现 postman 接口压力测试(建议收藏)

    这里讲是postman做接口并发测试,基础用法不做赘述 最后: 可以在我的VX公众号:【自动化测试老司机】免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓

    2024年02月04日
    浏览(36)
  • 轻松做性能测试,月入3万的主流测试工具大揭秘

    在为大家介绍性能测试工具以前,先让我们一起回顾一下什么是性能测试。 1、为什么需要性能测试? 举个例子。下图是一张交通图。图中的车流类似于性能测试中的数据,图中的车道、十字路口就相当于数据流量的规则和约束。 正常情况下,车流按照规则指示行驶,那么,

    2024年02月03日
    浏览(40)
  • 接口自动化测试要做什么?一文3个步骤带你成功学会!

    先了解下接口测试流程: 1、需求分析 2、Api文档分析与评审 3、测试计划编写 4、用例设计与评审 5、环境搭建(工具) 6、执行用例 7、缺陷管理 8、测试报告 了解了 接口测试的工作流程 ,那\\\"接口自动化测试\\\"怎么弄?只需要在上篇文章的基础上再梳理下就可以。为更好理解

    2024年02月08日
    浏览(45)
  • 性能测试的指南:测试类型、性能测试步骤、最佳实践等

    近期公司为了节省成本搞了一波机房迁移,整合了一些南美部署架构。有一些上google云和有些下阿里云等大的调整。 在做机房迁移项目当中就需要思考如何进行性能测试,这种大的机房迁移SRE(运维)会针对组件会做一些单组件的性能测试,但是整个迁移之后性能上面会不会

    2024年02月03日
    浏览(95)
  • 如何用Postman做接口自动化测试?一文5个步骤带你成功实现!

    什么是自动化测试 把人对软件的测试行为转化为由机器执行测试行为的一种实践。 例如GUI自动化测试,模拟人去操作软件界面,把人从简单重复的劳动中解放出来 本质是用代码去测试另一段代码,属于一种软件开发工作,已经开发完成的用例还必须随着被测试对象的改变而

    2024年02月04日
    浏览(48)
  • Postman Newman 教程:轻松管理 API 自动化测试步骤

    Newman 是一个 CLI(命令行界面)工具,用于运行 Postman 中的集合(Collection)和环境(Environment)来进行自动化测试。它允许直接从命令行运行 Postman 集合。根据 Postman 的官方网站,他们将 Newman 描述为 Postman 的命令行 Collection Runner。 通过 Postman Newman ,开发人员可以在代码更改

    2024年02月02日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包