zoukankan      html  css  js  c++  java
  • unittest 简单操作

     1 #coding=utf-8
     2 
     3 import unittest
     4 
     5 class Test1(unittest.TestCase):  #定义一个类 (继承unittest.TestCase功能,才能使用这个功能)
     6     def testcase1(self):
     7         print 'aaa'
     8 
     9 class Test2(unittest.TestCase):
    10     def testcase2(self):
    11         print'bbb'
    12 
    13 def suite1():
    14     suite = unittest.TestSuite()  #获取一个Suite对象
    15     suite.addTest(Test1('testcase1'))  #添加一个测试用例(类的名称('测试用例的名称'))
    16     return suite
    17 
    18 def suite2():
    19     suite = unittest.TestSuite()
    20     suite.addTest(Test2('testcase2'))
    21     return suite
    22 
    23 def suite3():
    24     suite = unittest.TestSuite()
    25     suite.addTest(Test1('testcase1'))  #添加不同class下的测试用例,一个一个的添加
    26     suite.addTest(Test2('testcase2'))
    27     return suite
    28 
    29 def suite4():
    30     suite11 = unittest.TestLoader().loadTestsFromTestCase(Test1)  #通过Loader,一次性添加一个类的测试用例
    31     suite22 = unittest.TestLoader().loadTestsFromTestCase(Test2)
    32     suite = unittest.TestSuite([suite11, suite22])  #将两个suite 合成一个suite
    33     return suite
    34 
    35 def suite5():
    36     suite = unittest.TestLoader().loadTestsFromTestCase(Test1) #Loader和addTest 可以结合在一起用
    37     suite.addTest(Test2('testcase2'))
    38     return suite
    39 
    40 def runner(suite):
    41     unittest.TextTestRunner().run(suite) #执行suite
    42 
    43 if __name__== '__main__':
    44     runner(suite5()) 

    unittest原名为PyUnit,是由java的JUnit衍生而来。对于单元测试,需要设置预先条件,对比预期结果和实际结果。

    • 整体结构:unittest库提供了test cases, test suites, test fixtures,test runner:
    • test case :通过继承TestCase类,我们可以创建一个test,或者一组tests
    • test suites : 测试套件
    • test fixtures : setup + test case + teardown结构
    • test runner

    所有的测试函数以test开头,test_XXX

    参考:

    1、python_unittest详解:http://www.jianshu.com/p/8e22c1213260

    2、Python单元测试——深入理解unittesthttp://blog.csdn.net/hackerain/article/details/24095117

    3、python利用unittest进行测试用例执行的几种方式:http://blog.csdn.net/xiaoxinyu316/article/details/53170463

    5、import导入模块,导入类、导入类中方法:https://www.cnblogs.com/A4ril/p/6677866.html

     
     
  • 相关阅读:
    MySQL数据库设计规范
    Docker安装redis
    Go-用本地时间解析时间字符串
    Docker安装mysql
    docker安装es
    Json官网文档
    leetcode题目和解答集合
    76. 最小覆盖子串
    165. 比较版本号
    958. 二叉树的完全性检验
  • 原文地址:https://www.cnblogs.com/liuhuanv/p/7858087.html
Copyright © 2011-2022 走看看