用例综合框架管理

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

 

案例:Test_Project 文件目录下包含4python文件:

 

  • l--StartEnd.py—— SetUpTearDown管理
  • l--calculatory.py——加减法运算方法的实现
  • l--test_add.py——加法测试用例
  • l--test_sub.py——减法测试用例
  • l--runtest.py——用例执行管理

 

#/usr/bin python
#-*- coding:UTF-8 -*-
import unittest

class StartEnd(unittest.TestCase):
    def setUp(self):
        print("test start:")

    def tearDown(self):
        print("test end!")
StartEnd.py
#/usr/bin python
#-*- coding:UTF-8 -*-

class Math():
    def __init__(self,a,b):
        self.a = a
        self.b = b

    def f_add(a,b):
        return a+b

    def f_sub(a,b):
        return a-b
calculatory.py
from calculator  import Math
from StartEnd import *

class Test_f_add(StartEnd):
    def test_f_add_normal(self):
        result = Math.f_add(2,3)
        self.assertequal(result,5)

    def test_f_add_except1(self):
        result = Math.f_add(2,3)
        self.assertequal(result,4)
test_f_add.py
runtest.py
  • 使用discover 可以一次调用多个脚本
  • test_dir 被测试脚本的路径
  • pattern 脚本名称匹配规则

 

import unittest
#当前路径 test_dir
='./'
#装载用例,pattern 匹配规则 discover=unittest.defaultTestLoader.discover(test_dir,pattern='test*.py') if __name__ == '__main__': runner=unittest.TextTestRunner() runner.run(discover)

 

 

 注意:::同一个类目下是不需要from

 

posted @ 2018-06-26 17:15  pretend_smile  阅读(134)  评论(0)    收藏  举报