天天看點

web測試批量造資料的三種方法

關于測試造大量資料,我想到了三種方法:

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、通過接口建立資料

通過接口首先要知道怎麼做接口測試

然後設定變量時候可以用計數器、函數助手等生成函數,并用到參數中

(比如計數器,一看就懂~~)

web測試批量造資料的三種方法

如果項目這邊說隻能手動錄入的話,上面兩種方法就不被允許了,那麼可以用下面的方法

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子產品

唉,隻能從界面錄入的話,都是野路子~~

繼續閱讀