Python测试模块doctest使用解析

 更新时间:2019年08月10日 13:47:15   作者:springionic  
这篇文章主要介绍了Python测试模块doctest使用解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

面试被问到了却没有用过,很尴尬;今天看了一下,真的是一个很简单的测试模块

方便起见,这里直接拿菜鸟教程的介绍和例子过来

开发高质量软件的方法之一是为每一个函数开发测试代码,并且在开发过程中经常进行测试;

doctest模块提供了一个工具,扫描模块并根据程序中内嵌的文档字符串执行测试;

测试构造如同简单的将它的输出结果剪切并粘贴到文档字符串中;

通过用户提供的例子,它强化了文档,允许 doctest 模块确认代码的结果是否与文档一致;

def average(values):
  """Computes the arithmetic mean of a list of numbers.

  >>> print(average([20, 30, 70]))
  40.0
  """
  return sum(values) / len(values)

import doctest
doctest.testmod(verbose=True)  # doctest.testmod是测试模块,verbose默认是False,意思是出错才用提示;True,对错都有执行结果

注意格式,上边代码的第三行需要是一个空行

注:Python中的除法总是返回一个浮点数

输出结果

Trying:
  print(average([20, 30, 70]))
Expecting:
  40.0
ok
Trying:
  print(average([90, 40, 20]))
Expecting:
  50.0
ok
1 items had no tests:
  __main__
1 items passed all tests:
  2 tests in __main__.average
2 tests in 2 items.
2 passed and 0 failed.
Test passed.
[Finished in 0.5s]

可以看到16行,两个测试都通过了

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Python银行系统实战源码

    Python银行系统实战源码

    这篇文章主要为大家详细介绍了Python银行系统实战源码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-10-10
  • 解决python Jupyter不能导入外部包问题

    解决python Jupyter不能导入外部包问题

    这篇文章主要介绍了解决python Jupyter不能导入外部包问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04
  • TensorFlow索引与切片的实现方法

    TensorFlow索引与切片的实现方法

    这篇文章主要介绍了TensorFlow索引与切片的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11
  • Python中模块string.py详解

    Python中模块string.py详解

    这篇文章主要介绍了Python中模块之string.py的相关资料,文中介绍的非常详细,对大家具有一定的参考价值,需要的朋友们下面来一起看看吧。
    2017-03-03
  • Python中字典的基本知识初步介绍

    Python中字典的基本知识初步介绍

    这篇文章主要介绍了Python中字典的基本知识初步介绍,是Python入门中的基础知识,需要的朋友可以参考下
    2015-05-05
  • 在Python中使用Fsolve函数的过程解析

    在Python中使用Fsolve函数的过程解析

    这篇文章主要介绍了在Python中使用Fsolve函数的过程解析,在这篇文章中,我们了解到fsolve 是用来寻找非线性方程的根的,了解到fsolve 可以接受的不同种类的参数以及每个参数的含义,需要的朋友可以参考下
    2023-06-06
  • Python Dask库处理大规模数据集的强大功能实战

    Python Dask库处理大规模数据集的强大功能实战

    Dask是一个灵活、开源的Python库,专为处理大规模数据集而设计,与传统的单机计算相比,Dask能够在分布式系统上运行,有效利用集群的计算资源,本文将深入介绍Dask的核心概念、功能和实际应用,通过丰富的示例代码展示其在大数据处理领域的强大能力
    2023-12-12
  • python做接口测试的必要性

    python做接口测试的必要性

    在本篇文章里小编给大家整理的是关于python做接口测试的必要性以及相关知识点,有兴趣的朋友们学习下。
    2019-11-11
  • python库Celery异步发送电子邮件定时生成报告实战示例

    python库Celery异步发送电子邮件定时生成报告实战示例

    这篇文章主要介绍了python库Celery异步发送电子邮件定时生成报告实战示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2024-01-01
  • 简单理解Python中的装饰器

    简单理解Python中的装饰器

    这篇文章主要介绍了Python中的装饰器,是Python入门学习中的基础知识,需要的朋友可以参考下
    2015-07-07

最新评论