testbase.datadrive
Package¶
数据驱动模块
使用介绍: 1、在TestCase类前面加入@DataDrive装饰器,参数为测试数据列表或者字典:
@datadrive.DataDrive([1,2,3])
class Test(tc.TestCase):
def runTest(self):
pass
@datadrive.DataDrive(
{
'TEST1':1,
'TEST2':2,
'TEST3':3,
}
)
class Test(tc.TestCase):
def runTest(self):
pass
在测试报告中展示用例名字时,若参数为列表的,则在用例后面增加一个索引序号,若参数为字典的,则在用例后面增加上key的名字:
列表显示为:
Test#1 Test#2 Test#3字典显示为:
Test#TEST1 Test#TEST2 Test#TEST3
2、可以在runTest里通过self.casedata使用测试数据:
def runTest(self):
print(self.casedata)
3、运行及调试方法和原来一样:
MyTest().run()
完整的例子如下::
# -*- coding: utf-8 -*-
import testbase.testcase as tc
import testbase.datadrive as datadrive
@datadrive.DataDrive([1,2,3])
class MyTest(tc.TestCase):
"""test
"""
owner = 'foo'
priority = tc.TestCase.EnumPriority.High
status = tc.TestCase.EnumStatus.Ready
timeout = 5
def runTest(self):
print 'runTest, casedata:', self.casedata
if __name__ == '__main__':
MyTest().run()
-
class
testbase.datadrive.
DataDrive
(case_datas)¶ 基类:
object
数据驱动类修饰器,标识一个测试用例类使用数据驱动
-
testbase.datadrive.
get_datadrive
(obj)¶ 获取对应用例的数据驱动
参数: obj (TestCase/type) -- 测试用例或测试用例类 :returns DataDrive
-
testbase.datadrive.
is_datadrive
(obj)¶ 是否为数据驱动用例
参数: obj (TestCase/type) -- 测试用例或测试用例类 :returns boolean
-
testbase.datadrive.
load_datadrive_tests
(cls, name=None)¶ 加载对应数据驱动测试用例类的数据驱动用例