Community
Participate
Working Groups
At the beginning of 3.6 we investigated some tools that could help us writing UI tests (see for instance Bug 285148). Those tools did not allow for writing tests that could be run for free on our build machines. This was the most serious limitation. I also noticed that people duplicate the same code that allows to get shells, references to widgets etc. I remember at least two places, one for Error Handling, another one in Compare for Apply/Create Patch operation that might duplicate the code. I think that what we really need is something I would call UI Test API i.e. a set of methods, classes that would let us write UI tests in a consistent way.
Would you re-evaluate SWTBot for this if I can fix the issues that were blocking you (I'm using SWTBot regularly for my RCP apps, contributed some patches and presented it together with Ketan at EclipseCon 2010)? Could you please clarify what you mean by "run for free on build machines" and what exactly is blocking you here?
(In reply to comment #1) Hi Ralf, By "run for free on build machines", I meant to write tests locally and run them as part of our build process. I guess our releng engineers would have to install SWTBot on their servers. And this will not happen in the nearest future. We can still try to write tests using STWBot and run them locally, however Tomasz mentioned there is at least one blocking issue (Bug 261360) and it is not fixed yet.
Is SWTBot part of the release train? While I'm not sure of the feasibility of requiring SWTBot to run the UITestSuites, the automated test process in 3.6 does a p2 install to include the tests and other supporting plugins, which would provide a place to hook it in the lifecycle: -installIUs ${testPlugin},org.eclipse.test,org.eclipse.ant.optional.junit,org.eclipse.test.performance,org.eclipse.test.performance.win32,org.easymock PW
(In reply to comment #3) SWTBot is not part of the helios release train, but you can always p2 install it in your target from the swtbot update site.
(In reply to comment #3) > Is SWTBot part of the release train? While I'm not sure of the feasibility of > requiring SWTBot to run the UITestSuites, the automated test process in 3.6 does > a p2 install to include the tests and other supporting plugins, which would > provide a place to hook it in the lifecycle: I guess I can't just install SWTBot on our build servers though. And what I am really interested in is to have something (tool or UI test layer) that can be used by my tests both locally and on build servers.
Szymon, you don't need to install anything special on the build machines, SWTBot tests can be run as regular JUnit / JUnit Plug-in tests. In my projects I only add SWTBot as a dependency to the test bundles and provide the bundles as part of my target platform. Question is, where do you get other bundles which are needed to execute your tests from (like org.junit)? You only need to add the SWTBot bundles there. I'll see to what we can do about the issue bug 261360 which is blocking you.
See also bug 263295 comment 1.
Not sure which bucket this bug belongs to. Paul, Can you reassign this one to the right owner?
This bug hasn't had any activity in quite some time. Maybe the problem got resolved, was a duplicate of something else, or became less pressing for some reason - or maybe it's still relevant but just hasn't been looked at yet. If you have further information on the current state of the bug, please add it. The information can be, for example, that the problem still occurs, that you still want the feature, that more information is needed, or that the bug is (for whatever reason) no longer relevant.