ios - 如何根据当前工作日对数据进行单元测试

标签 ios unit-testing

所以我将一些项目添加到核心数据中,其中包含一个 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)

这将在周五、周六或周日运行单元测试时起作用。但如果我今天运行它,它将失败。

测试此场景的最简单方法是什么?

最佳答案

正如其他人所说,不要让您的单元测试从真正的“服务”获取数据。模拟为您提供正在此处测试的数据的服务。将其替换为真实服务的愚蠢实现,并对它返回的数据进行硬编码。这样您就不必担心工作日之类的事情。

关于ios - 如何根据当前工作日对数据进行单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38952480/

相关文章:

ios - 在 iPhone 应用程序中实现应用程序瘦身

iOS 快速从深层链接 URL 中提取固定链接

javascript - 如何使用 Jest 模拟构造函数状态初始化

javascript - 为什么当我使用 Tabs 时 Travis 不让我通过?

iphone - 是否有包含所有 iOS 设置本地化字符串的资源?

ios - Xcode8.3更新后不断崩溃

ios - Watchkit 和 WCSession

python - python 2.6 中未调用 unittest 中的 setupclass

android - 如何在针对特定 Gradle 构建风格时从命令行运行单个单元测试方法

连接到数据库的Java测试类