저는 firebase를 사용하여 어플리케이션을 구성하고 있습니다. 테스트를 실행할 수 있는지 확인하고 싶습니다. 그것에 관해 많은 문서가 없기 때문에 나는 올바른 방법으로하고 있는지, 아니면 완전히 잘못하고 있는지 알고 싶었습니다.신속한 Xctest에서 Firebase 클래스를 테스트하십시오.
이 솔루션에 대해별로 느끼지 않는 것들 중 일부는 다음과 같습니다. 1. 나는 새로운 테스트 클래스를 만들 때마다 FirApp.configure를 실행하고 있습니다. 공유 할 수있는 방법이 아닌가요? 예를 들어 AppDelegate가 앱에서 작동하는 방식과 비슷합니다. 현재 이것은 테스트가 DB에 아무 것도 쓰지 않기 때문에 상충되는 것처럼 보입니다. 2. 새로운 수업을 할 때마다 인증해야합니다. 공유가 가능합니다. (예 : 사전 설정 파일에서)
import XCTest
import Firebase
@testable import BurgerRestaurant
class BurgerTests: XCTestCase {
var sut:Burger!
override func setUp() {
super.setUp()
FIRApp.configure()
self.sut = Constants.MockedObjects.testBurger
}
override func tearDown() {
sut = nil
super.tearDown()
}
func testSave() {
if TestSettings.useRealFBaseCalls {
let testSave = self.expectation(description: "Saving Burger Object")
FIRAuth.auth()?.signIn(withEmail: TestSettings.testFireBUser, password: TestSettings.testFireBPass, completion: { (user, error) in
self.sut.save(completion: {
testSave.fulfill()
})
})
}
self.waitForExpectations(timeout: 15, handler: nil)
}
}
테스트 작동 방법에 대한 아이디어를 환영합니다.
감사
요르단에 동의하십시오 - 공유해 주셔서 감사합니다 -. 그것들을 시험해보고 여기에 결과를 게시하려고합니다. –