Tarkvaraarenduse üks keerulisemaid probleeme on nimede panemine. Programmi põhiaspektidele, nagu klassid ja meetodid, tähenduslike nimede loomine võib olla keeruline. Nimepiirangud, nagu tühikute puudumine, võimendavad seda probleemi veelgi.
Nimemisprobleem püsib tarkvaraarenduse elutsükli kõigis aspektides, sealhulgas testimises. Siin muutub kasulikuks märkus JUnit @DisplayName.
Mis on @DisplayName märkus?
Ühel meetodil võib olla mitu katsemeetodit, millest igaüks testib konkreetset käitumist. Kui aga määrata katsemeetoditele käitumisnimed, võivad need muutuda sõnakaks ja raskesti loetavaks.
@DisplayName märkus on JUniti komponent, mis võimaldab teil luua oma testiklassidele ja meetoditele kohandatud nimesid. Nendel nimedel võib olla tühikuid, erimärke ja isegi emotikone. Märkus @DisplayName peaks aitama teil luua testiklassidele ja -meetoditele kirjeldavamaid ja tähendusrikkamaid nimesid.
Kuidas kasutada @DisplayName märkust
Sees JUniti katseklass, kuvatakse @DisplayName märkus klassi nime kohal või vahetult enne meetodi deklaratsiooni. @DisplayName annotatsioon võtab ühe argumendi (nimi). See argument ilmub hiljem katsearuannetes, muutes testimisdokumentatsiooni kirjeldavamaks.
pakett kuvatav nimi;
importida org.junit.jupiter.api. Kuvanimi;
importida org.junit.jupiter.api. Test;@DisplayName("Test klassdemonstreerideskuidasa @Kuvanimiannotatsioontöötab.&tsitaat;)
klassDisplayNameTest{
@Test
@DisplayName("Erimärke sisaldava kuvatava nime testimine: °□°)╯")
tühinetestDisplayNameWithSpecialCharacters(){}@Test
@DisplayName("Tühikuga kuvatava nime testimine")
tühinetestDisplayNameWithSpaces(){}
@Test
@DisplayName("Emotikoone sisaldava kuvanime testimine: 😱")
tühinetestDisplayNameWithEmoji(){}
}
Selle Java-klassi käivitamine genereerib järgmise JUniti üksuse testimise aruande:
Iga @DisplayName annotatsiooni argument asendab JUniti testiaruandes vastava klassi või meetodi nime. @DisplayName annotatsioon "Testiklass, mis demonstreerib, kuidas @DisplayName annotatsioon töötab" on palju väljendusrikkam ja põhjalikum kui DisplayNameTest.
Mis saab testimiseks järgmiseks?
@DisplayName annotatsiooni kasutamise teadmine parandab kindlasti teie üksuse testimise dokumentatsiooni. Peale @DisplayName märkuse leiate, et kõik teie JUniti üksuse testid vajavad ühte või mitut väidet. Väited on JUniti ühikutestide ehitusplokid, seetõttu on hea õppida neid kasutama.