python的单元测试unittest模块

首先需要导入unittest模块

import unittest

import  HTMLTestRunner

# TestCase 也就是测试用例
#
# TestSuite 多个测试用例集合在一起,就是TestSuite
#
# TestLoader是用来加载TestCase到TestSuite中的
#
# TestRunner是来执行测试用例的,测试的结果会保存到TestResult实例中,包括运行了多少测试用例,成功了多少,失败了多少等信息
# unittest模块是执行以test开头的用例,如果不以test开头则不会运行,且以字母a-z,1-9来运行用例的先后顺序,不会因为用例写的先后顺序来运行


def add(a,b):
  return a/b
#这是要执行的函数或者说是要测试的方法
Class Testadd(unittest.TestCase):
  @classmethod#装饰器,在所有用例的前后执行它,用来连接数据库和关闭数据库
  def setUpClass(cls):
  print('我是setupClass')

  @classmethod#装饰器,在所有用例的前后执行它,用来连接数据库和关闭数据库
  def tearDownClass(cls):
  print('我是tearDownClass')
  def setUp(self):#每条用例执行之前都会执行它
   print('我是setup')

  def tearDown(self):#每条用例执行之后都会执行它
   print('我是teardown')

  def test_calc1(self):
   '''测试正常的'''
  # result = calc(2,1)
  # self.assertEqual(2,result,'除法运算不正确')#检查实际结果和期望结果是否一致
  print('calc1')
  def test_acle(self):
   print("我是第一个运行的,因为我是a")
  def aaa(self):
     print("不会运行的用例")
#unittest.main() #运行当前文件里面的所有测试用例

test_suite = unittest.TestSuite()
test_suite.addTest()

f = open('report.html','wb')
runner = HTMLTestRunner.HTMLTestRunner(stream=f,
description='测试报告里面的描述',
title='接口测试报告')
test_suite = unittest.makeSuite(Testadd) #把这个类变成一个测试集合
runner.run(test_suite)#运行用例


  
  

猜你喜欢

转载自www.cnblogs.com/yulinlincoding/p/10771442.html
今日推荐