Navrhovanie prípadov zlyhania s ladiacim proxy
Vyberte úpravy HTTP, oneskorenia a prerušené výmeny podľa správania klienta, ktoré má test založený na proxy preveriť.
Ladiaci proxy je užitočný, keď má klient naraziť na odpoveď, ktorú bežný server zriedka vytvára. Najprv definujte správanie klienta, potom vyberte zásah, ktorý tento stav vytvára.
„Požiadavka zlyhala“ je príliš široký testovací prípad. Platná chybová odpoveď HTTP, odpoveď, ktorá nikdy nedorazí, a spojenie prerušené v polovici sťahovania žiadajú od aplikácie rôzne veci.
| Prípad | Správanie na preskúmanie |
|---|---|
| Úplná chybová odpoveď HTTP | Či klient prečíta stav a použije zamýšľanú chybovú politiku |
| Oneskorená odpoveď | Či môže používateľ zrušiť a či sa časový limit uplatní v zamýšľanej fáze |
| Neočakávané pole hlavičky alebo tela | Či analýza a validácia zlyhávajú jasne |
| Prerušená výmena | Či neúplné údaje zostávajú rozlíšiteľné od dokončeného výsledku |
Použite zásah v správnej vrstve
Charles ponúka zarážky, ktoré pozastavia požiadavku alebo odpoveď pred preposlaním. Zachytenú správu možno preskúmať a upraviť, prepustiť alebo prerušiť. Jeho nástroj Rewrite uplatňuje opakovateľné zmeny na zodpovedajúce hlavičky, adresy URL alebo telá. Obmedzovanie riadi šírku pásma a pridanú latenciu.
Tieto ovládacie prvky môžu preveriť správanie klienta HTTP, ale limit šírky pásma nie je presným modelom náhodnej straty IP paketov. Proxy môže ukladať údaje do vyrovnávacej pamäte, znovu používať spojenia a otvoriť samostatné spojenie proti prúdu. Vyberte nástroj na zhoršenie siete, keď je požadovaná podmienka výslovne pod HTTP.
Udržte každý prípad interpretovateľný
Zamerajte zamýšľaného hostiteľa a cestu úzko. Začnite bežnou výmenou, zapnite jednu zmenu a zaznamenajte, čo sa zmenilo. Ak opakovanie dosiahne druhý koncový bod, rozhodnite, či má to isté pravidlo ovplyvniť ten pokus. Bezpodmienečné prepísanie inak môže premeniť každú cestu obnovy na pôvodné zlyhanie.
Pri nahrávaní alebo operácii podobnej platbe stratená odpoveď nedokazuje, že server požiadavku odmietol. Zahrňte túto nejednoznačnosť do prípadu opakovania, namiesto tvrdenia, že každé zlyhanie prenosu je bezpečné opakovať.
Prezeranie alebo úprava obsahu HTTPS vyžaduje, aby sa klient zúčastnil nastavenia kontroly TLS ladiaceho proxy. Proxy, ktorý prenáša len CONNECT, vidí šifrované bajty aplikácie. Použite izolovanú testovaciu konfiguráciu a potom obnovte jej smerovanie a nastavenia dôvery, aby neskoršie pozorovania opisovali bežného klienta.