XCTest UI 테스트를 처음 사용했습니다. Xcode 연속 통합을위한 봇을 만들었습니다. 병렬 테스트를 위해 iPhone 4, 5 및 6을 추가했습니다.XCTest iPhone 4s 장치의 연속 통합 실패
테스트가 간단합니다. 버튼을 클릭하면 "Hai"라벨이 "Hello"로 변경됩니다. 나는 방금 최종 레이블 값이 "안녕하세요"라고 단언했습니다. 테스트를 Xcode에서 로컬로 실행하면 모든 장치에서 작동합니다. 통합 # 41 -가 최선을 다하고 봇을 사용하여 통합되는 때, 테스트 케이스는
봇 문제 ([BeginUITests testExample()]의 테스트 실패) 봇을 시작하기 위해 보여주는 만 아이폰 4S에 대한 실패 봇
어설 시작 : XCTAssertEqual 실패 : ("옵션 ("하이 "참조)") (안녕하세요 "옵션 (" ")"!) 동일하지 않습니다 - 파일 : 시작/BeginUITests/BeginUITests.swift : 43
테스트가 실패한 이유를 알 수 없습니다. 내가 작성한 테스트 케이스는 다음과 같습니다 :
func testExample() {
let app = XCUIApplication()
let firstLabel = app.staticTexts.elementBoundByIndex(0)
let button = app.buttons["Button"]
XCTAssert(button.exists)
XCTAssert(firstLabel.exists)
button.tap()
sleep(3)
let changedLabel = app.staticTexts.elementBoundByIndex(0)
XCTAssertEqual(changedLabel.label, "Hello!")
}
나는 expectationForPredicate도 사용했습니다. 그러나 여전히 사용하지 마십시오. 그런 다음 XCUIApplication(). launch 후에 setup() 메서드에서 sleep (3)을 추가했습니다. 그것은 작동합니다. 그러나 전체 테스트 과정이 느려질 것입니다. 그게 문제 야. –