如果我有一个包含多个测试的测试套件,那么当我尝试从代码编辑器的上下文菜单或从JUnit视图运行单个单元测试时,它似乎坚持始终运行整个套件,而不是始终运行整个套件。单项测试。有没有一种方法可以禁用以更改此行为,以便我可以要求运行该测试,并且只能进行测试。
Answers:
在包浏览器中,展开课程。它应该显示所有方法。右键单击要运行的一种方法,然后从上下文菜单中选择“运行方式-> JUnit”(已使用Eclipse 3.4.1进行了测试)。同样,在JUnit结果视图中的单个条目上选择“运行”,以相同的方式重新运行测试。
在Eclipse 3.5中,可以通过将测试运行程序更改为JUnit 3来解决此问题。这仅适用于JUnit 3测试,不适用于JUnit 4测试。您可以通过执行以下操作来更改测试运行器:
它也可能在其他版本中工作。
在带有JUnit 4.8.2的Eclipse Indigo中,这是可能的。右键单击要在Outline
窗格中单独进行单元测试的方法,然后选择Run As -> JUnit Test
。
您甚至可以在源代码编辑器中选择右键单击“测试方法”名称,然后选择Run As -> Junit Test
。
不要使用Strg+F11而是热键Alt+ Shift+ X- > T。
然后Eclipse将执行当前打开的文件作为JUnit测试。绿色的播放按钮将仅运行最后选择的运行配置。
对我来说,它运作良好Alt+ Shift+ X> - T。
我将通过使用一种高效的仅键盘方法来添加其他功能,该方法允许您调试单个单元测试(方法)。
使用以下任一方法将光标移至方法名称
将光标放在方法名称上(或之前):
运行测试后,您可以通过执行以下操作返回到光标所在的位置:
Alt+Back
您几乎可以通过以下方式获得类似于REPL的行为:
Ctrl+ Shift+Up和Alt+ Shift+ X->T和Alt+Back
您还可以快速设置一个断点:
Ctrl+ Shift+B
右键单击文件中测试方法名称的某个位置,然后选择“运行”->“ Junit测试”。我一直在用Kepler和JUnit 4来做。
我遇到了其他人使用Eclipse 3.4.1和JUnit 4测试运行程序的相同问题-无法运行单个测试。但是我在其他地方找到了解决问题的建议。我的测试类仍在扩展junit.framework.TestCase。当我停止扩展TestCase时,一切工作正常,并且能够使用JUnit 4测试运行器运行单个JUnit测试。当然,我需要JUnit 4批注将静态导入用于assert方法,但是我已经做到了-我只是没有删除TestCase继承。
对我来说,它在Eclipse 3.4.2中也不起作用,尽管它在以前的发行版中也起作用(我尝试从package Explorer运行单个方法,从junit视图运行单个junit测试)