一、 什麼是 mock
mock測試就是在測試過程中,對于某些不容易構造或者不容易擷取的對象,用一個虛拟的對象來建立以便測試的測試方法
那麼何時使用????
1、Mock模拟資料測試
測試類 A 時,類 A 需要調用類 B 和類 C,而類 B 和類 C 又需要調用其他類如 D、E、F 等,假如類 D、E、F 構造很耗時又或者調用很耗時的話是非常不便于測試的,可以使用 Mock 對象模拟資料進行測試。
可以将類 B 和類 C 替換成 Mock 對象,在調用類 B 和類 C 的方法時,用 Mock 對象的方法來替換而不用實際去調用其他類。這樣測試效率會高很多。
2、團隊并行工作,提高工作效率
若建立了一個Mock,則就可以在service接口建立之前寫Service Tests了,這樣就可以在開發過程中把測試添加到你的自動化測試環境中了,實作測試與開發的并行工作。
3、為無法通路的資源編寫測試
若在測試service接口時需要經過防火牆通路,防火牆不能為你打開或者需要認證才能通路。遇到這樣情況時,你可以在你不能通路的地方使用Mock替代。
二、使用mock頁面測試時構造待測資料
mock response:就是模拟響應資料,可以通過截取包,改包實作
1、響應擷取及fiddler配置
第一步:使用fiddler抓包,如下圖
第二步驟:複制整個響應資料,修改響應,改為你想要的資料儲存起來
或者
若不使用fiddler抓取的可以複制響應修改成你想要的資料,可以自己建立txt檔案,儲存編碼為UTF-8也是可以的
第三步驟:配置fiddler
選擇左側位址——> AutoResponder ——>勾選enable、Unmatched ——>add Rule 勾選——>選擇find a file ,找到你之前儲存好的響應檔案——>save 完事
2、通路資料
1)再次請求接口,檢視響應是否為我們之前的修改過儲存的資料
2)打開頁面驗證,可看到之前儲存的響應資料