测试的基本手段即使,保证和测试足够多的 case 。

交互式解释器的会话可以以文档字符串(docstring,在该文档字符串内部测试一些基本案例)的形式写入文档。如下:

def square(x):'''squares a number and returns the result.>>> square(2)4>>> square(3)9'''return x**2

文档字符串也可以包含一些文本(squares a number and returns the result.)。然而这与测试又有什么关系?假如 square 定义在 my_math 模块(也就是叫做 my_math.py 的文件)。我们可在该文件的末尾添加如下的代码:

if __name__ == '__main__':import doctest, my_mathdoctest.testmod(my_math)

在命令行界面,为该脚本(script)设定 -v (verbose,详述)选项开关:

$ python my_math.py -v

将会得到如下的输出:

Trying:square(2)
Expecting:4
ok
Trying:square(3)
Expecting:9
ok
1 items had no tests:demo
1 items passed all tests:2 tests in demo.square
2 tests in 2 items.
2 passed and 0 failed.
Test passed.

如果在 square 函数的内部,我们定义了错误的实现,比如将return x**2 写作 return x**x,再次运行,将得到如下的结果:

Failed example:
    square(3)
Expected:
    9
Got:
    27
1 items had no tests:
    demo
**********************************************************************
1 items had failures:1 of   2 in demo.square
2 tests in 2 items.
1 passed and 1 failed.
***Test Failed*** 1 failures.

Python 测试(一)—— doctest相关推荐

  1. Python测试框架doctest

    doctest是python自带的一个模块.本博客将介绍doctest的两种使用方式:一种是嵌入到python源码中,另外一种是放到一个独立文件. doctest 的概念模型 在python的官方文档 ...

  2. python测试开发教程_文档测试

    如果你经常阅读Python的官方文档,可以看到很多文档都有示例代码.比如re模块就带了很多示例代码: >>> import re >>> m = re.search ...

  3. 收藏清单: python测试框架最全资源汇总

    xUnit frameworks 单元测试框架 frameworks 框架 unittest - python自带的单元测试库,开箱即用 unittest2 - 加强版的单元测试框架,适用于Pytho ...

  4. python测试框架数据生成工具最全资源汇总

    xUnit frameworks 单元测试框架 frameworks 框架 unittest - python自带的单元测试库,开箱即用 unittest2 - 加强版的单元测试框架,适用于Pytho ...

  5. 转 python测试框架最全资源汇总

    转自: http://www.testclass.net/list/python_list_1/ xUnit frameworks(单元测试框架) frameworks 框架 unittest - p ...

  6. Python测试框架之pytest详解

    目录 前言 1.pytest安装 2.Pytest的setup和teardown函数 3.Pytest配置文件 4 Pytest常用插件 4.1 前置条件: 4.2 Pytest测试报告 5.pyte ...

  7. python考试怎么过_面试问题整理之python测试

    本文搜集.整理了python测试岗位面试常见问题. 1.下列哪个语句在Python中是非法的? A.x = y = z =1 B.x = (y = z 1) C.x, y = y, x D.x = y ...

  8. 跟李宁老师学Python视频课程(20):Python 测试-李宁-专题视频课程

    跟李宁老师学Python视频课程(20):Python 测试-219人已学习 课程介绍         本系列课程一共20套,每一套视频课程会深入讲解Python的一类知识点.Python是当今炙手可 ...

  9. Python 测试开发从入门到高手成长之路

    > 文末领取测试开发进阶指南和福利! 在" **质量第一,效率为王** "的移动互联网和大数据时代,互联网 IT 技术团队为了应对产品快速迭代要求,就必须具备持续交付的能力. ...

  10. Python测试框架pytest(05)fixture - error和failed、fixture实例化、多个fixture

    Python测试框架pytest系列可以查看下列 Python测试框架pytest(01)简介.安装.快速入门_编程简单学的博客-CSDN博客 Python测试框架pytest(02)PyCharm设 ...

最新文章

  1. [SCOI2008]奖励关(期望dp)
  2. python基础题-python基础练习题(一)
  3. 【数据结构-排序】3.图解选择排序两种实现(简单选择排序/堆排序)
  4. 发现一个问题,可能是Sql Express 2005的Bug
  5. Python----进程之间共享数据(全局变量)
  6. antd option宽度自适应_前端基础:自适应布局之rem布局基础
  7. 网络流 增广路 入门很好的文章
  8. javascript的constructor属性介绍
  9. 多个JVM之间,能否共用同样的类?
  10. 06_day初始化PIC
  11. 随机森林matlab实现
  12. 笔记| 计算机数据表示实验(HUST)| 汉字机内码获取实验
  13. Windows 下载安装 Seata
  14. c语言中内存分配方式
  15. 华为交换机或路由器释放DHCP已分配的地址
  16. MySQL5.6 community从下载到安装
  17. Centos8安装wordpress
  18. BigDecimal,BigInteger 学习以及简单示例
  19. php剪切透明圆,php把图片处理成圆形透明的图片,做圆形透明头像,圆形头像_编程资料分享...
  20. zookeeper核心原理

热门文章

  1. java压缩文件太慢_java 解压6万个ZIP文件,如何提升速度?
  2. java退出登录_java实现注销登录
  3. spark-sql配置并优化
  4. 为什么要序列化Serialization
  5. vue表单实现输入框控制输入小数点后两位
  6. java内存溢出前端_【面试笔录】内存溢出和内存泄漏
  7. Sklearn——保存模型参数(picklejoblib)
  8. c++多线程——数据共享
  9. 仿百度文库实现文档在线预览
  10. 第四章:FLASK结构拆分和循环引入问题