A szoftverfejlesztés egyik legnehezebb problémája a névadás. A program alapvető aspektusainak, például osztályoknak és metódusoknak értelmes nevek létrehozása bonyolult lehet. Az elnevezési korlátozások, például a szóköz hiánya tovább erősíti ezt a problémát.
Az elnevezési probléma továbbra is fennáll a szoftverfejlesztési életciklus minden aspektusában, beleértve a tesztelést is. Itt válik hasznossá a JUnit @DisplayName megjegyzés.
Mi az a @DisplayName megjegyzés?
Egyetlen módszerhez több vizsgálati módszer is tartozhat, amelyek mindegyike egy adott viselkedést tesztel. Ha azonban viselkedési neveket rendel a vizsgálati módszerekhez, azok bőbeszédűvé és nehezen olvashatóvá válhatnak.
A @DisplayName annotáció egy JUnit összetevő, amely lehetővé teszi, hogy egyéni neveket hozzon létre a tesztosztályokhoz és metódusokhoz. Ezek a nevek tartalmazhatnak szóközöket, speciális karaktereket és még hangulatjeleket is. A @DisplayName annotáció segítségével leíróbb, értelmesebb neveket hozhat létre a tesztosztályok és -metódusok számára.
A @DisplayName megjegyzés használata
Az a JUnit teszt osztály, a @DisplayName megjegyzés az osztály neve felett vagy közvetlenül a metódus deklarációja előtt jelenik meg. A @DisplayName megjegyzés egyetlen argumentumot (a nevet) vesz fel. Ez az érv később megjelenik a tesztjelentésekben, így a tesztelési dokumentáció leíróbb.
csomag megjelenítendő név;
import org.junit.jupiter.api. Megjelenítendő név;
import org.junit.jupiter.api. Teszt;@Megjelenítendő név("Teszt osztálydemonstrálvahogyanaz @Megjelenítendő névannotációművek.&idézet;)
osztályDisplayNameTest{
@Teszt
@Megjelenítendő név("Speciális karaktereket tartalmazó megjelenített név tesztelése: °□°)╯")
ürestestDisplayNameWithSpecialCharacters(){}@Teszt
@Megjelenítendő név("Szóközt tartalmazó megjelenített név tesztelése")
ürestestDisplayNameWithSpaces(){}
@Teszt
@Megjelenítendő név("Emojit tartalmazó megjelenített név tesztelése: 😱")
ürestestDisplayNameWithEmoji(){}
}
Ennek a Java osztálynak a végrehajtása a következő JUnit egység tesztjelentést generálja:
Minden @DisplayName annotációs argumentum lecseréli a megfelelő osztály- vagy metódusnevét a JUnit tesztjelentésben. A @DisplayName megjegyzés, „A @DisplayName annotáció működését bemutató tesztosztály” sokkal kifejezőbb és átfogóbb, mint a DisplayNameTest.
Mi a következő lépés a teszteléshez?
A @DisplayName annotáció használatának ismerete minden bizonnyal javítja az egységteszt dokumentációját. A @DisplayName annotáción kívül látni fogja, hogy minden JUnit egységtesztje egy vagy több állítást igényel. Az állítások a JUnit egységtesztek építőkövei, ezért érdemes megtanulni a használatukat.