Basics JUnit, easyjava

Azonban ezzel az üzenettel vizsgálati eredmények sokkal kellemesebb olvasás.

A fejlesztők általában írni egység vizsgálatok csak a tervezett fejlesztő / tervező / dokumentumok / etc viselkedés funkciót. mert
StringUtils. fromDouble () dokumentáció jelzi, hogy a funkció átalakítására számok meghatározásához lebegőpontos vonalon.
Egység teszt ez a funkció csak azokra a leírt funkciókat. A cél az egység tesztelése - annak biztosítása, hogy a funkció megfelelően működik, és nem úgy néz ki a feltételeket
amelyben működik megfelelően.

Sőt, az egység teszt egy rövid és érthető dokumentációt működni. A négy sort írt világosan és egyértelműen, a viselkedését a funkció: Visszaadja egy új String objektum, melynek értéke által előterjesztett egy lebegőpontos szám, írott tízes számrendszerben.

És a legfontosabb bónusz egység tesztelése, hogy rögzítő magatartási kódex. Tudod, most, hogy a funkció viselkedik egy bizonyos módon. És a kódot, hogy használ támaszkodik, ez a viselkedés. Ha valaha is meg akarja változtatni ezt a funkciót, az egység teszt gondoskodni arról, hogy
viselkedését a funkció ugyanaz maradt (vagy nem teszt). Így a többi kódot nem fogja észrevenni a változásokat a végrehajtás a funkciót, ami azt jelenti, hogy ettől a pillanattól kezdve nyugodtan változtatni bármely részét a kód: unit tesztek nem teszik lehetővé, hogy szünet valamit.

A második egység teszt

A következő egység teszt írási sor fordított konverziós funkciókat egy lebegőpontos szám:

Ez a szavazás egy egyszerű függvény, ezért a vizsgálat is nagyon egyszerű: a bemeneti érték, a referencia érték és az összehasonlítás rezultatom.Obychno írásakor ilyen egyszerű vizsgálatok nyilvánvalóan nem szülni a változók értékeit, és azt írja, közvetlenül érvényesíteni * funkciót.

Azonban assertEquals ebben a tesztben van egy további lehetőség! A tény az, hogy összehasonlítani lebegőpontos számok közvetlenül egymással nem, mert nincs pontos bináris. Jellemzően a számot összehasonlítjuk egy hiba: azt lehet mondani, hogy az egyenértékű 3,1415000000001
3,1415000000002 hibát 0,000000000001. És ez a hiba átadódik a harmadik assertEquals paraméter lebegőpontos számok. A második rész a teszt nyilvánvaló - azt vizsgáljuk át null visszatér NaN.

A harmadik egység teszt

JUnit. keretet. AssertionFailedError. várható. <[ Ljava. lang. String ; @61b383e9> de én. <[ Ljava. lang. String ; @5099681b>

Ezért JUnit egy speciális funkció összehasonlítására tömbök assertArrayEquals, amely összehasonlítja a egyenértékűségét az egyes elemek tömbök mind egymással. Természetesen egymáshoz képest elemeit az ugyanabban a helyzetben a tömb és a tömbök különböző hosszúságú nem azonnal egyenértékűnek elismert. Meg kell jegyezni, hogy az inverz függvényt assertArrayEquals nem biztosított.

A teszt az utolsó megmaradt funkciók (joinArray) Azt javaslom, hogy írjon a saját.

Teszt példa az összehasonlítás:

Kapcsolódó cikkek