Plauderecke Einführung OOP - Aufgabe 7 - JUnit

Hochschulabschluss
Master of Science
Hallo,

hat sich schon jemand mit der JUnit Aufgabe von EA 7 beschäftigt. Ich habe die Grundsrtruktur gecodet, wie sie auch in der KE steht. Ich bekomme beim TestTest aber diese Fehlermeldung :
assertTrue("Entweder wird m nicht für die Berechnung verwendet oder tag = " + MyTest.t + " und km = " + MyTest.k + " werden nicht überprüft.", MyBerechner.wurdeAufgerufen);

ich kann leider gar nichts mit anfangen. Ich habe den Code aus der vorherigen Aufgabe für den Rechner einfach übernommen. Soll ich hier einen neuen Konstruktor schaffen, damit ich die beiden Werte noch überprüfen kann?

Gruß
Nils
 
Sorry Nils, das hört sich etwas wirr an. Es geht wohl um Aufgabe 7.5 ?

Ich glaube die Übernahme des Rechner-Codes sollte ok sein, wenn sie früher funktioniert hat.

Bei der Aufgabe soll man doch eben die Junit Testklasse MietpreisBerechnerTest erstellen. Diese Struktur wird in der Aufgabenstellung vorgegeben. Jetzt muss man halt nur noch die wirklichen Testroutinen für die Testfälle z.B. TestA() selbst programmieren.

Hast Du letzteres wirklich gemacht? Die Fehlermeldung von ...TestTest würde darauf hindeuten, dass eben dort in ...Test das Problem liegt.
 
Ja, genau bin ich voll dabei. Sieht bei mir so aus. Ich frage mich jetzt wie ich die anderen Teile testen soll.

public class MietpreisBerechnerTest extends junit.framework.TestCase {

protected MietpreisBerechner m;

public void setUp() {
m = new MietpreisBerechner();
}

public void testA() throws UngueltigeTagesanzahlAusnahme, UngueltigeKilometerangabeAusnahme {
assertEquals("berechneMietpreis() fehlerhaft", 6000, m.berechneMietpreis(1, 10));
}

public void testB() throws UngueltigeTagesanzahlAusnahme, UngueltigeKilometerangabeAusnahme {
assertEquals("berechneMietpreis() fehlerhaft", 8000, m.berechneMietpreis(2, 0));
}

public void testC() throws UngueltigeTagesanzahlAusnahme, UngueltigeKilometerangabeAusnahme {
assertEquals("berechneMietpreis() fehlerhaft", 12000, m.berechneMietpreis(4, 200));
}

public void testD() throws UngueltigeTagesanzahlAusnahme, UngueltigeKilometerangabeAusnahme {
assertEquals("berechneMietpreis() fehlerhaft", 20750, m.berechneMietpreis(8, 250));
}

public void testE() throws UngueltigeTagesanzahlAusnahme, UngueltigeKilometerangabeAusnahme {
assertEquals("berechneMietpreis() fehlerhaft", 26000, m.berechneMietpreis(11, 199));
}

public void testF() throws UngueltigeTagesanzahlAusnahme, UngueltigeKilometerangabeAusnahme {
assertEquals("berechneMietpreis() fehlerhaft", 30000, m.berechneMietpreis(13, 150));
}

public void testG() throws UngueltigeTagesanzahlAusnahme, UngueltigeKilometerangabeAusnahme {
assertEquals("berechneMietpreis() fehlerhaft", 35050, m.berechneMietpreis(14, 150));
}

public void testH() throws UngueltigeTagesanzahlAusnahme, UngueltigeKilometerangabeAusnahme {
assertEquals("berechneMietpreis() fehlerhaft", 37750, m.berechneMietpreis(20, 250));
}
}
 
Hi, Danke ich habs. Komischer Weise scheint die TestTest Datei einen Fehler zu finden, wenn ich die Aufgabe aber hochlade sind alle Test erfolgreich.
 
Vielleicht macht ja bei Dir (Eclipse?) das deklarieren der Ausnahme (throws...) Probleme. Im letzten Semester war das nicht nötig. Ich habe allerdings auch die MietpreisBerechner Klasse aus der Vorlage genommen und da nur die eine Berechnungsmethode ergänzt, wenn ich mich recht entsinne.


So sieht bei mir eine der Methoden in ....Test aus:

public void testA() {
int tage = 1;
int km = 10;
long miete = 6_000;
assertEquals("Falscher Mietpreis bei " + tage + " Tage / " + km + " km!", miete, m.berechneMietpreis(tage, km));
}
 
Der OOP-Discord-Kanal ist eigentlich ideal für solche Fragestellungen. Herr Küppers antwortet hier in der Regel zügig.
Aber Moment mal: sprechen wir über EOOP WiInfo oder Informatik?
 
Zurück
Oben