關于測試造大量資料,我想到了三種方法:
1、通過資料庫插入
2、通過接口錄入
3、通過web自動化腳本錄入(如果以上兩種不被許可的情況,可以用這個,隻是做的慢點)
下面一一介紹:
1、通過mysql資料庫來建立一個存儲過程的方式插入
比如
delimiter $$ #聲明存儲過程的結束符号為$$
create procedure auto_insert()
BEGIN
declare i int default 1;#聲明變量i,也就是為了保證資料唯一性
while(i<300)do# 建立300條資料
insert into runoob_tbl(runoob_title, runoob_author, submission_date) values("學習 Python",i, NOW());#插入資料sql
set i=i+1;
end while;
END$$ #$$結束
delimiter ;
call auto_insert();#調用存儲過程
2、通過接口建立資料
通過接口首先要知道怎麼做接口測試
然後設定變量時候可以用計數器、函數助手等生成函數,并用到參數中
(比如計數器,一看就懂~~)
如果項目這邊說隻能手動錄入的話,上面兩種方法就不被允許了,那麼可以用下面的方法
3、selenium 的chrome浏覽器靜默模式,比如chrome的headless模式
chrome的headless模式意思是會正常的打開浏覽器執行操作,但是我們看不到浏覽器界面,這樣的話,也就省下了打開和關閉浏覽器的時間
比如
# -*- coding:utf-8 -*- # 建議所有都加編碼
from selenium import webdriver #導入webdriver包
from selenium.webdriver.chrome.options import Options
chrome_options = Options()
chrome_options.add_argument('--headless')
driver = webdriver.Chrome(chrome_options=chrome_options)
#這幾行能實作chrome的headless模式
driver.get("http://www.baidu.com")
driver.find_element_by_id("kw").send_keys("selenium")
driver.find_element_by_id("su").click()
print(driver.title)
driver.quit()
4、依舊用selenium 來做,用自己喜歡的程式設計的多線程方式可以節省時間,隻是很費電腦哈~~
比如我喜歡用python的 threading子產品
唉,隻能從界面錄入的話,都是野路子~~