1,未使用可变参数
import unittest
import ddt
t = ('苹果','火龙果','香蕉','柚子')
@ddt.ddt
class DemoTest(unittest.TestCase):
@ddt.data(t)
def test_login_demo(self, item):
print('开始打印参数')
print('取到的参数是{}'.format(item))
print('结束打印参数')
if __name__ == '__main__':
unittest.main()
打印的结果
Process finished with exit code 0
开始打印参数
取到的参数是('苹果', '火龙果', '香蕉', '柚子')
结束打印参数
2,使用可变参数
import unittest
import ddt
t = ('苹果','火龙果','香蕉','柚子')
@ddt.ddt
class DemoTest(unittest.TestCase):
@ddt.data(*t)
def test_login_demo(self, item):
print('开始打印参数')
print('取到的参数是{}'.format(item))
print('结束打印参数')
if __name__ == '__main__':
unittest.main()
打印的结果
开始打印参数
取到的参数是苹果
结束打印参数
开始打印参数
取到的参数是火龙果
结束打印参数
开始打印参数
取到的参数是香蕉
结束打印参数
开始打印参数
取到的参数是柚子
结束打印参数
3,使用unpack
import unittest
import ddt
t = [('苹果', '火龙果'), ('香蕉', '柚子')]
@ddt.ddt
class DemoTest(unittest.TestCase):
@ddt.data(*t) # 装饰方法,data解包之后 有几个参数就运行几条用例
@ddt.unpack # 根据,将上一层的数据再次进行根据逗号进行拆分 因为是两个参数 所以要用两个参数进行接收,注意:有几个变量就用几个参数进行接收
def test_login_demo(self, item1, item2):
print('开始打印参数')
print('取到的参数是{}'.format(item1))
print('结束打印参数')
if __name__ == '__main__':
unittest.main()
打印的结果
开始打印参数
取到的参数是苹果
结束打印参数
开始打印参数
取到的参数是香蕉
结束打印参数