Analýza protokolů zařízení v testu App Center

Důležité

31. března 2025 je naplánované vyřazení z provozu. I když můžete dál používat Visual Studio App Center, dokud ho úplně vyřadíte, existuje několik doporučených alternativ, na které můžete zvážit migraci.

Přečtěte si další informace o časových osách a alternativách podpory.

Při spuštění testů v App Center Test se výstup zaznamená do souborů protokolů pro každé zařízení v běhu. Tyto protokoly můžete prozkoumat po dokončení testovacího běhu.

Protokoly zařízení a trasování zásobníku obsahují výstup ze zařízení a mohou být skvělým pomocníkem při diagnostice problémů s aplikacemi, jako je vaše aplikace:

  • Instalace se nezdařila
  • nepovedlo se spustit
  • byl zabit
  • Havaroval
  • přestal reagovat

Informace o tom, jak přejít na protokoly, a informace o ostatních protokolech najdete v tématu Úvod do protokolů v app center test.

Prohledávání protokolu zařízení

Protokol zařízení obsahuje tolik výstupů, že je nepraktické číst nebo dokonce skenovat celý soubor od začátku do konce. Pokud chcete identifikovat oblasti pro podrobnější prozkoumání, zkuste v souborech protokolu vyhledat název vaší aplikace nebo název balíčku. Vytváří vaše aplikace výstup diagnostiky? Pokud ano, může to pomoct.

Co dalšího můžete hledat? Tady je několik hledaných termínů, které byly nalezeny užitečné při diagnostice problémů s aplikacemi v App Center Test. Pokud tyto termíny najdete v protokolu zařízení, podívejte se na další blízký výstup, kde najdete kontext týkající se relevance a významnosti. Při prohledávání protokolu zařízení můžete zjistit položky, které jsou užitečné pro identifikaci problémů specifických pro vaši aplikaci. Udržujte si přehled o těchto položkách pro řešení potíží s budoucími testovacími běhy.

Hledané termíny v protokolu zařízení s iOSem

  • 8badf00d(jedl špatné jídlo) – Došlo k vypršení časového limitu watchdogu pro iOS. Viz Principy a analýza zpráv o chybách aplikací.

  • MISSING keychain entitlements explicit accessGroup To může znamenat, že vaše aplikace vyžaduje určitý pokročilý přístup ke svazku klíčů. Pokud se zdá, že tato chyba způsobuje selhání vaší aplikace, klikněte na nabídku nápovědy (?) v pravém horním rohu portálu App Center a pak vyberte Kontaktovat podporu.

  • OutOfMemoryException Memory Pressure failed to allocate memory warning
    Každá z těchto chyb může znamenat problém s nedostatkem paměti nebo nedostatkem paměti. V závislosti na velikosti paměti v jednotlivých zařízeních se můžou vyskytnout problémy s pamětí na některých zařízeních, ale na jiných ne.

  • assertion failed To značí selhání kontrolního výrazu v kódu nebo v kódu knihovny.

  • frontmost Pokud je vaše aplikace zablokovaná v dialogovém okně ochrany osobních údajů v iOSu a zobrazí se tato chyba, obvykle to znamená, že se dialogové okno objevilo před tím, než testovací architektura dokázala převzít kontrolu nad aplikací. Viz Správa upozornění na ochranu osobních údajů: Zjišťování polohy, APNS, kontakty.

  • exited abnormally Kontext najdete v zadaném důvodu a v blízkém výstupu.

Hledané termíny v protokolu zařízení s Androidem

  • ANR Tato chyba se může zobrazit v souboru protokolu, pokud u vaší aplikace došlo k chybě AnR (Application Not Responding). Viz: AnRs.

  • Unhandled exception Tato zpráva se může zobrazit v případě závažných chyb.

  • FATAL Závažné chyby.

  • segmentation fault Native crash Crash Každý z nich obvykle představuje závažný problém. Při identifikaci konkrétního zdroje problému vám může pomoct podívat se na zprávy v okolí a trasování zásobníku.

Omezení velikosti protokolu zařízení

Jednou z výzev při zkoumání protokolů zařízení je obrovské množství informací, z nichž většina není užitečná, když se ve své aplikaci pokoušíte najít konkrétní problém.

Pokud se vaše aplikace chybově ukončí, zamrzne nebo se chová nepředvídatelně pro konkrétní test, zkuste vytvořit testovací běh jenom s jedním testem, aby bylo k prozkoumání menšího výstupu. Pokud k tomuto chování stále dochází u jednoho testu izolovaně, je v protokolu zařízení méně materiálu, který je potřeba prohlédnout.

Co je důležité a co je šum

V souboru protokolu zařízení může být obtížné určit, jestli je něco relevantní pro problém s vaší aplikací.

Jedním z přístupů, které vám můžou pomoct s určením relevance, je porovnat dva protokoly zařízení, jeden pro test, který úspěšně proběhl, a druhý, u kterého došlo k chybě nebo chybě. Použití stejného nebo podobného zařízení a verze operačního systému pro oba testy pomáhá. Pokud se zpráva zobrazí v obou sadách protokolů, pravděpodobně to není problém. Pokud k tomu dojde pouze v protokolu zařízení pro neúspěšný test, může to být problém, který stojí za to se podrobněji podívat.