how use gradle build
Denne vejledning dækker, hvordan man bruger Gradle til at oprette et projekt og skrive opgaver i Groovy og køre opgaver med Gradle Wrapper ved hjælp af både IDE & Build-kommandoen:
At være moderne udviklere har vi brug for at vide om visse udtryk som Shift-Left, DevOps, Continuous Integration (CI), Continuous Delivery (CD) osv.
I denne vejledning lærer vi om Groovy og Gradle sammen med deres anvendelse til at oprette henholdsvis Gradle-opgaver og bygge projekter. Groovy er et mangesidet sprog - med kortfattet, velkendt og let at bruge syntaksen til Java-platformen, og det kan bruges til at skrive opbygnings- og automatiseringsopgaver.
Dette sprog klæber godt sammen med Gradle, som er et af de populære værktøjer, der bruges til at integrere en udviklers arbejdsgang i en CI / CD-pipeline.
Denne vejledning forklarer Gradle for Java-udviklere. Det indeholder detaljer om, hvordan det fungerer; hvordan man bruger Gradle til at oprette kildekode skrevet i Java til implementering på enhver platform.
Det giver plugins til de fleste af IDE'erne og gør det lettere at levere software hurtigere. At følge os på rejsen med at lære de ovennævnte begreber, det vil være dejligt, hvis du ser på arkivet til a prøve projekt som vi har skabt på Github.
Hvad du vil lære:
- Systemkrav og forudsætninger
- Skriv dit første program i Groovy - Hello World
- Grundlæggende om groovy sprog
- Hvad er Gradle?
- Funktioner og fordele ved at bruge Gradle
- Byg et Gradle-projekt
- Automatiser Gradle Build ved hjælp af Git-handlinger
- Konklusion
- Anbefalet læsning
Systemkrav og forudsætninger
Dette afsnit indeholder trinnet til installation af et IDE - IntelliJ IDEA og Java Development Kit (JDK). Detaljerne om de grundlæggende begreber på Groovy-sproget for at få os selv til at komme hurtigere hen imod at skrive vores første byggeopgave forklares ved hjælp af et kodestykke.
Installer IntelliJ IDEA
Installer et IDE (integreret udviklingsmiljø) til oprettelse af Java-projektet. Vi bruger IntelliJ IDEA (Community Edition) til denne vejledning. Følg de respektive links for at downloade og installere det på Windows / Mac / Linux.
Windows: Klik her
Mac: Klik her
Linux: Klik her
Installer og opsæt JDK
Download JDK . Man skal tilmelde sig en RedHat-konto for at gennemføre trinnet. Når den er downloadet, skal du køre opsætningen for at installere den på din Windows-pc. Når den er installeret, skal du åbne kommandoprompten og køre nedenstående kommandoer for at kontrollere, om den fungerer eller ej.
Nedenstående kommandoer kan bruges til at vide, hvor JDK er installeret eller ej.
D: softwaretestinghelp> hvor java
D: softwaretestinghelp> hvor javac
Lad os nu konfigurere den installerede JDK med vores IDE. Åbn platformindstillingerne i IntelliJ IDEA, og tilføj JDK ved at følge nedenstående trin. Husk, at denne JDK gælder for alle de projekter, du vil arbejde på ved hjælp af denne IDE.
Trin 1: Føj den downloadede JDK til SDK under platformindstillinger som vist på billedet.
Trin 2: Opdater Project SDK i projektindstillingerne som vist på billederne
smart identifikation i qtp med eksempel
Efter anvendelse af de konfigurerede indstillinger skal du oprette projektet en gang ved hjælp af det lille grønne hammerikon i IDE.
Opret et eksempel på et projekt
Der er to måder at starte med projektet på. Vi kan enten downloade projektets zip-fil fra Github-projektsiden og importere den som et Gradle-projekt i Intellij IDEA eller klone projektet fra Github-arkivet.
Trin til at klone projektet fra Github er angivet nedenfor:
Åbn IDE ved at dobbeltklikke på genvejsikonet på skrivebordet. Luk ethvert eksisterende projekt, hvis det allerede er åbnet. Husk, at Git-plugin som standard er samlet med IntelliJ IDEA. Derfor skal du ikke installere det.
Trin 1: Klik på IDE's velkomstskærm Få fra versionskontrol .
Trin 2: Giv den Github repository URL og klik på Klon.
Trin 3: Klik på Ja når Checkout-filprompten vises.
Trin 4: Vent på, at baggrundsprocessen er færdig, og kontroller output.
Trin 5: Klik på den foldede projektrude for at se på projektstrukturen i opdagelsesrejsende.
top 10 spion apps til iPhone
Skriv dit første program i Groovy - Hello World
I projektet skal du åbne den kaldte Gradle-byggefil build.gradle ved hjælp af filudforskeren af din IDE og skriv nedenstående kode i slutningen af filen.
task helloWorld { doLast { println('Hello, World!') } }
Kør nu den første opgave ved at klikke på Kør i genvejsmenuen til afspilningsopgavikonet og observer output fra println indbygget Groovy-metode. Vi kan bruge “CTRL + SKIFT + F10” såvel. (Se billedet nedenfor)
Outputtet skal se ud som det, der er vist ovenfor.
Grundlæggende om groovy sprog
Nu hvor du har lært, hvordan du opretter dit første program i Groovy, kan vi accelerere og lære om det grundlæggende i sproget. Dette afsnit dækker begreber som variabelnavne, syntaks, operatorer, metoder / funktioner / lukninger osv.
Vi vil også dække de begreber, der er mere relevante fra projektperspektivet, såsom adgang til et projekts egenskaber og import af lukninger / funktioner skrevet i en anden build.gradle fil.
Overhold nedenstående kodestykke og kommentarer for at lære om forskellige begreber på sproget. Dette kodestykke er ret praktisk til en hurtig gennemgang og en revision af begreberne Groovy.
// Primer on Groovy def var1 = 'var1' // A string variable declared and assigned outside a closure/function def var2 = 4 // An integer // Both of the above given variables are of type Object task task1 { doLast { println('Hello, World!') // A single line comment /* A Multi line comment Print a stored variable. Strings can be concatenated. Parentheses are not mandatory */ println var1 + ' is my variable ' println var1 + 2 // adding a digit to a string - No string conversion required. // operators for strings and numbers println(var2 + 3) def var3 = var2 + 2 // type of var3 is integer and var2 and var1 are Objects println(var3 * var2) // multiplication print(var3 / var2 + '
') // division prints float and observe the concatenation of new line '
' def mylist = [1, 2, 3] // creating a list // for loop on list items for (def i=0; i <= mylist.size() -1 ; i++){ // loop using for println(mylist[i]) } // While loop on list items def i=0 while (i<=mylist.size() - 1) { println(mylist[i]) i++ } } }
I begge sløjfer skal du bemærke, at listen har et nulbaseret indeks. Yderligere detaljer er nævnt på Groovy .
Lad os nu lære om Gradle og se, hvordan du kører en opgave.
Hvad er Gradle?
Det er et build-automatiseringssystem. Det understøtter byggeprojekter skrevet på flere sprog. I denne vejledning bruger vi Java. Dette afsnit forklarer metoden til at køre Gradle-kommandoer fra kommandolinjen. Vi skal bruge det til opbygning, test og implementering af vores prøveprojekt.
Gradueafhængigheder
Du ved muligvis allerede, hvor vigtigt det er at installere afhængigheder i ethvert open source-softwareprojekt. Gradle kan søge efter afhængigheder af offentlige opbevaringssteder som Maven, Jcenter og Google.
Nævn disse arkiver i build.gradle fil som vist nedenfor:
repositories { mavenCentral() jcenter() google() }
Nævn nu kompileringstidsafhængighederne som vist nedenfor.
dependencies { testCompile group: 'junit', name: 'junit', version: '4.12' // https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java compile group: 'org.seleniumhq.selenium', name: 'selenium-java', version: '3.141.59' }
De nævnte afhængigheder downloades automatisk og inkluderes i projektets CLASSPATH af Gradle-pluginet. Kontroller de downloadede afhængigheder i IDE's projektudforsker.
Kontroller Gradle-versionen ved hjælp af nedenstående kommando.
Funktioner og fordele ved at bruge Gradle
Nedenfor er nogle af de funktioner, der hjælper med nem standardisering og vedtagelse af Gradle som en del af DevOps i en organisation.
- Det bruger et DSL-baseret sprog kaldet Groovy. Det er lettere at skrive byggeopgaver i Groovy end i XML. Desuden er XML'er besværlige og ikke lette at læse. Imidlertid er Groovy lettere at lære og læse.
- Det understøtter oprettelsesbygninger til projekter baseret på både monolitiske og mikrotjenester arkitekturer.
- Det kan bruges til at oprette flere artefakter såsom dokumenter, API'er. implementeringsglas osv. og offentliggør dem som en del af den samme build.
- Det har en ganske stærk sprogkonstruktion til at bestille de indbyrdes afhængige opgaver som en del af builds.
Der er mange flere funktioner, der gør det muligt for holdene at tilpasse deres builds, mens de emballerer softwaren med højere kvalitet. Flere detaljer om funktionerne er givet her .
Lad os nu gå videre og køre en Gradle build-opgave.
Kør en Gradle Task
Kør kommandoen vist nedenfor under projektets rodmappe for at køre build-opgaven kaldet task1.
D: softwaretestinghelp gitrepo>. Gradlew.bat opgave1
Kontroller output som vist nedenfor.
Byg et Gradle-projekt
I dette afsnit gennemgår vi projektstrukturen, forstår dens forskellige komponenter og bygger projektet.
Struktur af prøveprojektet
Eksempelprojektet under diskussion har en src mappe med to hovedmapper (mapper) nemlig. Hoved og test. Hovedkataloget har Java-kildekode relateret til et eksempel på en kommandolinjeapplikation kaldet HelloWorld.
HelloWorld-klassen har to metoder, dvs. hovedmetoden, der udskriver det første argument ud af den givne liste over argumenter og en metode 1-metode, der udskriver 1. argument sammenkædet med de første 3 tegn i det andet argument.
Testmappen har en JUnit-testklasse, der har test til at teste de ovennævnte metoder i vores applikation. Kontroller kildekoden til disse tests.
Eksempelprojektet har også en Gradle-indpakningsmappe. Du skal bruge den nævnte Gradle-indpakningsversion, mens du kører dine byggeopgaver.
Versionen af Gradle er meget vigtig, og når udviklere ønsker at dele deres kode, er det altid en fordel at dele en indpakning sammen med projektfilerne. Det sparer meget tid, da wrapper automatisk downloader den erklærede version af Gradle.
Eksempler på opgaver
Dokumentation af koden betragtes som en af de vigtigste attributter for en udvikler. Det er en almindelig praksis at dele dokumentationen i html format. Gradle hjælper med at generere javadocs i html formatere projekter. Vi kan generere javadocs ved hjælp af nedenstående kommando.
D: softwaretestinghelp gitrepo>. Gradlew.bat javadoc
Kontroller venligst javadoc under build-kataloget i projektet, og du skal se resultaterne svarende til dem, der er vist i billedet nedenfor.
Følg venligst javadoc stilvejledning givet på dette link, mens du skriver Java-dokumentation.
Lad os nu ændre build.gradle-filen for også at generere dokumentationen til testressourcer.
Opdater build.gradle-filen med uddraget vist nedenfor
javadoc { classpath += sourceSets.test.compileClasspath source += sourceSets.test.allJava }
Kør igen Gradle javadoc-kommandoen for at generere dokumentationen til både hoved- og testkilder.
Flere detaljer om Gradle-opgaver kan ses her .
Kommandoen om at vide flere Gradle-opgaver er angivet nedenfor.
D:softwaretestinghelpgitrepo> .gradlew.bat tasks
Lad os nu bygge projektet.
Byg Gradle-projektet
Følg nedenstående trin for at oprette eksemplet på projektet fra kommandolinjen:
- Skift projektstien.
- Brug nedenstående kommando til at opbygge projektet.
Du kan dog også opbygge projektet ved at klikke på det lille hammerikon i IDE.
D:softwaretestinghelpgitrepo> .gradlew.bat build
Outputtet fra build-kommandoen vil være som vist nedenfor.
Fejl i resultaterne fra build-kørslen er forsætligt med henblik på denne vejledning og kan ignoreres.
Hvis du vil se resultaterne af de tests, der blev kørt som en del af denne build, kan du kontrollere rapportmappen som vist på billedet nedenfor.
For at kontrollere resultaterne kan du åbne index.html-filen i en browser.
Automatiser Gradle Build ved hjælp af Git-handlinger
Som udviklere er vi nødt til at oprette vores arbejdsgange til at opbygge, teste og offentliggøre vores projekter for at samarbejde med driftsteamet.
Desuden kan det være en skræmmende opgave at oprette et miljø alene og kan få konsekvenser for vores produktivitet. Med fremkomsten af en ny DevOps-kultur er vi nødt til at automatisere vores arbejdsgange for at mindske udfordringerne som følge af byggefejl.
I mellemtiden har softwareprojekter med udviklere, der er geografisk distribueret, brug for samarbejde ved hjælp af SCM-software som Git.
Tak til Github Actions. Nu kan du se en ekstra fane på ethvert Github-lager, du opretter. Du kan oprette dine udviklingsarbejdsprocesser og køre dem på enhver Github-begivenhed såsom push, release, pull_request osv. Dette er revolutionerende med hensyn til at give CI / CD-kraften til udvikler-community.
Åbn Git Actions-konfigurationerne på .github / workflows / gradle.yml fil i projektet. Bemærk, at vi udvikler vores projekt på Windows, og i Git Actions tester vi det på ubuntu_latest.
faser af softwareudviklingens livscyklus
Github Actions har også community-drevne arbejdsgange, som vi kan udnytte og øge hastigheden for at levere dit projekt til kunder. Baseret på status for din build kan du beslutte, om projektet skal frigives eller ej. Vi har givet eksemplet på en præudgivelse af lageret til prøveprojektet.
En valgfri øvelse
Nedenfor er nogle af de trin, du kan prøve.
- Opret et nyt lager i Github.
- Tilføj en reference til den nye fjernbetjening i gradle_sample-projektet.
- Brug kommandoerne til at offentliggøre ændringerne i det nye arkiv.
- Overhold resultaterne for din Gradle-build under Git Actions.
Konklusion
Gradle bruges af teams i virksomheder som LinkedIn, Adobe, Netflix osv., Og det er et godt værktøj at mestre. At arbejde med Gradle er meget lettere end at arbejde i andre byggeværktøjer som Maven og Ant.
I disse dage handler det om hastighed og smidighed. Læring Gradle og Groovy kan hjælpe dig med at vedtage DevOps-principper lettere.
For at opsummere dækkede vi koncepter om oprettelsen af et Gradle-projekt, om at skrive byggeopgaver i Groovy og om at køre opgaver med Gradle wrapper under udvikling ved hjælp af både IDE og Gradle build-kommandoen.
Vi testede også byggeriet på en anden målplatform som ubuntu_latest. Vi kan bruge den med en build-status, der kan hjælpe med at træffe en beslutning relateret til en projektudgivelse.
Hvis du er en automatiseringsingeniør, der bruger Selenium Webdriver, skal du ikke læse vores kommende vejledning om konfiguration og opsætning af et Selenium-projekt med Gradle.
Håber denne tutorial ville have beriget din viden om Gradle Concepts !!
Anbefalet læsning
- Gradle Vs Maven And Maven Plugins
- Sådan oprettes Gradle-projekt med selen
- Spock Tutorial: Test med Spock og Groovy
- Sådan skriver du Basic Groovy Script i SoapUI - SoapUi Tutorial # 6
- Sådan bruges egenskaber i SoapUI Groovy Script - SoapUI Tutorial # 7
- Lær avancerede SoapUI Groovy Scripting-koncepter - SoapUI Tutorial # 9
- Sådan håndteres undtagelser i SoapUI Groovy Scripts - SoapUI Tutorial # 11
- Brug af Maven Build Automation Tool og Maven Project Setup til Selen - Selen Tutorial # 24