使用gdx功能对libgdx进行单元测试

时间:2018-10-26 14:19:52

标签: libgdx

我有一个runnig libgdx项目,我想对其进行单元测试。

我不知道如何在单元测试中使用gdx功能,这是我不喜欢模拟的。在单元测试中使用libgdx框架时出现错误。

使用以下代码(纹理纹理= new Texture(“ ship.png”);)会出现以下错误:

java.lang.NullPointerException
    at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:88)

代码:

public class MapDrawerTest extends ApplicationAdapter {

MapDrawer mapDrawer;
SpriteBatch batch;

@Before
public void setUp() throws Exception {

    Schiff schiff = new Schiff();
    World world = new World(100,100);
    mapDrawer = new MapDrawer(world, schiff);
    batch =  Mockito.mock(SpriteBatch.class);
}

@Test
public void drawFeld() {

    Feld feld1 = new Feld(new Feldkoordinate(1,1), Feldtyp.LANDPALMEN);

    Texture texture = new Texture("ship.png");
    List<Texture> textures = new ArrayList<Texture>();
    textures.add(texture);
    feld1.addTexture(new FeldTexture(textures,60));

    mapDrawer.drawFeld(batch, feld1);

}

}

1 个答案:

答案 0 :(得分:0)

您需要将无头后端添加到您的依赖项中,并在运行单元测试之前对其进行初始化。

This guide解释了所有必要的步骤。