⼗三、python中ddt的使⽤和excel数据读取
ddt的使⽤和excel数据读取:
ddt:数据驱动测试
观念:把测试数据和⽤例代码进⾏分离,通过外部数据去⽣成测试⽤例,⽅便后期维护,以为测试数据的管理
ddt的使⽤:
1、测试类前⾯使⽤@ddt
2、在测试⽅法⾯前@list_data
3、在测试⽅法中定义⼀个参数⽤来接收⽤例数据
4、如果要添加⽤例描述,需要在测试数据中添加⼀个title字段(测试数据需要是字典类型)。或者在⽅法下⾯添加("""⽤例描述""")
```python
import unittest
#导⼊功能函数login_dxc
from testcases.login import login_dxc
#导⼊ddt,list_data
from unittestreport import ddt, list_data
#⽤例数据
cases = [
{'expected': {'code': 0, 'msg': '登录成功'}, 'params': {"username": "duanxc", "password": 123456}},
{'expected': {'code': 1, 'msg': '账号和密码不正确'}, 'params': {"username": "duanxc", "password": 12345}}
]
#在类前@ddt
@ddt
class test_login(unittest.TestCase):
#在⽅法⾯前@list_data()括号⾥⾯传⼊⽤例数据
@list_data(cases)
#⽅法参数⾥⾯,写⼀个变量去接受cases的数据
def test_login_01(self, item):
# 准备⽤例数据
data = item["params"]
expected = item["expected"]
# 调⽤被测试的函数,获取实际结果
res = login_dxc(**data)
# 断⾔
self.assertEqual(expected, res)
```
excel数据读取:
```python
import openpyxl
#基础⽤法
#1、加载excel⽂件为⼯作簿对象
python怎么读取excel某一列res = openpyxl.load_workbook(r"E:\Study\datas\cs.xlsx")
#查看所有表单名
sheet=res.sheetnames
# print(sheet)
#2、选中表单
sheet1=res['Sheet1']
# print('sheet1')
#3、读取数据
data= ll(row=1,column=1)#row⾏,column列
print(data.value)
```
1、rows:按⾏获取表单中所有的格⼦,每⼀⾏格⼦放到⼀个元祖中
```python
import openpyxl
wookbook = openpyxl.load_workbook(r"E:\Study\datas\cs.xlsx") sh = wookbook["Sheet1"]
# rows:按⾏获取表单中所有的格⼦,每⼀⾏格⼦放到⼀个元祖中
res = ws)
# 获取第⼀⾏的数据
item = [i.value for i in res[0]]
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论