Xcode UIテストを使用して、アプリケーション内の特定のUI要素が実行されている場合に実行するコードを実装します。私のアプリはログインしている状態で、現在ログインしているユーザーをログアウトしたいのですが、私はこのペーパーバッグからの脱却を提案する文書を見つけることができませんでした。Xcode UIテスト:条件付きでテストを実行する
XCTAssert
を使用して(要素が存在しない場合は私のテストが直ちに失敗する)、XCTExpectation
を使用すると、2つの可能なパスが表示されます(要素が存在しない場合は、 t present)。アプリが特定の状態にある場合、別のコードを実行するためのより簡単な方法が必要です。コードでそれを置くために
私はこのような何かを探しています、:
if let signOutElement = app.collectionViews.staticTexts["Sign Out"] {
signOutElement.tap()
}
ああ、これは動作しません。
私の経験では、通常、かなり厳しい状態でテストが行われます。アプリケーションをコードの特定の部分をテストできるようにします。この場合、ユーザーはログインしている状態になっているので、ログアウトする必要があります。 理論的には、このような場合に頻繁に発生するページ上の何らかの種類のタイマーでこれを達成できますが、サインアウトを探すこともできますが、必ずしもテストimoを行う必要はありません。 –