2016-08-15 51 views
0

因此,我在Core Data中添加了一些項目,其中包含Date字段。我有一個方法可以檢索當前一週的所有數據。
我的問題是我該如何單元測試呢?如何根據當前工作日單位測試數據

給定的數據在測試時應該始終有效。它不應該依賴測試運行的那一天。

比如現在我的數據是這樣的:

// Given 
1. add item with Date = today 
2. add item with Date = today - 1 
3. add item with Date = today - 4 

// When 
Get items count 

// Then 
XCTAssertTrue(count == 3) 

當單元測試是在週五,週六或週日運行這將工作。但是如果我今天運行它會失敗。

測試此場景的最簡單方法是什麼?

+0

創建一個代理對象,爲您的測試僞造數據。 – hola

+0

或者將自定義數據提供給您的測試。 – hola

+0

你能提供一個例子嗎?對我來說不是那麼清楚 – Kobe

回答

1

正如其他人所說的,不要讓你的單元測試從真正的「服務」中獲取他們的數據。嘲笑提供您正在測試的數據的服務。將其替換爲實服務的啞實現,並對返回的數據進行硬編碼。那麼你不必擔心週日和東西。

相關問題