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.