python基础(七)—unittest

一、概念

1、TestCase:一个testcase的实例就是一个测试用例:

测试前准备环境的搭建(setUp),执行测试代码(run),以及测试后环境的还原(tearDown)

2、TestSuit:多个测试用例集合在一起

3、TestLoader:用来加载TestCase到TestSuit中

4、TextTestRunner:用来执行测试用例。其中的run(test)会执行TestSuit/TestCase中的run(result)

5、TextTestResult:保存TextTestRunner执行的测试结果

6、fixture:测试用例环境的搭建和销毁

二、unittest初级使用

1、导入unnittest模块、被测文件或其中的类

2、创建一个测试类,并继承unittest.TestCase

3、重写setUp和tearDown方法(如果有初始条件和结束条件)

4、定义测试函数,以test_开头。测试用例

5、在han函数体中使用断言来判断测试结果是否符合预期结果

6、调用unittest.main()方法来运行测试用例

三、unittest进阶使用

1、实例化测试套件对象

  s=unittest.testSuit()

2、testsuit加载测试用例

  s.addTest(类名(“用例名称函数”))加载一个测试用例

  s.addTests([类名(“用例名称函数1”,类名(“用例名称函数1”])加载多个测试用例

3、textTestRunner运行测试用例

1)实例化:

  fs=open("测试报告.txt","w")

  生成测试报告:

  runner=unittest.textTestRunner(fs)

2)调用run()方法运行测试套件中的测试用例

  runner.run(s)

四、unittest.testLoader.discover方法匹配目录下的用例

  1)实例化testLoader

  loader=unittest.testLoader()

  2)使用discover去找到一个目录下的所有测试用例

  loader.discover(os.getcwd())  

四、htmlTestRunner输出html测试报告

fs=open(getcwd() + '/autoTest_report.html','wb')

runner = htmlTestRunner(

      stream=fs     #写入到fs文件中

      title = "测试报告的title"

      description='测试报告描述'

      tester="sinder"

)

runner.run(s)

  

posted @ 2018-08-07 16:03  sinder2018  阅读(39)  评论(0)    收藏  举报