アプリのテストに問題があります。エミュレーターでアプリを起動するたびに期待どおりの動作が得られるため、失敗するはずのエスプレッソテストを作成しました。私のテストがあります:
onView(withText("wrong answer")).perform(click());
onView(withId(R.id.nextQuestionButton)).check(matches(isEnabled()));
テストを開始しても何も報告されませんが、テキストが「間違った回答」であるラジオボタンをクリックすると、nextQuestionButtonが有効になりますnot。
私が理解していることによると、あなたはそれがこのように機能することを望んでいます:
nextQuestionButton
ISが有効になっている場合は、次のアクションを実行します。
- 「間違った答え」をクリックして、
nextQuestionButton
が無効に変更されているかどうかを確認します。
その場合、コードは次のようになります。
onView(withId(R.id.nextQuestionButton)).check(matches(isEnabled()));
onView(withText("wrong answer")).perform(click());
onView(withId(R.id.nextQuestionButton)).check(matches(not(isEnabled())));
Espressoを使用すると、テストでHamcrestマッチャーを使用できます。
これも確認してください(まだ行っていない場合):
あなたの投稿のこの断片によると:
テストを開始しても何も報告されませんが、テキストが「間違った答え」である
nextQuestionButton
をクリックしてもradioButton
を有効にしないでください。
これは、次の質問ボタンを無効に設定していないことを意味するため、Espressoはこのテストに合格します。