zoukankan      html  css  js  c++  java
  • python单元测试框架-unittest(四)之用例综合框架管理

    简述为何如要框架?

    前面测试用例与执行都是写在一个文件,当用例数量不断增加的时候,用例的执行与管理变得非常麻烦,因此需要对用例根据具体的功能模块来使用单独的模块来管理。就像一所学校要根据不同年级进行分班管理,也是同样道理。

    实例:Project文件目录下包含4个python文件

    StartEnd.py

    1 #coding=utf-8
    2 import unittest
    3 class SetUp_TearDown(unittest.TestCase):
    4     def setUp(self):
    5         print("test start")
    6     def tearDown(self):
    7         print("test end")

    calculatory.py

    1 #coding=utf-8
    2 class Math(object):
    3     def __init__(self,a,b):
    4         self.a=int(a)
    5         self.b=int(b)
    6     def add(self):
    7         return self.a+self.b
    8     def sub(self):
    9         return self.a-self.b

    test_add.py

    #coding=utf-8
    from calculatory import *
    from StartEnd import *
    
    class TestAdd(SetUp_TearDown):
        def test_add(self):
            i=Math(5,5)
            self.assertEqual(i.add(),10)
    
        def test_add1(self):
            i=Math(8,8)
            self.assertEqual(i.add(),16)

    test_sub.py

     1 #coding=utf-8
     2 from calculatory import *
     3 from StartEnd import *
     4 class TestSub(SetUp_TearDown):
     5     def test_sub(self):
     6         i=Math(5,5)
     7         self.assertEqual(i.sub(),0)
     8 
     9     def test_sub1(self):
    10         i=Math(8,5)
    11         self.assertEqual(i.sub(),3)

    runtest.py

     1 #coding=utf-8
     2 import unittest
     3 '''
     4 •    使用discover 可以一次调用多个脚本
     5 •    test_dir 被测试脚本的路径
     6 •    pattern 脚本名称匹配规则
     7 
     8 '''
     9 test_dir='./'
    10 discover=unittest.defaultTestLoader.discover(test_dir,pattern='test*.py')
    11 
    12 if __name__=='__main__':
    13     runner=unittest.TextTestRunner()
    14     runner.run(discover)
  • 相关阅读:
    Berlekamp-Massey算法学习笔记
    HDU 1848 Fibonacci again and again(SG函数)
    jQuery EasyUI API 中文文档
    视频质量评价方法:VQM
    hdu 4021 24 Puzzle ( 逆序数判断是否可解 )
    大菜鸟学linux-0.11(开始篇)
    Oracle 临时表空间 temp表空间切换
    Android 如何增大开机铃声 M
    使用Jquery+EasyUI 进行框架项目开发案例讲解之三---角色管理源码分享
    Android 如何添加一个新的时区
  • 原文地址:https://www.cnblogs.com/shenhainixin/p/9355667.html
Copyright © 2011-2022 走看看