Viena no sarežģītākajām programmatūras izstrādes problēmām ir nosaukumu piešķiršana. Nozīmīgu nosaukumu izveide programmas pamataspektiem, piemēram, klasēm un metodēm, var būt sarežģīta. Nosaukšanas ierobežojumi, piemēram, atstarpju trūkums, vēl vairāk pastiprina šo problēmu.
Nosaukšanas problēma joprojām pastāv visos programmatūras izstrādes dzīves cikla aspektos, tostarp testēšanā. Šeit noder JUnit @DisplayName anotācija.
Kas ir @DisplayName anotācija?
Vienai metodei var būt vairākas pārbaudes metodes, no kurām katra pārbauda noteiktu uzvedību. Tomēr, ja testa metodēm piešķirat uzvedības nosaukumus, tie var kļūt daudzveidīgi un grūti salasāmi.
@DisplayName anotācija ir JUnit komponents, kas ļauj izveidot pielāgotus nosaukumus jūsu testa klasēm un metodēm. Šajos nosaukumos var būt atstarpes, īpašās rakstzīmes un pat emocijzīmes. @DisplayName anotācijai vajadzētu palīdzēt izveidot aprakstošākus, jēgpilnākus nosaukumus testa klasēm un metodēm.
Kā izmantot @DisplayName anotāciju
Iekšā JUnit testa klase
, @DisplayName anotācija parādās virs klases nosaukuma vai tieši pirms metodes deklarācijas. @DisplayName anotācijai ir viens arguments (nosaukums). Šis arguments vēlāk parādās testa pārskatos, padarot testēšanas dokumentāciju aprakstošāku.iepakojums displeja nosaukums;
imports org.junit.jupiter.api. DisplayName;
imports org.junit.jupiter.api. Pārbaude;@DisplayName("Pārbaude klasēdemonstrējotkāuz @Parādāmais nosaukumsanotācijadarbojas.&citāts;)
klasēDisplayNameTest{
@Pārbaude
@DisplayName("Pārbaudes parādāmais nosaukums ar īpašām rakstzīmēm: °□°)╯")
nederīgstestDisplayNameWithSpecialCharacters(){}@Pārbaude
@DisplayName("Pārbaudes parādāmais nosaukums, kurā ir atstarpe")
nederīgstestDisplayNameWithSpaces(){}
@Pārbaude
@DisplayName("Pārbauda parādāmo nosaukumu, kurā ir emocijzīme: 😱")
nederīgstestDisplayNameWithEmoji(){}
}
Izpildot šo Java klasi, tiek ģenerēts šāds JUnit vienības pārbaudes ziņojums:
Katrs @DisplayName anotācijas arguments JUnit testa pārskatā aizstāj attiecīgās klases vai metodes nosaukumu. @DisplayName anotācija “Pārbaudes klase, kas parāda, kā darbojas @DisplayName anotācija” ir daudz izteiksmīgāka un visaptverošāka nekā DisplayNameTest.
Kas tālāk testēšanai?
Zinot, kā izmantot @DisplayName anotāciju, noteikti uzlabosies jūsu vienības pārbaudes dokumentācija. Neatkarīgi no @DisplayName anotācijas jūs atklāsiet, ka visiem jūsu JUnit vienību testiem būs nepieciešams viens vai vairāki apgalvojumi. Apgalvojumi ir JUnit vienību testu pamatelementi, tāpēc ir labi iemācīties tos izmantot.