アップルのUIテストフレームワークに関する適切なドキュメントを見つけることは難しいです。特定の名前のボタンやラベルを見つけることができる多くの例を見てきましたが、どのように一般的なUIViewを探すことができますか?XCUIElementsQueryを使用してUIViewの存在をテストするにはどうすればよいですか?
例えば、accessibilityLabel == "Some View"でビューを設定すると、テスト実行中にその名前のビューを見つけるにはどうすればよいですか?
私は(失敗した)次のコードを試してみました:私はあなたが上記の持っているコードで参照の問題は、あなたが特にアプリの子供の視野を見つけようとしているということです
XCUIElement *pvc = [[app childrenMatchingType:XCUIElementTypeAny] elementMatchingPredicate:[NSPredicate predicateWithFormat:@"accessibilityLabel == 'Places View'"]];
NSPredicate *exists = [NSPredicate predicateWithFormat:@"exists == true"];
[self expectationForPredicate:exists evaluatedWithObject:pvc handler:nil];
[self waitForExpectationsWithTimeout:10 handler:nil];
NSLog(@"%@", [[app childrenMatchingType:XCUIElementTypeAny] elementMatchingPredicate:[NSPredicate predicateWithFormat:@"accessibilityLabel == 'Places View Controller'"]]);
私は子供を探すのが間違いです。残念ながら、子孫を検索してもうまくいきませんでした...私は大きなタイムアウトを設定しようとしましたが、Xcodeはそのアクセシビリティラベルでビューを見つけられませんでした。 –
アクセシビリティインスペクタを使用している場合、検索しようとしているビューを選択できますか?ラベルを設定するだけでなく、アクセシビリティが有効になっていることを確認する必要があります。デフォルトでは、UIViewはアクセシビリティのために有効になっていないと思います。 –