| I think that the issue can be caused by
      the order in which one tests are run (which is not guaranteed by
      JUnit and can depend on the JVM implementation). If
      SWTBotShellTest runs first, the Workbench is still open and
      confuses the test. I can reproduce the same issue as yours simply
      by running the SWTBotShellTest
 On 10/24/2013 01:01 PM, Lorenzo Bettini wrote:
 
 
      I think the purpose of this test is to test the bot.shells() method,
    so your suggestion reduces relevance of this test. It would probably
    be better to have all shells closed in a setUp or setUpBeforeClass
    method to make sure the test is well isolated.I think that an alternative way of writing that specific test is as follows:
	@Test
	public void getsAllShells() throws Exception {
		//assertEquals(2, bot.shells().length);
		bot.shell("Address Book - Untitled");
		bot.shell("Find");
	}
Does it sound reasonable? 
 
      As explained about, the difference from a machine to the other can
    be caused by different JVM implementations that can affect the order
    in which one JUnit runs the tests.Still, I think that there's something wrong in the way those tests are
executed somehow...  it really looks like the problem shows up on my
fast machine because of the workbench which is fast enough to come up
and spoil things for that specific test (which is the first one that is
being executed)...  
 
 
      It's the default Tycho behaviour: surefire starts a host application
    and then runs the test. As it used to work, I didn't investigate
    further. Tycho allows setting ths <application> and
    <product> to host the tests, there might be a way to not start
    anything, and if there is not, it could be a valid enhancement
    request.but the workbench should not be there at all when
tests are executed in this very project...
 
 
 |