【发布时间】:2020-04-27 16:17:08
【问题描述】:
几天来,我一直在尝试使用测试数据设置 Firebase 模拟器。
我做了什么?
- 我已成功部署 Firebase 模拟器
- 我编写了一个测试来检查模拟 Firestore 中的值,并且测试也通过了。
func test_WhenPartyNameIsUnique_ThenErrorIsNil() {
// given
let exp = self.expectation(description: "Waiting for Firebase Emulator")
// when
self.sut.isUnique(partyName: "akshit") { (error) in
// then
XCTAssertNil(error)
exp.fulfill()
}
self.waitForExpectations(timeout: 1, handler: nil)
}
有什么问题?
我无法弄清楚如何为每个测试设置不同的测试数据。对于上述测试,我想检查partyName 是否不是唯一的(意味着数据库中已经存在)。我该怎么做?
【问题讨论】:
-
我不确定我的理解是否正确,但现在将数据导入模拟器的常用方法是运行代码以在启动时从应用程序代码中注入该数据。正在研究一种在启动时将数据作为命令行选项注入模拟器的方法,但像往常一样:我们不能做出任何承诺,也不能给出时间表。在此之前,它必须来自您的代码。
-
嗨,@FrankvanPuffelen 我想用一些初始数据设置 Firestore,仅用于特定的单元测试。我希望这现在很清楚。
-
在这种情况下:现在将数据导入模拟器的常用方法是运行代码以在启动时从应用程序代码中注入该数据。
标签: ios swift firebase google-cloud-firestore firebase-tools