Robolectric kann Android-Runtime-Artefakte eroflueden, während Tester lafen. Datt e Build-Tool d'gewéinlech Ofhängegkeeten vum Projet erfollegräich opléist, beweist net, datt dësen Download während dem Test deen selwechte Proxy benotzt.

Robolectric 4.9.1 an duerno dokumentéieren dës Systemeegeschaften fir deen Downloader:

robolectric.dependency.proxy.host=proxy.example
robolectric.dependency.proxy.port=8080

Gitt se un d'JVM, déi d'Tester ausféiert. Fir ëffentlech Artefakt-Downloads, déi iwwer en net authentifizéierten HTTP-Intermediaire erlaabt sinn, benotzt eng Adress aus der HTTP-Proxy-Lëscht an dësen Host- a Port-Eegeschaften. Fir en Android-Projet mat dem Groovy-DSL vu Gradle kann déi relevant Konfiguratioun sou ausgesinn:

android {
    testOptions {
        unitTests.all {
            systemProperty 'robolectric.dependency.proxy.host', 'proxy.example'
            systemProperty 'robolectric.dependency.proxy.port', '8080'
        }
    }
}

Behält dëst bei der bestoender Testkonfiguratioun vum Projet. Eng Eegenschaft, déi just dem Gradle-Launcher gi gëtt, ass kee Beweis, datt eng ofgespléckt Test-JVM se kritt huet.

Fir eng bewosst getrennt Testëmgebung dokumentéiert Robolectric och robolectric.offline an robolectric.dependency.dir. Dee Set-up erfuerdert, datt déi richteg Runtime-Artefakten am uginnene Verzeechnis bereetgestallt ginn. Dem Gradle säin eegene Offline-Cache ersetzt net d'Verzeechnis, dat dem Robolectric säin Offline-Resolver erwaart.

Ähnlech Artikelen