Tesztek átugrása fokozattal
1. Bemutatkozás
Bár a tesztek kihagyása általában rossz ötlet, vannak olyan helyzetek, amikor ez hasznos lehet, és ez időt takarít meg nekünk. Vegyük például fontolóra egy új funkció kifejlesztését, és szeretnénk eredményt látni a köztes buildekben. Ebben az esetben átmenetileg kihagyhatjuk a teszteket, hogy csökkentsük a fordítás és futtatás általános költségeit. Kétségtelen, hogy a tesztek figyelmen kívül hagyása számos komoly problémát okozhat.
Ebben a rövid bemutatóban megtudhatjuk, hogyan kell kihagyni a teszteket a Gradle build eszköz használatakor.
2. A parancssori jelzők használata
Először hozzunk létre egy egyszerű tesztet, amelyet ki akarunk hagyni:
@Test void skippableTest () {Assertions.assertTrue (true); }
Amikor lefuttatjuk a épít parancs:
fokozatépítés
Látni fogjuk a futó feladatokat:
> ...> Feladat: compileTestJava> Feladat: processTestResources NO-SOURCE> Feladat: testClasses> Feladat: teszt> ...
Bármely feladatot kihagyhatunk a Gradle buildből, használhatjuk a -x vagy –Kizár-feladat választási lehetőség. Ebben az esetben, használjuk-x teszt”A tesztek kihagyása az összeállításból.
Ahhoz, hogy működés közben lássuk, futtassuk a épít parancsot -x választási lehetőség:
gradle build -x teszt
Látni fogjuk a futó feladatokat:
> Feladat: compileJava NO-SOURCE> Feladat: processResources NO-SOURCE> Feladat: osztályok UP-TO-DATE> Feladat: jar> Feladat: összeszerel> Feladat: ellenőrzés> Feladat: épít
Ennek eredményeként a tesztforrásokat nem állítják össze, ezért nem hajtják végre.
3. A Gradle Build Script használata
Több lehetőségünk van a tesztek kihagyására a Gradle build szkript segítségével. Például, a feltétel használatával átugorhatunk teszteket valamilyen feltétel alapján vagy csak egy adott környezetben csak ha() módszer. A teszteket kihagyjuk, ha ez a módszer visszatér hamis.
Hagyjuk ki a projekt tulajdonságainak ellenőrzésén alapuló teszteket:
test.onlyIf {! project.hasProperty ('someProperty')}
Most futtatjuk a épít parancs és passz someProperty Gradle-ig:
fokozatépítés -PsomeProperty
Ezért Gradle kihagyja a tesztek futtatását:
> ...> Feladat: compileTestJava> Feladat: processTestResources NO-SOURCE> Feladat: testClasses> Feladat: test SKIPPED> Feladat: check up-to-date> ...
Ráadásul, kizárhatjuk a teszteket a csomagjuk vagy az osztályuk neve alapján használni a kizárni ingatlan a mi épít.gradle fájl:
teszt {kizárja 'org / boo / **' kizárja '** / Bar.class'}
Kihagyhatjuk a teszteket egy regex minta alapján is. Például kihagyhatunk minden tesztet, amelynek osztályneve a „Integráció“:
teszt {kizárja a ** / ** integrációt '}
4. Következtetés
Ebben az oktatóanyagban megtanultuk, hogyan kell kihagyni a teszteket a Gradle build eszköz használatakor. Végigvizsgáltuk az összes releváns opciót, amelyeket a parancssorban használhatunk, valamint azokat, amelyeket a Gradle build szkriptekben használhatunk.