我是一名学生,目前正在尝试为可以通过键盘控制的 pacman 游戏创建单元测试。我仍在尝试测试的类之一是继承自KeyListener的类,原因是我找不到测试/调用 KeyPressed() 函数的方法。是否可以在没有任何插件(例如:groovy)的情况下对 KeyPressed() 进行单元测试,如本文中所述?
该游戏是用 Java 编写的,我正在使用 JUnit 进行测试。任何帮助是极大的赞赏!非常感谢。
我是一名学生,目前正在尝试为可以通过键盘控制的 pacman 游戏创建单元测试。我仍在尝试测试的类之一是继承自KeyListener的类,原因是我找不到测试/调用 KeyPressed() 函数的方法。是否可以在没有任何插件(例如:groovy)的情况下对 KeyPressed() 进行单元测试,如本文中所述?
该游戏是用 Java 编写的,我正在使用 JUnit 进行测试。任何帮助是极大的赞赏!非常感谢。
因为KeyListener只是一个接口,所以你只需调用你想测试的方法就可以测试它。一个不确定的部分是传入的KeyEvent。这是一个具体的类。但是如果你愿意,你很有可能可以手动创建自己的(我基于 javadoc)。
你将不得不更具体。你想测试什么?你认为什么是插件?mockito会是一个插件吗?这将很容易KeyEvent
为您的需求创建一个。
但总的来说,这里有一个更好的策略:在实现中放置尽可能少的代码KeyListener
。仅从中提取您需要的内容KeyEvent
并将其传递给您的类,其中包含游戏逻辑。现在您甚至不需要测试KeyListener
更多/更多,您只需测试它调用的方法。