Schreiben Sie einen Unit-test in Java mit main-Methode
Habe ich ein paar Methoden aus meiner Klasse
public class StringChecking
{
public static void main(String[] args);
public void stringChecker(String text, int number); //takes a string and prints that out.
}
Möchte ich schreiben Unit-Tests zum testen der ' stringChecker()
' - Methode. Ich Frage mich, wie ich gehen würde, um so zu sein. Wenn ich ein Objekt erstellen vom Typ StringChecking
in meinem JUnit-Test-Klasse, ich kann nicht scheinen, um Zugang stringChecker()
Methode aus der Instanz.
StringChecker Methode druckt bestimmte Anzahl von Wörtern des Textes übergeben, die in Abhängigkeit der parameter.Ich möchte überprüfen, um zu sehen, wenn die ersten 10 Wörter, die immer ausgedruckt sind die gleichen wie die erwarteten Ergebnisse.
JUnit-test-Klasse
String expected = "My name is";
asserEquals(expected, actual);
Ich vermute, ich werde meine stringChecker Methode etwas zurückgeben, etwas zu tun, das zu überprüfen. Aber ich verstehe nicht, warum ich kann nicht auf die Methode von der Test-Klasse.
- Wie sind Sie "auf" die Methode? Und, was ist der Titel, zu tun, was Sie Fragen?....
- Sie besser teilen den code, den Sie ausführen, haben Sie ganz Durcheinander Dingen, während Sie versuchen zu schneiden und zu trimmen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
, Wenn Sie versuchen zu behaupten, Werte kommen zurück, dann ist Ihre Methode, die Signatur ist falsch - es sollte wieder ein
String
. Von dort aus können Sie die üblichen Betrieb mit JUnit (Ihrmain
Methode dient keinem Zweck, in diesem Zusammenhang):Lediglich ausdrucken der Werte behauptet/bestätigt nichts - Sie bieten visuelle Bestätigung, die sein oft falsch oder ungültig.
Java hat zu wissen, was diese Werte sind, und das die meisten direkte Weise, dies zu tun ist, um den Rückgabewert, die Sie brauchen, zurück.
Dies ist nicht zu sagen, dass man nie test eine
void
Methode, aber in diesem Fall, ist es nicht geeignet.Würde der code einfacher zu testen, wenn anstelle von drucken die zahlen, die Methode zurückgegeben an den Aufrufer.
Wenn Sie möchten, testen Sie die tatsächliche Druck, Sie konnte legen Sie eine spy-Objekt-System.aus, dass anstelle von Druck speichert die Daten. Dann ist dein test geltend machen kann, die Richtigkeit der Ausgabe.