Browse Source

Änderung der Testklasse

Testfälle in denen eingegeben werden musste wurde rausgeworfen 
der restliche Testfall wurde aufgeteilt und verbessert
featureEntscheider
elephant12 5 years ago
parent
commit
218572c64e
  1. 14
      src/main/java/com/ugsbo/entscheider/Entscheider.java
  2. 78
      src/test/java/com/ugsbo/entscheider/JUnitEntscheiderErgebnisTest.java

14
src/main/java/com/ugsbo/entscheider/Entscheider.java

@ -25,9 +25,10 @@ public class Entscheider {
}
}
public static String ergebnis(int a, int b, int c, int d, int e, int f, int g, int h) {
int erg = (((a + b + c) * d) / (e + f + g)) - h;
//testbar
//Eingaben -> alter, lernen, gelb, apfel, mot, harry, fruehstueck, anzahl
public static String ergebnis(int alter, int lernen, int gelb, int apfel, int mot, int harry, int fruehstueck, int anzahl) {
int erg = (((alter + lernen + gelb) * apfel) / (mot + harry + fruehstueck)) - anzahl;
String hilfe = "";
if (erg < 5)
hilfe = "Ich kann doch nicht fuer dich entscheiden, dass musst du schon selber wissen.";
@ -38,7 +39,7 @@ public class Entscheider {
return hilfe;
}
//nicht testbar
public static String fragen() {
// Eingangsfrage
System.out.println(
@ -154,7 +155,7 @@ public class Entscheider {
return antwort;
}
//nicht testbar
public static int skalaTest(int answer) {
System.out.println("Try again. Nur Werte zwischen 1 und 10 sind erlaubt.");
int b = getAnInteger();
@ -164,7 +165,7 @@ public class Entscheider {
skalaTest(b);
return -1;
}
//nicht testbar
public static int getAnInteger() {
Scanner in = new Scanner(System.in);
while (true) {
@ -177,6 +178,7 @@ public class Entscheider {
}
}
//Nicht testbar
public static int pruefen(int answer) {
System.out.println("Try again. Nur 1 und 0 sind erlaubt.");
int b = getAnInteger();

78
src/test/java/com/ugsbo/entscheider/JUnitEntscheiderErgebnisTest.java

@ -9,34 +9,72 @@ import org.junit.Test;
public class JUnitEntscheiderErgebnisTest {
//Testet den Fall Ergebnis ist zwischen 5 und 15
@Test
public void skalaTestTest() {
int a = Entscheider.skalaTest(11);
Assert.assertTrue(a >= 1 || a <= 10 );
public void ergebnisZwischenFuenfUndFuenfzehn() {
//Eingabe der Werte zu den Fragen. Das erwartete Ergebnis zwischen 5 und 15 (jeweils inklusiv)
//deshalb muss Rückgabewert: "Naja, dann geh halt nach Hause und ruh dich aus." sein
int alter = 21;
int lernen = 1;
int gelb = 1;
int apfel = 3;
int mot = 2;
int harry = 1;
int fruehstueck = 1;
int anzahl = 4;
//erwarteter String
String erwartet = "Naja, dann geh halt nach Hause und ruh dich aus.";
//ausführen der Methode
String b = Entscheider.ergebnis(alter, lernen, gelb, apfel, mot, harry, fruehstueck, anzahl);
//stimmt es mit dem erwartetem überein?
assertEquals("Anwortstring",erwartet,b);
}
//Testet den Fall ergebnis ist größer 15
@Test
public void ergebnisTest() {
String a = Entscheider.ergebnis(1,1,1,1,1,1,1,1);
Assert.assertTrue(a == "Ich kann doch nicht fuer dich entscheiden, dass musst du schon selber wissen." );
String b = Entscheider.ergebnis(21,1,1,3,2,1,1,4);
Assert.assertTrue(b == "Naja, dann geh halt nach Hause und ruh dich aus.");
String c = Entscheider.ergebnis(29,0,1,3,2,0,1,2);
Assert.assertTrue(c == "Jetzt wieder gehen? Dann bist du doch voellig umsonst aufgestanden. Geh einfach hin.");
//Eingabe der Werte zu den Fragen. Das erwartete Ergebnis ist größer 5
//deshalb muss Rückgabewert: "Jetzt wieder gehen? Dann bist du doch voellig umsonst aufgestanden. Geh einfach hin." sein
int alter = 29;
int lernen = 0;
int gelb = 1;
int apfel = 3;
int mot = 2;
int harry = 0;
int fruehstueck = 1;
int anzahl = 2;
//erwarteter String
String erwartet = "Jetzt wieder gehen? Dann bist du doch voellig umsonst aufgestanden. Geh einfach hin.";
//ausführen der Methode
String c = Entscheider.ergebnis(alter, lernen, gelb, apfel, mot, harry, fruehstueck, anzahl);
//Stimmt Ergebnis
assertEquals("Anwortstring für größer 5",erwartet,c);
}
//Testet den Fall ergebnis ist kleiner 5
@Test
public void pruefenTest() {
int a = Entscheider.pruefen(2);
Assert.assertTrue(0 == a || 1 == a);
public void ergebnisKleinerFuenf() {
//Eingabe der Werte zu den Fragen. Das erwartete Ergebnis ist kleiner 5
//deshalb muss Rückgabewert: "Ich kann doch nicht fuer dich entscheiden, dass musst du schon selber wissen." sein
int alter = 1;
int lernen = 1;
int gelb = 1;
int apfel = 1;
int mot = 1;
int harry = 1;
int fruehstueck = 1;
int anzahl = 1;
//erwarteter String
String erwartet ="Ich kann doch nicht fuer dich entscheiden, dass musst du schon selber wissen.";
//ausführen der Methode
String a = Entscheider.ergebnis(alter, lernen, gelb, apfel, mot, harry, fruehstueck, anzahl);
//stimmt Ergebnis?
assertEquals("Anwortstring für kleiner 5",erwartet,a);
}
@Test
public void fragenTest() {
String a = Entscheider.fragen();
Assert.assertTrue((a == "Ich kann doch nicht fuer dich entscheiden, dass musst du schon selber wissen.") ||( a == "Naja, dann geh halt nach Hause und ruh dich aus." )|| (a == "Jetzt wieder gehen? Dann bist du doch voellig umsonst aufgestanden. Geh einfach hin.") || (a == "Na dann halt nicht. Tschüssi."));
}
}
Loading…
Cancel
Save