Eclipse JUnit-Tests

SpearoCode

Neues Mitglied
Hallo,

meine Aufgabe ist es für ein Projekt JUnit-Tests zu erstellen und da ich sowas noch nie wirklich gemacht habe, bin ich heillos überfordert, während die Gruppe mir im Nacken sitzt.

Im Folgenden zeige ich einen kleinen Ausschnitt aus dem Code, von dem ich nicht weiß, wie ich Tests dafür erstellen soll.

Ich hoffe ihr könnt mir ein Anhand einiger Beispiele ein wenig Einsicht geben.

Java:
public class Roboter {
	
	private IMotor motor;
	private IKlingen klingen;
	private ISensorVorne sensorVorne;
	private IBatterie batterie;
	private IGPS gps;
	private IKompass kompass;
	private INavigator navigator;
	
	public Roboter(IMotor motor, IKlingen klingen, ISensorVorne sensorVorne,
			IBatterie batterie, IGPS gps, IKompass kompass, SimpleField[][] map, int gartenBreite, int gartenHoehe) {
		super();
		this.motor = motor;
		this.klingen = klingen;
		this.sensorVorne = sensorVorne;
		this.batterie = batterie;
		this.gps = gps;
		this.kompass = kompass;
		this.navigator = new Navigator(motor, klingen,  sensorVorne,
				 batterie,  gps,  kompass, map, gartenBreite, gartenHoehe);
	}

	public void doStep() {
		navigator.getNextStep();
	}
	
	public IMotor getMotor() {
		return motor;
	}

	public void setMotor(IMotor motor) {
		this.motor = motor;
	}

(...)

Liebe Grüße,
Spearo :)
 
G

Gast2

Gast
Weißt du nicht WIE du JUnit Tests schreibst, oder ist dir nur unklar WAS du testen sollst?
 

SpearoCode

Neues Mitglied
Wie man die Tests schreibt ist mir grob klar, also zumindest was Syntax usw. angeht.

Ich frage mich eher was ich testen soll, bzw. wie so ein Testfall für die Klasse dort aufgebaut wäre.

Anforderung ist "alle Business-Logikklassen" zu testen. Das hier ist meiner Meinung nach ein Teil einer davon.
 
T

TryToHelp

Gast
Naja, du kannst zum einen natürlich getter und setter testen, diese sollten jedoch funktionieren.
Was du dann testen solltest, sind die richtigen funktionen, und zwar erstellst du eine ausganngssituation und rufst dann die funktion aus und schaust, ob das Ergebniss das ist, wie es auszusehen hat, natürlich auch gegenbeispiele testen, also ob auch etwas fehlschlägt, sowie alle möglichkeiten testen ;-)

Bei z.B. einer Bücherverwaltung
Testfall 1 Buch ausleihen, das vorhanden ist - Ergebnis buch ausgeliehen
Testfall 2 Buch ausleihen, das nicht vorhanden ist - Ergebnis fehlermeldung, buch nicht ausgeliehen
Testfall 3 Buch zurückgeben, das man ausgeliehen hat - Ergebnis Buch wieder im sortiement vorhanden, buch nicht mehr ausgeliehen
...
 

darekkay

Bekanntes Mitglied
Für POJOs wie deinen Roboter schreibt man keine Unit-Tests (bitte keine Unit-Tests für einfache Setter/Getter). Für Methoden, die mit diesen POJOs arbeiten, schon. Irgendwo wird dein Roboter verwendet, Werte werden gesetzt, und schließlich wird irgendwas damit gemacht. Erzeuge einen Testroboter, lass eine zu testende Methode damit durchlaufen, und überprüfe, ob das erwartete Ergebnis rauskommt.
 

Neue Themen


Oben