私は自分のプロジェクトのUIテストケースを書いています。
私のプロジェクトフローは次のとおりです。
したがって、アプリケーションのフレッシュインストールを実行すると、このフローはテストケースに記録され、新しいフレッシュビルドで実行すると機能します。
しかし、問題は、古いビルドでテストすると、場所の許可に関するアラートがなく、テストが失敗することです。このケースを処理したり、テストを実行するたびにユーザーに許可を求めるにはどうすればよいですか?
ユーザーの資格情報をリセットするためにXCUIApplication()
、LaunchArgumentsをAppDelegateに渡して処理します。
私はコードを実装しましたが、正しい方法かどうか教えてください:
addUIInterruptionMonitor(withDescription: "Allow “APP” to access your location?") { (alert) -> Bool in
alert.buttons["Only While Using the App"].tap()
return true
}
上記のコードは、アラートが発生するかどうかに関係なく、両方で機能します。
割り込みモニターを使用するのが正しい方法です。ただし、アラートを操作する前に、表示されているアラートが予期しているアラートであるかどうかを確認する方が安全です。
addUIInterruptionMonitor(withDescription: "Allow “APP” to access your location?") { (alert) -> Bool in
let button = alert.buttons["Only While Using the App"]
if button.exists {
button.tap()
return true // The alert was handled
}
return false // The alert was not handled
}
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加