实验环境
- 确保安装了Visual Studio Code。
- 安装Python:在Visual Studio Code中安装Python扩展。如果你需要其它Python扩展,也可以选择“Python Extension”,这样可以完成Jupyter等相关扩展的安装。
- 配置Python环境
- Python虚拟环境常见的是venv。
- venv是Python自带的虚拟环境工具,包含了Python解释器和必要的库,具有轻量级、易使用、环境隔离的特点,但它不包含包管理器,需要使用pip进行包安装和管理。创建环境可以通过python -m venv venv_name完成。
- 另外,conda是anaconda发行的包和环境管理器,不仅可以管理Python环境,还可以管理其它语言的环境和依赖,可以装Python包、R包、二进制库等。可以管理环境变量和系统级以来。
我使用的是venv虚拟环境,在项目目录中创建venv虚拟环境,如图
- 安装Faker扩展
- 考虑下载速度,可以设置清华全局镜像源。
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
- 进入venv虚拟环境中的scripts目录,完成Faker的安装。我下载过相关安装包,所以提示信息中使用的是cached中的文件。
实验过程
Faker
- 创建项目文件夹Py_MySQL_Project。
- 在项目中创建test_faker.py文件,并将集成环境设置为前面创建的venv虚拟环境。
- 在test_faker.py中进行一下编码实现,测试venv虚拟环境和Faker扩展是否能够正常使用 ,如果运行结果如图所示,表示环境venv集成环境和Faker扩展已配置成功,并可以正常使用。
from faker import Faker
fake = Faker()
random_string = fake.pystr(0,10)
print(random_string)
MySQL
- 安装MySQL Connector扩展
生成数据
本文以数据库”new_energy_vehicle“中的”users“表为例。
创建user_mock.py文件,完成以下编码
from faker import Faker
import mysql.connector
# 连接 MySQL database
mydb = mysql.connector.connect(
host="127.0.0.1",
user="root",
password="123456",
database="new_energy_vehicles",
auth_plugin='mysql_native_password' # 选择 mysql_native_password 验证插件
)
cursor=mydb.cursor()
# 创建 Faker 对象
fake = Faker(["en_US","zh_CN"])
# Generate 100 mock users
for i in range(2):
# 生成随机 user 数据
username = fake.name()
password = fake.password()
email = fake.email()
mobile = fake.phone_number()
registertime=fake.date_time_between(start_date="-30d", end_date="now")
# print(registertime) #做日期生成测试用
# 插入用户数据到 MySQL 表格
sql = "INSERT INTO users (username, password, email, mobile, registertime) VALUES (%s, %s, %s, %s, %s)"
val = (username, password, email, mobile, registertime)
cursor.execute(sql, val)
# 提交变更到 database
mydb.commit()
# 关闭数据库连接
mydb.close()
运行完成后查看new_energy_vehicle数据库中的users表,如图所示
实验结果
- 验证数据:登录到MySQL数据库new_energy_vehicle ,检查users表,确认数据已成功插入。
- 扩展性:根据需要,Faker可以生成更多种类的数据,以适应不同的测试场景。
- 结论:结合Visual Studio Code、Python、Fake库、MySQL连接器,可以高效地为MySQL数据库生成Mock数据,用于开发和测试阶段。