Comment compter RecyclerView éléments d'une machine à Expresso
À l'aide de l'Espresso et Hamcrest,
Comment puis-je compter les éléments de numéro disponible dans une recyclerView?
Exemple: je voudrais vérifier si 5 éléments sont affichés dans un RecyclerView (défilement si nécessaire).
Vous devez vous connecter pour publier un commentaire.
Ici un exemple ViewAssertion pour vérifier RecyclerView nombre d'éléments
et ensuite utiliser cette affirmation
J'ai commencé à écrire une bibliothèque qui devrait rendre le test plus simple avec espresso et uiautomator. Cela comprend l'outillage pour RecyclerView d'action et d'assertions. https://github.com/nenick/espresso-macchiato Voir, par exemple, EspRecyclerView avec la méthode assertItemCountIs(int)
Expected: is <2> Got: <3>
Ajouter un peu de syntaxe de sucre à la @Stephane réponse.
Utilisation:
Pour compléter nenick répondre et de fournir et un peu plus souple de la solution à tester aussi si l'élément cout est greaterThan, lessThan ...
Utilisation:
Basé sur @Sivakumar Kamichetty réponse:
COUNT = 0;
COUNT
variable à un élément de tableau.result
est inutile.Pas très agréable, mais qui fonctionne:
J'ai utilisé la méthode ci-dessous pour obtenir le nombre de RecyclerView
L'utilisation
Alors effectuer des affirmations de vérifier si le itemsCount est comme prévu
Vous pouvez créer un
BoundedMatcher
:Et ensuite l'utiliser comme ceci:
Validé réponse fonctionne, mais nous pouvons résoudre ce problème avec une seule ligne et sans l'adaptateur de prise de conscience :
Remplacer
your_recycler_view_id
avec votre identifiant et votre2
avec le nombre d'affirmer.