faker相关资料链接:https://zhuanlan.zhihu.com/p/87203290
Faker类库函数试验
import csv from faker import Faker import datetime # 试验1:教师登录名规则:自己拼音简拼+t+序号 # 创建文件 file = open("testdata.csv", "w", newline="") # 获取写文件的对象 fwrite = csv.writer(file) name = ‘hyrt‘ for i in range(1, 11): num = str(i).zfill(5) # print(num) tloginname = name+num print(tloginname) # 写入内容 fwrite.writerow([tloginname]) # 关闭文件 file.close() # 试验2:姓名:随机汉字 # 英文名字 # faker = Faker() # 中文名字 faker = Faker(locale=‘zh_CN‘) for i in range(1, 11): tname = faker.name() print(tname) # 试验3:开始日期:当前系统时间 start = datetime.date.today() print(start) # 试验4:结束日期:开始日期之后的20天以内 faker = Faker() end = faker.date_between(start_date=start, end_date="+20d") print(end) # 试验5:将数据保存到文件中 # 创建文件 file = open("testdata.csv", "w", newline="") # 获取写文件的对象 fwrite = csv.writer(file) # 写入内容 fwrite.writerow(["aaa,bbb"]) fwrite.writerow(["aaa", "bbb"]) # 关闭文件 file.close() # 试验6:汉字转拼音 from xpinyin import Pinyin p = Pinyin() g=p.get_pinyin("王强").replace("-", "") print(g) email = g+"@51testing.com" print(email) # 试验7:邮件:随机生成 faker = Faker() temail = faker.email() print(temail) # 试验8:电话:随机生成 faker = Faker(locale=‘zh_CN‘) # 完整手机号码(加了国家和国内区号) # fphone = faker.msisdn() # print(fphone) # 手机号 phone = faker.phone_number() print(phone) # 试验9:身份证:符合身份证要求 faker = Faker(locale=‘zh_CN‘) # tssn = faker.ssn() tssn = faker.ssn(min_age=18, max_age=90) print(tssn) # 试验10:密码:固定6位长数字 faker = Faker(locale=‘zh_CN‘) tpwd = faker.password(length=6, special_chars=False, digits=True, upper_case=False, lower_case=False) print(tpwd)
***************************************
# 自动构造测试数据并保存文件试验
# 使用Faker函数进行数据构造
***************************************
需求:
教师登录名规则:自己拼音简拼+t+序号
教师姓名规则:随机汉字
密码:固定6位长数字
电话:随机生成
身份证:符合身份证要求
邮件:随机生成
开始日期:当前系统时间
结束日期:开始日期之后的20天内
import csv from faker import Faker import datetime from xpinyin import Pinyin # 创建文件 file = open("testdata.csv", "w", newline="") # 获取写文件的对象 fwrite = csv.writer(file) # 写入标题 fwrite.writerow(["教师登录名", "教师姓名", "密码", "电话", "身份证号", "邮件", "开始日期", "结束日期"]) name = ‘hyrt‘ faker = Faker(locale=‘zh_CN‘) p = Pinyin() for i in range(21, 31): # 生成序号 num = str(i).zfill(5) # 教师登录名:自己拼音简拼+t+序号 tloginname = name+num # 教师姓名:随机汉字 tname = faker.name() # 密码:固定6位长数字 tpwd = faker.password(length=6, special_chars=False, digits=True, upper_case=False, lower_case=False) # 电话:随机生成 tphone = faker.phone_number() # 身份证:符合身份证要求 tssn = faker.ssn(min_age=18, max_age=90) # 邮件:随机生成 # temail = faker.email() # 邮件:教师姓名拼音+@+邮箱域名 # 1、获取免费邮箱域名 rex = faker.free_email_domain() # 2、教师姓名汉字转拼音 g = p.get_pinyin(tname).replace("-", "") # 3、拼接邮箱字符串 temail = g + "@" + rex # 开始日期:当前系统时间 start = datetime.date.today() # 结束日期:开始日期之后的20天以内 end = faker.date_between(start_date=start, end_date="+20d") # 写入内容 fwrite.writerow([tloginname, tname, tpwd, tphone, tssn, temail, start, end]) # 关闭文件 file.close()
原文:https://www.cnblogs.com/String-song/p/13644810.html