>

응용 프로그램 테이블에는 4 개의 탭이 있습니다.

  • tabA
  • tabB
  • tabC

왼쪽에서 오른쪽으로 같은 위치에 있는지 확인해야합니다 tabA tabB tabC tabD

예를 들어 실패는 다음과 같습니다. tabB tabC tabA tabD

XCUITest를 사용하여 이것을 테스트하는 방법이 있습니까? Xcode 설명서를 찾았지만 원하는 내용이 없습니다.

  • 답변 # 1

    element(boundBy: Int) 사용  탭의 문자열과 함께 사용-https://developer.apple.com/documentation/xctest/xcuielementquery/1500842-element

    탭에 일부 텍스트가 포함되어 있다고 가정합니다 (탭의 텍스트가tabA, tabB, tabC, tabD라고 말하면 가장 좋은 해결책은탭의 텍스트탭 색인을 터치합니다. 텍스트를 확인하면 요소가 올바른 탭 (tabA, tabB ...)이고 요소 색인을 검사하여 올바른 위치에 있음을 알 수 있습니다.

    이 작업은 간단합니다. 탭바 버튼을 사용하는 방법을 찾으십시오 (보통 : XCUIApplication.tabBars.buttons["tabA"] ). 다음과 같이 문자열과 위치를 확인하십시오.

    let app = XCUIApplication()
    let tabA = XCUIApplication.tabBars.buttons["tabA"].element(boundBy: 0)//tabA is on the first position
    let tabB = XCUIApplication.tabBars.buttons["tabB"].element(boundBy: 1)//tabB is on the second position etc...
    let tabC = XCUIApplication.tabBars.buttons["tabC"].element(boundBy: 2)
    let tabD = XCUIApplication.tabBars.buttons["tabD"].element(boundBy: 3)
    XCTAssertTrue(tabA.exists) 
    XCTAssertTrue(tabB.exists) 
    XCTAssertTrue(tabC.exists) 
    XCTAssertTrue(tabD.exists) 
    
    

    편집 : 문자열 대신 accessibilityIdentifier 를 사용하는 것이 좋습니다.  -https://developer.apple.com/documentation/uikit/uiaccessibilityidentification#//apple_ref/occ/intfp/UIAccessibilityIdentification/accessibilityIdentifier

관련 자료

  • 이전 sql - SSIS 직접 입력 쿼리에서 LIKE를 사용하여 변수에 할당 할 수 없습니다
  • 다음 java - TreeMap 에서 단일 키를 업데이트하면 모든 키 값이 변경됩니다