JUnit-Tests: Es wirft java.lang.NullPointerException beim testen ein paar String zugehörigen setter-und getter
hier ist meine Klasse, die benötigt wird, um zu testen:
public class RankingTableModel {
/**
* filePath stores the path of a csv file.
*/
private String filePath = "";
/**
* table data represents all the data in the table cells.
*/
private Object[][] table_data;
public String getFilePath () {
return filePath;
}
public void setFilePath (String filePath) {
this.filePath = filePath;
}
hier ist mein JUnit-test-Klasse (für @Before, @After, .etc, ich habe es nicht eine Sache, nur drucken einige Nachrichten):
public class RankingTableModelTest {
private static final Object[][] data = {
{"US", new Integer(1), new Integer(2), new Integer(2),
new Integer(3)},
{"UK", new Integer(2), new Integer(2), new Integer(1),
new Integer(2)},
{"CHN", new Integer(3), new Integer(1), new Integer(3),
new Integer(1)},
};
private static final String file_path = "test";
private RankingTableModel test_model;
@Test
public void setFilePathAndGetFilePath() {
System.out.println("Testing setFilePath and getFilePath.");
test_model.setFilePath(file_path);
assertEquals(test_model.getFilePath(),"test");
}
}
Wenn ich den test starten, wirft er eine exception:
java.lang.NullPointerException
bei *.RankingTableModelTest.setFilePathAndGetFilePath(RankingTableModelTest.java:51)
51 ist die Anzahl der Zeile : test_model.setFilePath(file_path);
Was ist das problem mit meinem code? Thx 🙂
Du musst angemeldet sein, um einen Kommentar abzugeben.
Du nie instanziiert
test_model
.Irgendwo müssen Sie
test_model = new RankingTableModel();
oder etwas ähnliches.Haben Sie gerade erklärt test_model:
Nicht, initialisiert es.
Oben line wird Ihr problem lösen.