8

新しい Android テスト ライブラリ Espresso を試しています。私がしようとすると:

onView(withId(R.id.gettingStarted))

テストは正常に実行されます。しかし、私がしようとすると:

onView(withId(R.id.gettingStarted)).check(matches(isDisplayed()));

私は得る.NoMatchingViewException: No views in hierarchy found matching: with id: is <2131296645>

誰もこのようなものを見たことがありますか?私の最初の反省は、Espresso はバージョン 1.0 しかないため、これは単なるバグであるということです。私は Android Studio を使用しており、セットアップの指示に正確に従いました。

4

3 に答える 3

0

テストの開発時に R.id を特定できない正当なケースが数多くあります。たとえば、特定のビューに R.id がないか、R.id が一意でない場合があります。ビューにアクセスする通常の方法 ( を使用findViewById()) が機能しないため、これにより、通常のインストルメンテーション テストが脆弱になり、記述が複雑になる可能性があります。したがって、ビューを保持しているアクティビティまたはフラグメントのプライベート メンバーにアクセスするか、既知の R.id を持つコンテナーを見つけて、特定のビューのコンテンツに移動する必要がある場合があります。

詳細情報: https://code.google.com/p/android-test-kit/wiki/EspressoStartGuide

于 2013-10-25T04:48:42.893 に答える