1.问题现状
某服务管理和代理配置模块的测试,需要人为造数据,比如IP,服务名,项目描述等。但自己手动造数据,一是需要花心思造不重复的数据,而是数据太假,价值不大。基于这个问题,需要找到造以假乱真的数据的方法
faker是python的第三方模块,其可以生成一批各种各样,看起来以假乱真的数据。
2.怎样fake数据
第一步:安装Faker库,pip install Faker
第二步:创建一个Faker对象
from faker import Faker
fake = Faker()
##fake = Faker(‘zh_CN’)
默认生成英文信息的数据,加上’zh_CN’,则指定为中文
第三步:造数据
用户名:print(‘name:’, faker. user_name())
IPV4: print(‘ip:’, faker.ipv4())
文本描述:print(‘text:’, faker.text())
md5: print(’ md5:’, faker. md5())
3.附上python代码:
from faker import Faker
import requests
requests.packages.urllib3.disable_warnings()
url1 = ‘https://10.91.4.17:58810/v1/atling/user/get_login_info?username=admin&token=49be07638549’
url2 = ‘https://10.91.4.17:58810/index’
url3 = ‘https://10.91.4.17:58810/v1/atling/celery/node/install’
one_session = requests.Session() # 自动携带cookie
fake = Faker()
ip = fake.ip()
data = {‘host’: ip,“port”: “22”,“password”: “1234566”,“protocol”:“ssh”,“server_type”:“0”,
“server_name”:“slavenode”,“server_conf”:"{}"}
headers = {“Content-Type”: “application/x-www-form-urlencoded; charset=UTF-8”}
one_session.get(url1,verify=False)
one_session.get(url2,verify=False)
result2 = one_session.post(url3,data=data,headers=headers,verify=False)
one_session.close()