前面博主讲解了ui自动化结合unittest框架引入Excel文件与parameterized 方法实现参数化,但这时候我们发现Excel文件在导入数据时整型数会默认变成浮点数,这样就与我们在自动化测试操作中所需要的数据不相符了。虽然博主提供了一种对Excel文件内部进行修改来使这种情况不发生改变,但是操作起来还是有点麻烦的,我们其实也可以用代码的方式强行将浮点数再转换成整型,但是在遇到改列有的数据我们需要它就是整型有的我们就需要它是浮点这有点麻烦了。下面博主就再介绍一种参数化方法,使用CSV文件参数化,就可以完全避免以上问题了。
1.首先导入CSV包。这里我们不需要额外安装直接导入即可使用。
import csv
2.新建一个CSV文件,这里我们直接通过WPS表格创建Excel文件,将文件另存为csv格式,注意这里不能通过直接更改文件后缀名的方式,不然会不成功的哦。
3.读取本地CSV文件
date = csv.reader(open('C:\\Users\mingm\Desktop\ceshi (2).csv','r'))
4.循环输出每条信息,这里要注意的是CSV文件的操作并没有Excel表灵活,它只能默认从第一行开始往下读取,但这对于存放测试用例来说已经足够了。
weijia = []
for i in date:
print(i)
weijia.append(i)
print(weijia)
下面我们看下打印信息。
[['城市', '年龄', '地点'], ['南京', '20', '搜索'], ['北京', '23', '22.22'], ['上海', '21', '搜索'], ['东京', '22', '1995/11/22']]
刚好符合parameterized 方法方法对于参数化实现的格式。
完整代码如下。其实就是几行就能搞定了,很简单。
import csv
date = csv.reader(open('C:\\Users\mingm\Desktop\ceshi (2).csv','r'))
weijia = []
for i in date:
weijia.append(i)
print(weijia)