是否可以创建单元测试来测试KeyListener的子类?

时间:2013-11-01 00:21:38

标签: java unit-testing keylistener

我是一名学生,目前正在尝试为可以通过键盘控制的pacman游戏创建单元测试。我仍在尝试测试的一个类是继承自 KeyListener 的类,原因是因为我找不到测试/调用KeyPressed()函数的方法。 是否可以单独测试KeyPressed()而没有任何插件(例如:groovy),如此post中所述?

游戏是用Java编写的,我正在使用JUnit进行测试。 任何帮助是极大的赞赏!非常感谢你。

1 个答案:

答案 0 :(得分:0)

由于KeyListener只是一个接口,因此您只需调用要测试的方法即可对其进行测试。一个iffy部分是传入的KeyEvent。这是一个具体的类。但如果你愿意的话,你很有可能手工创建自己的(我的基础是javadoc)。

你必须更加具体。你想测试什么?你认为插件是什么? mockito会成为插件吗?这样可以很容易地为您的需求创建KeyEvent

但总的来说,这是一个更好的策略:在KeyListener实现中尽可能少地编写代码。只从KeyEvent中提取您需要的内容,并将其传递到您的课程中,其中包含游戏逻辑。现在你甚至不需要再测试KeyListener了,你只需要测试它调用的方法。