Píšem test pre svoju aplikáciu pre Android.Aplikácia načíta niektoré externé údaje do zobrazenia pomocou AsyncTask. Chcem vyskúšať, či AsyncTask fungoval a či sú údaje správne umiestnené do zobrazenia. Problém je v tom, že môj test beží (a zlyháva) pred dokončením AsyncTask.
Aký je najlepší spôsob riešenia tohto scenára?
odpovede:
0 pre odpoveď č. 1Môžete použiť falošné údaje, ktoré sa vrátia oveľa rýchlejšie, alebo implementovať nejaký druh čakania / počúvania udalosti v teste.
0 pre odpoveď č. 2
Vytvorte si rozhranie spätného volania, ktorépo ukončení hovoru pokračuje v rutine alebo použije zámok / mutex. Navrhoval by som spätné volanie, aby ste mohli pokračovať v ďalších úlohách pri čakaní na návrat dát napr. kreslenie UI. Pred obrazovku môžete umiestniť obrazovku na načítanie, aby ste používateľovi ukázali, že aplikácia na niečo skutočne čaká.