2012-04-18 14 views
12

Eclipse插件是否可以更改默认Eclipse JUnit插件运行的单元测试的显示名称?在JUnit Eclipse插件中更改单元测试的显示名称

一些背景:我试图创建一个插件,它将显示与实际方法名称有点不同的单元测试名称(在Eclipse中的JUnit视图中)。如果实际的测试方法名称是“anEmptyCollectionHasSizeZero”,我希望它在Eclipse JUnit视图中显示为“空集合大小为零”。

我已经成功地以上述方式显示测试方法名称作为插件中的单独视图,但正如我所说的那样,要将此功能集成到普通JUnit视图中。我试图看看能否找到相关的扩展点,但找不到任何东西。是否有可能做到这一点?

此外,有没有插件已经这样做,或类似?

+0

有没有新闻?我也非常喜欢这样的功能。您目前的尝试(在单独的视图中)以任何格式发布?谢谢。 – Ittai 2012-05-01 08:02:38

+0

@Ittai:恐怕没有消息。 http://storyteller.socosomi.com/上提供了Eclipse插件的早期版本。然而,这是非常原始的。仍在开发中,并不是真的意味着尚未发布。但如果你愿意的话,请随时查看。 :-) – henko 2012-05-03 07:05:18

+1

我对此也感兴趣:) – Alex 2012-05-09 16:20:59

回答

3

我不知道确切的答案,但通过查看代码org.eclipse.jdt.internal.junit.ui.TestRunnerViewPart(在插件org.eclipse.jdt.junit中)可能是最佳选择。那ViewPart是你在Eclipse中看到的JUnit视图。

它看起来像org.eclipse.jdt.internal.junit.model.TestCaseElement.getTestMethodName()可能是名称的获取地点。也许你可以跟踪如何/何时创建这些元素并注入其他名称。它看起来像实现类是内部的,但(org.eclipse.jdt.internal.junit.model.TestElement),所以你可能会运气不好。

我建议询问JDT forums这样做的可能性。

3

似乎没有任何可插拔的方式来更改标签或使用的颜色。

(我曾希望用于TestViewer标签提供基于一个PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator()所以图像,标签和颜色可以装饰,但似乎并没有这样的情况......)

+0

顺便说一句,如果你想这个改变,请在Bugzilla上提出一个新的错误:https://bugs.eclipse.org/bugs/ – 2012-05-10 06:58:55

2

您可能想看看jnario来源。他们已经实现了类似的东西,JUnit窗口显示的东西肯定不是堆栈框架。

enter image description here

+0

我已经看了一下。然而,这很复杂,但看起来很有希望。如果运气不好,可能会出现这种情况,他们可以这样做,因为他们通过XText实现了自己的文档类型,而不是使用Java文件,但我们将看到! – henko 2012-07-16 07:58:23