1

我在 Mac OS X 10.8.4 上的 Eclipse 4.2.2 Juno 中使用 SWTBot 2.1.1。

网上有一些教程(1、2 ,但是不管试了多少次,总是遇到

!ENTRY org.eclipse.core.net 1 0 2013-07-17 17:33:52.328
!MESSAGE System property http.nonProxyHosts has been set to local|*.local|169.254/16|*.169.254/16 by an external source. This value will be overwritten using the values from the preferences
Exception in thread "WorkbenchTestable" java.lang.IllegalArgumentException: No Classloader found for plug-in com.eclipse.swtbot.setup
at org.eclipse.swtbot.eclipse.core.RemotePluginTestRunner.getClassLoader(RemotePluginTestRunner.java:79)
at org.eclipse.swtbot.eclipse.core.RemotePluginTestRunner.getTestClassLoader(RemotePluginTestRunner.java:73)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.loadClass(RemoteTestRunner.java:693)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.loadClasses(RemoteTestRunner.java:429)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:452)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
at org.eclipse.swtbot.eclipse.core.RemotePluginTestRunner.main(RemotePluginTestRunner.java:64)
at org.eclipse.swtbot.eclipse.core.UITestApplication.runTests(UITestApplication.java:117)
at org.eclipse.ui.internal.testing.WorkbenchTestable$1.run(WorkbenchTestable.java:71)
at java.lang.Thread.run(Thread.java:680)

每次我运行这个 SWTBot 测试时,它只会弹出一个空的 Eclipse 窗口,仅此而已。

有人指出我应该将当前的bundle添加进去Run -> Run Configuration ... -> SWTBot Test -> Plug-ins,但是即使我在那里添加了所有插件,错误仍然存​​在。

有什么帮助吗?

4

2 回答 2

1

在启动配置-> 插件中,您是否将“启动方式”组合框设置为“所有工作区和启用的目标插件”?

我在同样的问题上苦苦挣扎,发现这是(部分)问题。

于 2013-11-07T18:54:20.013 回答
1

我遇到过同样的问题。对我来说,包含我的 swtbot 测试的包没有启动,因为我没有在运行配置中选择它。以下是您应该检查哪些对我有用的步骤:

  1. Run -> Run Configurations… -> your SWTBot Test -> Plug-ins

  2. Launch with: plug-ins selected below only

  3. 选择运行应用程序所需的所有插件Workspace+ 包含 SWTBot 测试的插件

  4. 现在单击Add Required Plug-ins两次以确保选择所有需要的插件Target Platform

  5. 确保您选择了 SWTBot 所需的最少插件。它们是:org.eclipse.swtbot.eclipse.core, org.eclipse.swtbot.eclipse.finder, org.eclipse.swtbot.junit4_x, org.eclipse.swtbot.swt.finder

  6. 单击Validate Plug-ins并手动添加那里提到的所有插件
  7. 单击ApplyRun
于 2019-08-16T05:11:36.840 回答