一、Faker是什么?
在测试过程中,我们经常需要手动新增一些数据,满足我们的测试场景。如果需要的数据量比较大时,就不能一个个添加,这时我们可以用faker去生成伪数据,进行测试。
二、使用步骤
1.安装Faker
cmd输入(示例):
pip install faker
2.引入库,生成数据
思路:
-
从faker模块导入Faker这个类。
-
实例化,保存到变量fake中。
-
调用name()方法随机生成一个名字。
-
调用address()方法随机生成地址信息
代码如下(示例):
from faker import Faker
fake = Faker(locale='zh_CN')
name = fake.name()
print(name)
address = fake.address()
print(address)
2.将生成数据,写入Excel
需先安装openpyxl
pip install openpyxl
from openpyxl import Workbook
from faker import Faker
#写excel操作
def write_excel(fileName,data):
wb = Workbook()
# 写入表头
excel_head = ['序号', '姓名','手机号码', '地址']
sheet0Name = '员工信息'
sheet0 = wb.create_sheet(sheet0Name, index=0)
for i, item in enumerate(excel_head):
sheet0.cell(row=1, column=i + 1, value=item)
# 写入数据
for i, item in enumerate(data):
i = i + 2
for j, val in enumerate(item):
sheet0.cell(row=i, column=j + 1, value=val)
wb.save(fileName + '.xlsx')
#生成测试数据
def faker_data(num,i):
fake = Faker(locale='zh_CN')
print(num,i)
faker_list = []
name = fake.name()
phone = fake.phone_number()
address = fake.address()
faker_list.append(str(i+1))
faker_list.append(name)
faker_list.append(phone)
faker_list.append(address)
return faker_list
# 将测试数据放入列表
def faker_list_add(num):
base_list = []
for i in range(num):
fake_new_list = faker_data(num,i)
base_list.append(fake_new_list)
return base_list
write_excel(r'..\data\datas',faker_list_add(10))