• 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)
  • 相关阅读:
    为什么你不是优秀的人?是这个原因么?
    我们应选择怎样的IT公司
    如何获得加薪
    隐藏为了适时出现
    如何通过一个问题,完成最成功的技术面试
    阿里负责人揭秘面试潜规则
    应聘互联网公司的简历应该是怎么样的?
    linq 图解
    Lambda表达式的前世今生
    Lambda应用设计模式
  • 原文地址:https://www.cnblogs.com/shenhainixin/p/9355667.html
Copyright © 2020-2023  润新知