faker批量生成測試資料
阿新 • • 發佈:2020-07-12
faker可以用來批量構造測試資料。首先安裝:pip install Faker
具體用法參考:https://zhuanlan.zhihu.com/p/87203290
這裡主要是講下利用faker批量生成測試資料,並儲存到資料庫。
如下圖,建立了一個person表,裡面有id,name,address,birthdate。這幾個欄位,id是自增屬性。
下面利用faker生成測試資料後,再呼叫pymysql將生成的資料儲存到資料庫對應的person表裡面。
效果如圖:
demo如下:
import pymysql from faker import Faker faker = Faker("zh_CN") # 中文資料 def insert_data(): conn = pymysql.connect(host='localhost', port=3306, user='root', password='root', database='school') cursor = conn.cursor() # SQL 插入語句 sql = "INSERT INTO person(name,address,birthdate)VALUES (%s,%s,%s)" person_data = [] for i in range(100): person_info= (faker.name(), faker.address(), faker.date()) person_data.append(person_info) print(person_data) try: # 執行sql語句 cursor.executemany(sql, person_data) # todo 批量生成資料用executemany # 提交到資料庫執行 conn.commit() print("插入資料完成...") except Exception as e:# 如果發生錯誤則回滾 conn.rollback() raise e finally: conn.close() # 關閉資料庫連線 insert_data()