# -*- coding: utf-8 -*-
#python 27
#xiaodeng
#以__name__进行单元测试 #何为单元测试?
#单元测试(模块测试)是开发者编写的一小段代码,用于检测被测代码的一个很小的、很明确的功能是否正确。
#通常而言,单元测试是用于判断某个特定条件下某一个特定函数的行为 。
#单元测试由程序员自己完成,最终受益者也是其自己,换个理解就是程序员有责任编写功能diamante,也有责任为自己的代码编写单元测试。
#执行单元测试,就是为了证明这段代码的行为和我们的期望是否一致。
#工厂在组装每一台电视机之前,都会对每个元件进行测试,这就是单元测试。 #案例
def minmax(test,*args):
res=args[0]
for arg in args[1:]:
if test(arg,res):
res=arg
return res
def lessthan(x,y):return x<y
def grtrthan(x,y):return x>y print minmax(lessthan,4,2,1,5,6,3)
print minmax(grtrthan,4,2,1,5,6,3) #解析说明:
#如上例子,无论是shell命令下还是作为包导入,都会运算其结果,对于用户来讲并不是非常友好的方式
#改进之后,我们以__name__检测区块内封装了自我测试的调用,使其在文件作为顶层甲苯执行时才会启动运算结果,而导入时不会进行运算。
#改进如下: #案例
def minmax(test,*args):
res=args[0]
for arg in args[1:]:
if test(arg,res):
res=arg
return res
def lessthan(x,y):return x<y
def grtrthan(x,y):return x>y if __name__=='__main__':
print minmax(lessthan,4,2,1,5,6,3)
print minmax(grtrthan,4,2,1,5,6,3)

以__name__进行单元测试的更多相关文章

  1. Python2.5-原理之模块

    此部分来自于<Python学习手册>第五部分 一.模块(21章) 模块是最高级别的程序组织单元,它将程序代码和数据封装起来以便重用..模块往往对应于python程序文件.每个文件就是一个模 ...

  2. python入门示例程序

    该实例是raspi和dsp电机运动控制板的串口uart通信: import serial class SerialHandler(): ''' raspi serial for communicati ...

  3. Python学习手册(第4版) - 专业程序员的养成完整版PDF免费下载_百度云盘

    Python学习手册(第4版) - 专业程序员的养成完整版PDF免费下载_百度云盘 提取码:g7v1 作者简介 作为全球Python培训界的领军人物,<Python学习手册:第4版>作者M ...

  4. Python学习手册(第4版)PDF高清完整版免费下载|百度云盘

    Python学习手册(第4版)PDF高清完整版免费下载|百度云盘 提取码:z6il 内容简介 Google和YouTube由于Python的高可适应性.易于维护以及适合于快速开发而采用它.如果你想要编 ...

  5. 单元测试框架 unittest 的运行方法if __name__ == '__main__': unittest.main()

    1. if __name__ == '__main__': unittest.main()2. 测试用例实例根据测试的特点分组在一起. unittest为此提供了一个机制:测试套件由unittest' ...

  6. Python的单元测试(二)

    title: Python的单元测试(二) date: 2015-03-04 19:08:20 categories: Python tags: [Python,单元测试] --- 在Python的单 ...

  7. Python的单元测试(一)

    title: Python的单元测试(一) author: 青南 date: 2015-02-27 22:50:47 categories: Python tags: [Python,单元测试] -- ...

  8. python_单元测试unittest

    Python自带一个单元测试框架是unittest模块,用它来做单元测试,它里面封装好了一些校验返回的结果方法和一些用例执行前的初始化操作. 步骤1:首先引入unittest模块--import un ...

  9. python单元测试unittest

    单元测试作为任何语言的开发者都应该是必要的,因为时隔数月后再回来调试自己的复杂程序时,其实也是很崩溃的事情.虽然会很快熟悉内容,但是修改和 调试将是一件痛苦的事情,如果你在修改了代码后出现问题的话,而 ...

随机推荐

  1. FitLayout

    <HTML> <HEAD> <TITLE>布局</TITLE> <link rel="stylesheet" type=&qu ...

  2. log4j.properties打印日志信息(1)

    log4j.properties log4j.rootLogger=debug,stdout,logfile ### 把日志信息输出到控制台 ### log4j.appender.stdout=org ...

  3. .NET:CLR via C# The Interlocked Anything Pattern

    Many people look at the Interlocked methods and wonder why Microsoft doesn't create a richer set of ...

  4. Serializable java序列化

    Bean Serializable Interface 的接口让BEAN可以串行化,将其变成一个可保存为以后使用的二进制流.当一个BEAN被系列化到磁盘上或者其他任何地方,其状态被保存起来,其中的属性 ...

  5. Mybatis 传入List类型参数,报错:There is no getter for property named '__frch_item_0' in

    错误如下: org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.reflection.Re ...

  6. post文件的html

    <HTML> <HEAD> <META NAME="GENERATOR" Content="Microsoft Visual Studio& ...

  7. C#读写txt文件的两种方法介绍[转]

    C#读写txt文件的两种方法介绍 1.添加命名空间 System.IO; System.Text; 2.文件的读取 (1).使用FileStream类进行文件的读取,并将它转换成char数组,然后输出 ...

  8. 性能二 fortnite unreal opt

    https://replay.unrealsummit.co.kr/data2018/usm2018_42.pdf?ckattempt=1 https://www.unrealengine.com/e ...

  9. Steps to configure a FileShare Quorum Witness for Windows Failover Cluster

    Step 1: Step 2: Step 3: Step 4: You must use the wizard to create the file share. Step 5: to make su ...

  10. iOS开发-UI基础Demo

    现在更多的学习资料都是xCode4.X的,发现xCode6.1还是很多东西,如果有正在学习iOS开发的可以通过Demo简单了解下iOS的UI开发~ 1.新建单视图文件: 2.新建项目名称,语言选择OC ...