Hallo!
Ich habe diese Java-Programm geschrieben:
Um die letzte Methode zu testen, habe ich diesen Test geschrieben:
Es erscheint beim Test die folgende Fehlermeldung:
no exception message.
Was heißt das und wie kann ich das beheben?
Vielen Dank!
Tom
Ich habe diese Java-Programm geschrieben:
Java:
import java.util.List;
import java.util.ArrayList;
/**
* Diese Klasse beschreibt beliebig lange Notizlisten.
* Eine Notiz
* kann an beliebiger Stelle in die Liste eingefuegt werden.
* Benutzer koennen auf Notizen anhand ihrer Position zugreifen.
* Die erste Notiz hat die Position 0.
*
*/
class Notizbuch
{
private List<String> _notizen;
public Notizbuch()
{
_notizen = new ArrayList<String>();
}
public void speichereNotiz(String notiz)
{
_notizen.add(notiz);
}
public String gibNotiz(int position)
{
if (position < 0 || position >= anzahlNotizen())
{
throw new IllegalArgumentException("Ungueltige Position!");
}
return _notizen.get(position);
}
/**
* Gib an, wie oft ein Eintrag in der Liste ist.
*
* @param eintrag die Notiz, die entfernt werden soll.
*/
private int entferneNotizKomplett(String eintrag)
{
int i = 0;
while(_notizen.contains(eintrag))
{
_notizen.remove(eintrag);
++i;
}
return i;
}
/**
* Gib Anzahl der Duplikate.
*/
public int gibAnzahlDuplikate()
{
int i = 0;
int duplikate = 0;
for(String notiz: _notizen)
{
String s = gibNotiz(i);
int a = entferneNotizKomplett(s);
if(a > 1)
{
++duplikate;
}
++i;
}
return duplikate;
}
}
Um die letzte Methode zu testen, habe ich diesen Test geschrieben:
Java:
import static org.junit.Assert.*;
import org.junit.Test;
public class NotizbuchTest
{
private final Notizbuch _notizbuch;
public NotizbuchTest()
{
_notizbuch = new Notizbuch();
}
/**
* Testet die Methode gibAnzahlDuplikate().
*/
@Test
public void testGibAnzahlDuplikate()
{
_notizbuch.speichereNotiz("hund");
_notizbuch.speichereNotiz("katze");
_notizbuch.speichereNotiz("maus");
assertEquals(0, _notizbuch.gibAnzahlDuplikate());
_notizbuch.speichereNotiz("katze");
_notizbuch.speichereNotiz("maus");
_notizbuch.speichereNotiz("maus");
assertEquals(2, _notizbuch.gibAnzahlDuplikate());
}
}
Es erscheint beim Test die folgende Fehlermeldung:
no exception message.
Was heißt das und wie kann ich das beheben?
Vielen Dank!
Tom