Proxy úložiště Maven může stahovat závislosti, aniž by nastavovalo HTTP požadavek prováděný testem. Nakonfigurujte klienta v testovací JVM.

Pokud tento klient respektuje vlastnosti HTTPS proxy v Javě, vložte tento fragment do prvku configuration příslušného pluginu Surefire:

<systemPropertyVariables>
  <https.proxyHost>proxy.example</https.proxyHost>
  <https.proxyPort>8080</https.proxyPort>
</systemPropertyVariables>

Nahraďte ukázkový koncový bod. Pro testy proti veřejným cílům, kde jsou povoleni veřejní zprostředkovatelé, nabízí seznam HTTP proxy kandidáty na hostitele a port. Hostitel a port jsou samostatné hodnoty; vyberte rodinu vlastností odpovídající schématu cíle a knihovně. Klient sestavený s explicitním proxy objektem však potřebuje vlastní konfigurační rozhraní.

Surefire obvykle spouští testy ve forkované JVM. Ne každá volba pro spuštění Mavenu se do tohoto procesu dostane. Zjišťování systémového proxy citlivé na spuštění vyžaduje svou volbu v testovací JVM při startu. I když testy sdílejí proces, knihovna může výchozí vlastnosti proxy Java ignorovat.

Udržujte interní přímé cíle pokryté vhodným pravidlem obejití, autentizaci proxy oddělenou od autentizace cíle a ověřování certifikátů zapnuté. Vypnutí forkování mění, jak se testy vykonávají; změna zrcadla závislostí mění rozlišení úložiště. Ani jedno neposkytuje chybějící cestu testovacího klienta. Kopírování všech systémových vlastností může také odhalit tajemství.

Pokud selhání přetrvává, zaznamenejte testovací JVM, HTTP knihovnu, cíl, vybraný proxy a první neúspěšnou fázi. Tato pozorování ukazují na konfiguraci testu a funkční stahování z úložiště zůstávají srozumitelná.

Související články