簡體   English   中英

如何使用XCTest對脫機方案進行單元測試

[英]How to unit test offline scenarios using XCTest

我正在嘗試執行一組單元測試,這需要不同的網絡連接狀態。 使用XCTest(在Swift中)時,如何模擬離線iOS設備?

謝謝

解決此問題的方法不止一種。

模擬/存根是一種,您可以使用OCMock或OCMockito之類的模擬框架,並強制該方法返回每次測試所需的內容。

另一種“經典”方法(我更喜歡這種方法)是實現一個存根/虛擬類,該類與網絡類共享相同的API,並再次使它返回每次測試所需的內容。

差異主要是哲學性質

最重要的是,您需要一種方法來強制API返回要測試的對象。

為了獲得現實情況,例如丟失數據包,延遲,您可以安裝Network Link Conditioner(可從Apple下載中心獲取 ),但會影響您的PC和模擬器。 另外,您將需要使用異步測試( 請在本教程中檢查XCTestExpectation )來等待響應或超時。

要進行快速的簡單測試,您可以在iPhone上運行單元測試,並將iPhone設置為飛行模式。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM