2017-10-26 1 views
0

펜촉에서로드 된 UIView 내에 UITextField가 있고 isAccessiblityElement이 true로 설정된 경우 모두 superview에 설정되어 있지 않습니다. accessbilityIdentifierSearch Field으로 설정되어 있습니다.UI 테스트의 하위 요소가 아닌 액세스 가능성 요소

뷰가 펜촉에서로드되고 navigationItem의 titleView으로 설정됩니다. 그러나 UI 테스트를 수행 할 때 식별자를 사용하여 요소를 찾을 수 없습니다.

앱의 루트에서 하위 계층 구조 전체에 대한 debugDescription을 인쇄하면 접근성 요소가 아니더라도 펜촉에서로드 된 뷰까지만 표시됩니다. 계층 구조에서 식별자가 Search Field 인 요소가 없습니다.

UITextField을 계층 구조에 표시하고 쿼리 가능한 UI 요소가되도록하기 위해 수행해야 할 다른 작업이있어서 UI 테스트와 상호 작용할 수 있습니다.

+1

UIView에 isAccessibilityElement = false가 있는지 확인하십시오. – Oletha

+0

UITextField의 텍스트를 프로그래밍 방식으로 변경합니까? 코드를 변경할 위치에 게시 할 수 있습니까? – lagoman

답변

0

나는 최근에 비슷한 문제를 다루었습니다. Xcode 9에서는 중첩 된 UI 요소를 UI 자동화 중에 찾을 수없는 문제가 발생했습니다.

"컨테이너"UIView의 인터페이스 빌더에서 내게 필요한 옵션 "사용함"을 선택 취소하여이 문제를 해결했습니다.

enter image description here

에 UI 자동화에 마지막으로 액세스 할 수있는 UI 개체를 포함하는 모든 전망이 일 후.

희망이 도움이됩니다.