Actuellement, j'ai une activité qui a une vue de texte automatique. Les données dans la vue de texte sont remplies à partir d'un adaptateur de tableau et j'ai des problèmes pour obtenir mon cas de test à cliquer sur un des éléments de la liste par nom. Voici des captures d'écran et le code:Android Espresso - Impossible de cliquer sur le texte dans la vue de liste générée à partir de l'adaptateur
// setup ingredient list widget
mFridgeList = (ListView) findViewById(R.id.fridge_list);
mFridgeList.setAdapter(new ArrayAdapter<String>(this,
android.R.layout.simple_dropdown_item_1line, FridgesterDB.ingredientsList));
Lorsqu'un utilisateur tape dans le texte (ex: tom), une liste d'options apparaîtront que l'utilisateur peut alors sélectionner pour confirmer leur sélection.
Je me sens comme je l'ai essayé mille solutions différentes, mais l'erreur la plus cohérente que je reçois est:
Erreur exécution « charge les données de l'adaptateur » sur la vue « est cessible de la classe: android classe. widget.AdapterView
J'ai essayé d'utiliser les solutions suggérées here:
onData(hasToString(startsWith("tomato"))).perform(click());
et différentes variantes de celui-ci en vain.
C'est le code qui a été généré à partir de l'enregistreur Espresso et provoque une NoMatchingViewException:
ViewInteraction appCompatTextView = onView(
allOf(withId(android.R.id.text1), withText("tomato"), isDisplayed()));
appCompatTextView2.perform(click());
NoMatchingViewException: Aucune vue dans la hiérarchie trouvé correspondant: (avec id: android: id/text1 et avec le texte : est "tomate" et est affiché sur l'écran de l'utilisateur)
J'ai également vu où quelques personnes ont eu ce travail en utilisant des dortoirs mais cela ne fait aucune différence dans mon cas. Des idées? Merci