您好,登錄后才能下訂單哦!
mock就是在開發過程中,對于某些不容易構造或者不容易獲取的對象,用一個虛擬的對象來創建以便測試開發的方法。
mock測試
就是在測試過程中,對于某些不容易構造或者 不容易獲取的對象,用一個虛擬的對象來創建以便測試的測試方法。
mock對象
這個虛擬的對象就是mock對象。mock對象就是真實對象在調試期間的代替品。
mock對象使用范疇
真實對象具有不可確定的行為,產生不可預測的效果,(如:股票行情,天氣預報) 真實對象很難被創建的 真實對象的某些行為很難被觸發 真實對象實際上還不存在的(和其他開發小組或者和新的硬件打交道)等等.
使用mock對象測試的關鍵步驟
使用一個接口來描述這個對象 在產品代碼中實現這個接口 在測試代碼中實現這個接口 在被測試代碼中只是通過接口來引用對象,所以它不知道這個引用的對象是真實對象還是mock對象。
MockObject
使用Mock Object進行測試,主要是用來模擬那些在應用中不容易構造(如HttpServletRequest必須在Servlet容器中才能構造出來)或者比較復雜的對象(如JDBC中的ResultSet對象)從而使測試順利進行的工具。
目前,在Java陣營中主要的Mock測試工具有JMock,MockCreator,Mockrunner,EasyMock,MockMaker等,在微軟的.Net陣營中主要是Nmock,.NetMock等。
1.團隊可以更好地并發工作
并發?沒錯,技術人員就應該用并發這個詞。使用mock,各團隊之間可以不需要再互相等待對方的進度,只需要約定好相互之間的數據規范(文檔),即可使用mock構建一個可用的接口,可以更快的進行開發和調試以及自測,提升開發進度的同時,也將發現缺陷的時間點大大提前。
2.開啟TDD(Test-Driven Development)模式,傳說中的測試驅動開發
單元測試是TDD的常規操作,試想一下,當你測試過程中,某些協同模塊沒有完成,如何進行測試?這時mock就能很好的幫助你解決這個問題。當接口定義好后,測試人員就可以創建一個mock,把接口添加到自動化測試環境,提前創建測試。
3.測試覆蓋率
比如一個接口在各種不同的狀態下要返回不同的值,我們的傳統的做法是復現這種狀態然后再去請求接口,這是非常不科學的做法,而且這種復現方法很大可能性因為操作的時機或者操作方式不當導致失敗,甚至污染之前數據庫中的數據。如果我們使用mock,就完全不用擔心這些問題。
4.方便演示
通過使用mock模擬數據接口,我們即可在只開發了UI的情況下,無須服務端的開發就可以進行產品的演示。
5.隔離系統
在使用某些接口的時候,為了避免系統中數據庫被污染,我們可以將這些接口調整為mock的模式,以此保證數據庫的干凈。
mock有很多的在線平臺,基本上都要注冊,并且不穩定。所以longyoung我就萌發了一個想法,能不能本地搭一個mock,方便快捷。即使沒網也可以工作,是不是很爽?在上網找了一圈,發現沒有比較簡單的方法,后來通過努力,終于實現了。方法很簡單,因此不是特別智能,后期可以想辦法升級下方法。廢話少說,直接上步驟:
1.安裝Node.js,請自行搜索安裝。
2.隨便到一個目錄下創建一個文件存放json數據,如:test.json。
3.cd命令切換到文件目錄(如:D:\gittest\test),執行命令:http-server -p 5050。-p是指定端口的意思,訪問的時候記得加端口號。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。