0

Comment savoir si tous les threads ont terminé l'exécution et sont inactifs? J'essaie d'écrire des tests unitaires pour une application Android basée sur Java. Les tests nécessitent qu'un fournisseur de contenu soit interrogé et que le contenu soit ajouté à ListView avant le test proprement dit.Détection Android lorsque tous les threads sont inactifs - test de l'unité

Ce que je n'arrive pas à comprendre, c'est comment savoir quand toutes mes opérations sont terminées; en particulier que la vue de liste a terminé sa mise à jour lorsque la base de données a changé et que toutes les opérations de base de données ont été effectuées.

Je peux jeter des matelas dans mes boîtiers de test, mais comme prévu, ils rendent les choses peu fiables si le système subit une forte charge; et ralentir l'exécution.

Après avoir regardé la GTAC 2013: Espresso: Fresh Start to Android UI Testing - YouTube video (Voir la vidéo à 9: 40-11: 31) Je pense qu'il doit y avoir un moyen de détecter lorsque tous les threads sont inactifs, et l'exécution de mon étape suivante de code. J'espère pouvoir mettre en place une version médiocre de Espresso, car je voudrais avoir des tests stables maintenant. Et réécrivez-les si Espresso devient disponible.

Répondre

0

Lorsque les sont signalés et commencent ainsi à faire des choses, demandez-leur d'abord un int atomique. Quand ils ont fini et sur le point d'arrêter de faire les choses, demandez-leur de décompter l'int. Tout thread qui réduit l'int à 0 appelle une méthode/une fonction 'onCompletion'.

Questions connexes