用超级测试

时间:2014-01-16 13:11:10

标签: java testing superclass

我是java新手,我需要使用SuperTest类制作2个测试类。 现在我有以下内容:

这是我的最高级。我想在这里做的是把结果放在它应该给。

public class SuperTest
{
public void test (Zoeker zoeker)
{
    assertArrayEquals(new int[] {21, 27}, zoeker.zoek("AC"));
    assertArrayEquals(new int[] {5, 9}, zoeker.zoek("GC"));
    assertArrayEquals(new int[] {0, 11, 15}, zoeker.zoek("AT"));
}
}

这是我的一个测试类。在这里,我想创建一个对象,使用supertest类的方法测试Algoritme1类。

public class Test1 extends SuperTest
{

Zoeker zoeker;

@Test
public void Algoritme1()
{
    SuperTest algoritm1 = new SuperTest();
    algoritm1.test(zoeker);      

}

}

此刻我得到一个空指针异常。

1 个答案:

答案 0 :(得分:1)

你得到一个空指针异常,因为你定义了一个名为zoeker的字段但没有初始化它。与C不同,Java变量都是引用(相当于C中的指针),因此Test1中的zoeker为null:它不代表对象,而是表示该对象的空容器,用非专业术语来说。

我不太确定你想要实现的目标,但最简单的解决方法是添加:

zoeker = new Zoeker();

Algoritme1()中的

,它将阻止NullPointerException。