Programmatūras izstrādē vienības testēšana ir process, kas izolē un pārbauda īpašas lietojumprogrammas sadaļas. Vienības ir oficiālais termins šīm īpašajām sadaļām. Jūsu Java lietojumprogrammā vienība ir metode.

Java izstrādātājiem ir pieejamas daudzas vienību testēšanas sistēmas. Viens no populārākajiem ietvariem ir JUnit 5.

Kāpēc vienību pārbaude ir svarīga?

Ja kādreiz esat rakstījis atkļūdošanas paziņojumus, lai drukātu un pārbaudītu mainīgā vērtību, apsveicam! esat izveidojis vienības testu. Šī koda sadaļa bija nepieciešama, jo jūs nesaņēmāt vēlamo izvadi.

Bet ko darīt, ja jūs saņemat vēlamo izvadi un kodā joprojām ir kaut kur kļūda? Varat izvietot lietojumprogrammu, un šī kļūda vēlāk var izraisīt drošības pārkāpumu. Lietojumprogrammām, kurās tiek glabāti lietotāju dati, drošības pārkāpuma gadījumā likmes ir augstas.

Vienības testēšana attiecas uz katru jūsu lietojumprogrammas sadaļu — neatkarīgi no tā, vai tā pašlaik rada kļūdu. Tāpēc vienību pārbaudei ir nozīmīga loma laba programmatūras drošība.

instagram viewer

Kas ir JUnit 5?

JUnit 5 ir vairāk nekā tikai vēl viena vienību testēšanas sistēma. Tam ir vairāki apakšprojekti, proti, JUnit platforma, JUnit Jupiter un JUnit Vintage. Katram no šiem trim komponentiem ir unikāli moduļi, kas darbojas kopā, lai uzlabotu Java programmētāju testēšanu.

JUnit 5 platforma ir pieejama jaunākajās Java integrēto izstrādes platformu (IDE) versijās. Java IDE, kas atbalsta JUnit 5, ir:

  • IntelliJ IDEJA
  • Aptumsums
  • NetBeans
  • Visual Studio kods

Vienību testu izveide, izmantojot JUnit 5

Šī paraugprogramma izmanto JUnit 5, lai izveidotu vairākus vienību testus vienkāršā kalkulatora lietojumprogrammā.

Kalkulatora klase

iepakojums lietotne;

publiskiklasēKalkulators{
publiskistatisksstarptpievienot(starpt num1, starpt num2){
atgriezties num1 + num2;
}

publiskistatisksstarptatņemt(starpt num1, starpt num2){
atgriezties num1 - num2;
}

publiskistatisksstarptvairoties(starpt num1, starpt num2){
atgriezties num1 * num2;
}

publiskistatisksstarptsadalīt(starpt num1, starpt num2){
atgriezties num1 / num2;
}
}

The Java klase iepriekš minētā veic četras statiskas darbības: saskaitīšanu, atņemšanu, reizināšanu un dalīšanu. Katra metode ņem divus vesela skaitļa argumentus un atgriež vienu vesela skaitļa vērtību.

JUnit 5 pārbaudes klase

iepakojums pārbaude;

importsstatisks org.junit. Apliecināt.*;
imports lietotne. Kalkulators;
importsorg.junit.Pārbaude;

publiskiklasēCalculatorTest{
@Pārbaude
publiskinederīgstestPievienot(){
apgalvoEquals(7, Kalkulators.pievienot(3, 4));
}

@Pārbaude
publiskinederīgstestAtņemt(){
apgalvoEquals(6, Kalkulators.atņemt(9, 3));
}

@Pārbaude
publiskinederīgstestReizināt(){
apgalvoEquals(10, Kalkulators.vairot(5, 2));
}

@Pārbaude
publiskinederīgstestDivide(){
apgalvoEquals(2, Kalkulators.dalīt(4, 2));
}
}

CalculatorTest ievieš divus svarīgus jēdzienus: @Pārbaude anotācija un assertEquals() metodi. Anotācija @Test norāda, ka metode tieši zem tās ir testa metode. Iepriekš minētajā testa klasē ir četras pārbaudes metodes, viena katrai kalkulatora darbībai.

Visās pārbaudes metodēs tiek izmantota metode assertEquals(). Šī metode izmanto divus obligātus argumentus un neobligātu trešo argumentu. Pirmais arguments, kas norādīts iepriekš norādītajai metodei assertEquals() ir paredzamais rezultāts, bet otrais arguments ir metode (vai vienība), kuru vēlaties novērtēt.

Klasei CalculatorTest nav galvenās metodes, bet JUnit @Test anotācijas padara katru no testa metodēm izpildāmu. Izpildot CalculatorTest klasi aptumsumā, tiek izveidots šāds interfeiss:

Kā redzat, katrs tests ir veiksmīgs. Ir četri testi, un tie visi darbojās bez kļūdām vai kļūmēm.

Mācību vienību pārbaude var paplašināt jūsu karjeras iespējas

Kā izstrādātājam zināšanas, kā pārbaudīt programmatūru, ir izdevīga prasme. Tas noteikti uzlabos jūsu darbplūsmu un, cerams, atvieglos koda lietošanu citiem. Tomēr ir programmatūras izstrādes nozare, kas koncentrējas tikai uz testēšanu. Šie inženieri ir pazīstami kā programmatūras testētāji.