通过for循环读取csv文件数据,实现注册功能:
问题:
其中有一条数据被注册过或测试失败时,程序就会终止,无法继续执行
优化:
(1)在类前加装饰器【@ddt.ddt】
表示当前类是一个数据驱动测试类
@ddt.ddt
class register3(BaseTestCase):
(2)在方法前加一个装饰器【*@ddt.data(reader) 】
用来指定测试数据源,要求数据源的格式不能是数组或者列表,在数据前加一个星号,相当于是这个数据源里的多个参数。
例:
list = [1,2,3,4]
print(list)
print(*list)
打印结果:
[1,2,3,4]
[1],[2],[3],[4]
相当于for循环,通过data方法,转化成按行读reader
reader = reader("test_case_register.csv") #创建reader对象,读取到csv文件的数据
@ddt.data(*reader)
def test_register(self,row):
....
相关代码
....