En proxytest skal få direkte forbindelse til at fejle
Adskil applikationens testnetværk fra proxien udgående trafik, så en ubemærket direkte forbindelse ikke kan få en proxytest til at se vellykket ud.
En lokal proxy, der lytter ved siden af en applikation, genskaber ikke et netværk, der kræver proxyadgang. Applikationen kan ignorere den konfigurerede proxy, forbinde direkte og alligevel rapportere succes.
Adskil applikationens netværk fra proxien udgående vej. En containerbaseret opsætning placerer applikationen kun på et internt netværk og giver proxien et ekstra udgående netværk. I en eksisterende Compose-definition kan netværkstilknytningerne se sådan ud:
services:
app:
networks: [clients]
proxy:
networks: [clients, egress]
networks:
clients:
internal: true
egress: {}
Dette er et netværksuddrag til allerede definerede tjenester. Konfigurer den godkendte videresendende proxy og applikationens faktiske klient hver for sig. Docker beskriver interne netværk som isolerede udefra; kun proxien har det ekstra ydre netværk i denne opsætning.
Medtag et negativt tilfælde uden proxibrug: applikationens eksterne anmodning skal fejle. For en godkendt HTTP-proxy skal en afvist konto give sin godkendelsesfejl, mens den accepterede konto skal nå målet med en tilsvarende proxyobservation.
Test proxiens tilladte og afviste tilfælde hver for sig. Hold applikationen væk fra andre eksterne netværk, og undgå at tilføje en omgående værtsnetværkstilstand. En vellykket anmodning er først nyttigt bevis, når testen stiller netop den tilsigtede rute til rådighed.