2016-10-12 2 views
0

UI 테스트 중에 navbar에 문자열이 나타날 때까지 기다리려고합니다. 기대를 설정하려고 할 때 "스레드 1 : 중단 점 1.1"이 표시됩니다. 여기서 내가 뭘 잘못하고 있니?XCTest - 조건부 대기 실패

expectation(for: NSPredicate(format: "label CONTAINS 'Rent'"), 
    evaluatedWith: XCUIApplication().navigationBars.staticTexts, 
    handler: nil) 
waitForExpectations(timeout: 10, handler: nil) 
+0

중단 점을 설정 했습니까? 그럴 경우 제거하십시오. – rmaddy

+0

아니요. 중단 점 설정이 없습니다. 중단 점 1.1은 보통 내부 예외를 나타냅니다. 그 시점부터 계속하면 더 많은 정보를 얻을 수 있지만이 경우에는 그렇지 않습니다. – zorro2b

답변

1

좋아, 알아 냈어. 쿼리가 아닌 요소가 필요합니다. 코드는 다음과 같아야합니다.

expectation(for: NSPredicate(format: "exists == 1"), 
    evaluatedWith: XCUIApplication().navigationBars.staticTexts. 
    element(matching: NSPredicate(format: "label CONTAINS 'Rent'")), 
    handler: nil) 
waitForExpectations(timeout: 10, handler: nil) 
+0

이전과 개선 된 일치가 항상 올바로 일치하지 않는 것으로 업데이트되었습니다. – zorro2b

관련 문제