Preskakanje testova s ​​Gradleom

1. Uvod

Iako je preskakanje testova obično loša ideja, postoje situacije u kojima bi to moglo biti korisno i uštedjet će nam malo vremena. Primjerice, uzmimo u obzir da razvijamo novu značajku i želimo vidjeti rezultat u srednjim verzijama. U ovom bismo slučaju testove mogli privremeno preskočiti kako bismo smanjili općenite troškove njihovog sastavljanja i izvođenja. Nesumnjivo je da ignoriranje testova može dovesti do mnogih ozbiljnih problema.

U ovom kratkom vodiču vidjet ćemo kako preskočiti testove kada se koristi alat za izgradnju Gradle.

2. Korištenje zastavica naredbenog retka

Prvo, izradimo jednostavan test koji želimo preskočiti:

@Test void skippableTest () {Assertions.assertTrue (true); }

Kad pokrenemo izgraditi naredba:

gradle graditi

Vidjet ćemo pokrenute zadatke:

> ...> Zadatak: compileTestJava> Zadatak: processTestResources BEZ IZVORA> Zadatak: testClasses> Zadatak: test> ...

Da bismo preskočili bilo koji zadatak iz gradnje Gradle, možemo koristiti -x ili –Exclude-task opcija. U ovom slučaju, koristit ćemo "-x test”Da preskočite testove iz gradnje.

Da bismo ga vidjeli na djelu, pokrenimo izgraditi naredba sa -x opcija:

gradle -x test

Vidjet ćemo pokrenute zadatke:

> Zadatak: compileJava NO-SOURCE> Zadatak: processResources NO-SOURCE> Zadatak: klase NAJNOVIJE> Zadatak: jar> Zadatak: sastavi> Zadatak: provjeri> Zadatak: izgradi

Kao rezultat, ispitni izvori se ne sastavljaju i, prema tome, ne izvršavaju.

3. Korištenje Gradle skripte za izgradnju

Imamo više mogućnosti za preskakanje testova pomoću Gradleove skripte za izgradnju. Na primjer, možemo preskočiti testove na temelju nekog stanja ili samo u određenom okruženju pomoću samo ako() metoda. Testovi će se preskočiti ako se ova metoda vrati lažno.

Preskočimo testove na temelju provjere svojstva projekta:

test.onlyIf {! project.hasProperty ('someProperty')}

Sada ćemo pokrenuti izgraditi zapovjediti i proći nekiVlasnik do Gradle:

gradle graditi -PsomeProperty

Stoga Gradle preskače izvođenje testova:

> ...> Zadatak: compileTestJava> Zadatak: processTestResources BEZ IZVORA> Zadatak: testClasses> Zadatak: test SKIPPED> Zadatak: provjeri do datuma> ...

Štoviše, možemo isključiti testove na temelju naziva paketa ili klase koristiti isključiti vlasništvo u našem graditi.gradle datoteka:

test {izuzeti 'org / boo / **' izuzeti '** / Bar.class'}

Također možemo preskočiti testove na temelju uzorka regularnih izraza. Na primjer, možemo preskočiti sve testove čiji naziv klase završava riječju „Integracija“:

test {izuzeti '** / ** integracija'}

4. Zaključak

U ovom uputstvu naučili smo kako preskočiti testove kada se koristi alat za izgradnju Gradle. Također smo prošli kroz sve relevantne opcije koje možemo koristiti na naredbenom retku, kao i one koje možemo koristiti u skriptama gradnje Gradle.


$config[zx-auto] not found$config[zx-overlay] not found