python通过Faker造数据,生成真实的name、电话、地址等
import json
from faker import Faker
faker = Faker('zh_CN')#zh_CN中文名字
print(faker.name())
print(faker.phone_number())
上面脚本传给jmeter OS Process Sampler,会有乱码,下面代码解决乱码
jmeter里OS Process Sampler 调用脚本,但是jmeter查看结果树里有乱码
#jmeter里OS Process Sampler 调用脚本,但是jmeter查看结果树里有乱码
import json
from faker import Faker
import sysfaker = Faker('zh_CN')name_result = faker.name()
phone_result = faker.phone_number()# 将姓名结果转换为UTF-8编码的字节数组并输出
name_bytes = name_result.encode('utf-8')#第一次转换utf-8;打印结果:b'\xe8\xb5\xb5\xe4\xb8\xbd\xe5\x8d\x8e'
print(name_bytes.decode('utf-8'))#第二次转换utf-8;把第一次utf-8后的字节转为为字符# 将电话号码结果转换为UTF-8编码的字节数组并输出
phone_bytes = phone_result.encode('utf-8')
print(phone_bytes.decode('utf-8'))
下面把name、phone以json格式输出
import sys
# 设置标准输出的编码为UTF-8
sys.stdout.reconfigure(encoding='UTF-8')
faker = Faker('zh_CN')name_result = faker.name()
phone_result = faker.phone_number()user={"name":name_result,"phone":phone_result
}
#json.dumps() 输出的中文会以 \u 编码的形式显示,也就是 Unicode 编码形式,导致看起来像是乱码。
print(json.dumps(user,ensure_ascii=False))#ensure_ascii=False解决乱码