Bez záznamov niet retrospektívy. A bez retrospektívy niet analýzy ani zlepšovania.
Príklad:
Testujem webovú aplikáciu pre interný informačný systém. Pridám nový záznam do databázy a úmyselne zmením dátum narodenia na neplatný formát. Aplikácia zobrazí chybu – ale čo ďalej?
Otváram logy – očakávam, že:
- sa zaznamenala výnimka (napr. InvalidDateFormatException)
- je tam čas, kedy sa to stalo
- vidím, kto (užívateľ / IP adresa / session) to spôsobil
- viem dohľadať, čo tomu predchádzalo
Rovnako pri úprave dát: očakávam auditný záznam, že používateľ XY zmenil hodnotu A na B v čase C.
Čo všetko testovať pri logovaní a audite?
Čo sa zaznamenáva
- výnimky, chyby, warningy
- zmeny dát (kto, čo, kedy, ako)
- pokusy o prístup k zakázaným častiam systému
- prihlásenia, odhlásenia, neúspešné pokusy
Ako sa zaznamenáva
- v akom formáte (číta sa to zrozumiteľne?)
- či sa používajú štandardy (napr. JSON, ISO časové pečiatky)
- citlivé dáta sú maskované alebo neprítomné
Kedy sa zaznamenáva
- vždy, keď dôjde k chybe / udalosti
- či sa záznamy generujú okamžite alebo s oneskorením
- či nevznikajú duplicitné záznamy
Dá sa to dohľadať?
- existuje centrálne miesto, kde logy/auditné záznamy sú
- sú filtrovatelné podľa času, typu alebo používateľa
- má tester / admin prístup k týmto záznamom?
- nezmiznú po reštarte aplikácie?
Záver:
Logovanie a audit nie sú len o „máme logy“. Sú o tom, či nám pomôžu, keď ich potrebujeme. A to je práca aj pre testera – pýtať sa, skúšať a preverovať.
