Tartalomjegyzék
Java tesztes feladatok
Szimpla
Feladat 0001
Adott a következő jUnit alapú teszt:
- TesttomegTeszt.java
import org.junit.Test; import static org.junit.Assert.*; public class TesttomegTeszt { @Test public void tesztSzamitTerulet() { assertEquals(29, Testtomeg.szamitIndex(95, 1.80), 0); assertEquals(28, Testtomeg.szamitIndex(90, 1.80), 0); assertEquals(26, Testtomeg.szamitIndex(85, 1.80), 0); assertEquals(28, Testtomeg.szamitIndex(85, 1.75), 0); assertEquals(21, Testtomeg.szamitIndex(50, 1.55), 0); } }
Feladatunk, hogy számoljuk ki a testtömegindexet, a következő képlet alapján:
Írjon metódust, amely teljesíti a fenti tesztet.
Feladat 0002
Adott a következő egységteszt, amely az alapszabadságot számító metódust tesztel, amelynek neve alapSzabadsag(). Az alapSzabadsag() metódusnak vissza kell adnia szabadnapot. Bemenő paraméter életkor.
Írjon metódust, amely teljesíti a tesztet.
- Program01.java
import org.junit.Test; import static org.junit.Assert.*; public class Program01Teszt { @Test public void testAlapSzabadsag() { assertEquals(21, Program01.alapSzabadsag(25), 0); assertEquals(22, Program01.alapSzabadsag(28), 0); assertEquals(23, Program01.alapSzabadsag(32), 0); assertEquals(24, Program01.alapSzabadsag(34), 0); assertEquals(25, Program01.alapSzabadsag(36), 0); assertEquals(26, Program01.alapSzabadsag(38), 0); assertEquals(27, Program01.alapSzabadsag(40), 0); assertEquals(28, Program01.alapSzabadsag(42), 0); assertEquals(29, Program01.alapSzabadsag(44), 0); assertEquals(30, Program01.alapSzabadsag(45), 0); assertEquals(30, Program01.alapSzabadsag(46), 0); assertEquals(30, Program01.alapSzabadsag(50), 0); } }
Az alapszabadság meghatározása:
- 25 életévtől 21 nap
- 28 életévtől 22 nap
- 31 életévtől 23 nap
- 33 életévtől 24 nap
- 35 életévtől 25 nap
- 37 életévtől 26 nap
- 39 életévtől 27 nap
- 41 életévtől 28 nap
- 43 életévtől 29 nap
- 45 életévtől 30 nap
Feladat 0003
Írjon metódust, amely teljesíti a következő tesztet:
- Program01Test.java
import org.junit.Test; import static org.junit.Assert.*; public class Program01Test { @Test public void testCaesarCode() { assertEquals("de", Program01.caesarCode("ab", 3)); assertEquals("ef", Program01.caesarCode("bc", 3)); assertEquals("d", Program01.caesarCode("a", 3)); assertEquals("c", Program01.caesarCode("z", 3)); assertEquals("hi", Program01.caesarCode("ab", 7)); } }
A caesarCode() metódus egy Caesar-kódoló. Egy szöveg minden betűjét eltolja az adott számú értékkel. A példában 3-mal toltuk el karaktereket. Az „a” helyet például „d”-t kapunk. A „b” helyett „e”-t kapunk, stb. Csak az angol ábécével kell dolgoznunk. Ha az ábécé végén járunk, például „z” betűt kell kódolni, akkor az ábécé elejéről folytatjuk, tehát „z” esetén „c”-t kell kapnunk.
Feladat 0004
Adott a következő teszt:
- Program01Test.java
import org.junit.Test; import static org.junit.Assert.*; public class Program01Test { @Test public void testMethod() { assertTrue(Program01.isOdd(3)); assertTrue(Program01.isOdd(5)); assertTrue(Program01.isOdd(15)); assertTrue(Program01.isOdd(-1)); assertTrue(Program01.isOdd(-3)); assertFalse(Program01.isOdd(2)); assertFalse(Program01.isOdd(4)); assertFalse(Program01.isOdd(100)); assertFalse(Program01.isOdd(-100)); } }
Írjon metódust, amely teljesíti a tesztet.
Az isOdd() metódus megvizsgálja a paraméterként kapott egész számot, hogy páratlan-e. Ha páratlan, akkor visszaad egy „true” értéket. Ellenkező esetben „false” értékkel tér vissza.
Kivételkezelést is követelő
Feladat 0501
A következő teszt egy olyan programhoz készült, amely téglalap területének számítását fogja elvégezni. Írja meg azt a programot, amely teljesíti a tesztet.
- Program01Teszt.java
import org.junit.Test; import static org.junit.Assert.*; public class TeglalapTeszt { @Test public void tesztSzamitTerulet() { assertEquals(1050, Teglalap.szamitTerulet(30, 35), 0); assertEquals(1800, Teglalap.szamitTerulet(40, 45), 0); } @Test(expected = IllegalArgumentException.class) public void tesztExceptionSzamitTerulet() { Teglalap.szamitTerulet(0, 35); } }