unittest是python自带的一个标准木块,单元测试框架

unittest基本使用方法:

  1. 我们需要先导入unittest (import unittest)

    import unittest
  2. 定义一个继承unittest.TestCase的测试用例类
    class TestFun(unittest.TestCase):
  3. 定义setUp和tearDown
        def setUp(self):
    print 'do before ....'
    def tearDown(self):
    print 'do after....'
  4. 定义测试用例,以test开头。如testAdd
        def testAdd(self):
    print 'test add...'
    self.assertEqual(2,addNum(1,1))
  5. 一个测试用例只写一个功能,目标和测试内容需明确。
  6. 单元测试的加载方式有2种:一种是通过unittest.main()来启动单元测试的测试模块;一种是添加到testsuite集合中再加载所有的被测试对象,而testsuit里存放的就是单元测试的用例
    if __name__=="__main__":
    suite=unittest.TestLoader.loadTestsFromTestCase(TestFun)
    unittest.TextTestRunner(verbosity=2).run(suite)
    if __name__=="__main__":
    unittest.main()

unittest模块的常用方法:

  • assertEqual(a, b)     a == b
  • assertNotEqual(a, b)     a != b
  • assertTrue(x)     bool(x) is True
  • assertFalse(x)     bool(x) is False
  • assertIs(a, b)     a is b     2.7
  • assertIsNot(a, b)     a is not b     2.7
  • assertIsNone(x)     x is None     2.7
  • assertIsNotNone(x)     x is not None     2.7
  • assertIn(a, b)     a in b     2.7
  • assertNotIn(a, b)     a not in b     2.7
  • assertIsInstance(a, b)     isinstance(a, b)     2.7
  • assertNotIsInstance(a, b)     not isinstance(a, b)     2.7

实例代码:

 import unittest
def addNum(a,b):
return a+b
def delNum(a,b):
return a-b
class TestFun(unittest.TestCase):
def setUp(self):
print 'do before ....'
def tearDown(self):
print 'do after....'
def testAdd(self):
print 'test add...'
self.assertEqual(2,addNum(1,1))
def testDel(self):
print 'test del'
self.assertEqual(0,delNum(1,1))
if __name__=="__main__":
unittest.main()

初识unittest的更多相关文章

  1. Selenium(十六):unittest单元测试框架(二) 初识unittest(续)

    1. 认识unittest(续) 关于unittest单元测试框架,还有一些问题值得进一步探讨.你可能在前一章的学习过程中产生了一些疑问,也许你会在本节中找到答案. 1.1 用例执行的顺序 用例的执行 ...

  2. Selenium(十五):unittest单元测试框架(一) 初识unittest

    1. 认识unittest 什么是单元测试?单元测试负责对最小的软件设计单元(模块)进行验证,它使用软件设计文档中对模块的描述作为指南,对重要的程序分支进行测试以发现模块中的错误.在python语言下 ...

  3. 【python接口自动化】初识unittest框架

    本文将介绍单元测试的基础版及使用unittest框架的单元测试. 完成以下需求的代码编写,并实现单元测试 账号正确,密码正确,返回{"msg":"账号密码正确,登录成功& ...

  4. 初识Android App自动化测试框架--Unittest

    1.为什么需要使用框架实现自动化测试 作为测试工程师,可能在代码能力上相比开发工程师要弱一点,所以我们在写脚本的时候就会相对容易的碰到更多的问题,如果有一个成熟的框架供给我们使用的话,可以帮助我们避免 ...

  5. unittest详解(一) unittest初识

    unittest是python内置的一个单元测试框架,在学习怎么使用它之前,我们先来了解它的一些概念和原理. Test Case:测试用例,一个TestCase的实例就是一个测试用例.什么是测试用例呢 ...

  6. python_单元测试unittest

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

  7. Android动画效果之初识Property Animation(属性动画)

    前言: 前面两篇介绍了Android的Tween Animation(补间动画) Android动画效果之Tween Animation(补间动画).Frame Animation(逐帧动画)Andr ...

  8. 初识Hadoop

    第一部分:              初识Hadoop 一.             谁说大象不能跳舞 业务数据越来越多,用关系型数据库来存储和处理数据越来越感觉吃力,一个查询或者一个导出,要执行很长 ...

  9. python学习笔记(基础四:模块初识、pyc和PyCodeObject是什么)

    一.模块初识(一) 模块,也叫库.库有标准库第三方库. 注意事项:文件名不能和导入的模块名相同 1. sys模块 import sys print(sys.path) #打印环境变量 print(sy ...

随机推荐

  1. AtCoder Beginner Contest 069 ABCD题

    题目链接:http://abc069.contest.atcoder.jp/assignments A - K-City Time limit : 2sec / Memory limit : 256M ...

  2. [转载]DLL命名规则

    程序集是一个部署单元,同时还代表托管代码程序的身份.一般来说一个程序集仅与一个DLL相对应.本节主要讲DLL命名约定,程序集的命名约定与此类似. 要记住,名字空间与DLL和程序集是不同的概念.名字空间 ...

  3. java中避免乱码

    response.setContentType("text/html;charset=UTF-8"); 这个是在action中的 这个是在json中设置乱码的 contentTyp ...

  4. java -cp & java jar的区别

    java -cp java -cp 和 -classpath 一样,是指定类运行所依赖其他类的路径,通常是类库和jar包,需要全路径到jar包,多个jar包之间连接符:window上分号“;”.Lin ...

  5. 像黑客一样使用Linux命令行(转载)

    阅读目录 前言 使用 tmux 复用控制台窗口 在命令行中快速移动光标 在命令行中快速删除文本 快速查看和搜索历史命令 快速引用和修饰历史命令 录制屏幕并转换为 gif 动画图片 总结 回到顶部 前言 ...

  6. camera按键采集图像及waitKey的用法(转)

    源: camera按键采集图像及waitKey的用法

  7. rsync 同步文件如何指定属主属组和权限

    rsync daemon 同步数据时,若想同时指定权限和属主属组,可以做如下配置: [test1] uid = admin gid = admin incoming chmod = Dug=rwx,D ...

  8. Zookeeper本地模式安装

    本地模式安装部署 1.安装前准备 (1)安装Jdk (2)拷贝Zookeeper安装包到Linux系统下 (3)解压到指定目录 tar -zxvf zookeeper-3.4.10.tar.gz -C ...

  9. FFMPEG编译参数解析

    Standard options: 基本选项参数 --help 显示此帮助信息|print this message --log[=FILE|yes|no] 记录测试并输出到config.err文件| ...

  10. 批处理no.bat

    在公司每次我启动电脑, 网络连接需要一段时间, 而我想在这段小时间里面, 一旦网络连接成功就帮我启动微信和qq, 如果还没有连接成功就继续监测直到有网络了才会成功才会打开两个程序, 当打开程序后脚本自 ...