views:

39

answers:

3

I've got regression tests of a Java system that don't bring up any graphical elements but do make use of the AWT event thread. Is there any way I can set things up to run this test suite in the background on my workstation without it constantly grabbing focus from whatever else I'm working on? (I'm running this on a mac.)

A: 

You could execute these tests with a virtual desktop, virtual machine (like VMWare) or virtual frame buffer. I'm not sure about Mac, but on Linux it works great with xvfb.

Konrad Garus
This is the first answer I looked into because it seemed the lowest-overhead. There's an additional stackoverflow thread that makes me think it might not be easy. Doesn't seem like there's a good way to ask Mac's java to use X11 instead of the native UI components.http://stackoverflow.com/questions/897054/how-to-display-java-swing-on-x11-when-running-on-mac
Joshua Goldberg
A: 

If your on a Mac: Run Tests - Without Focus Loss!

Thierry-Dimitri Roy
+1  A: 

Try running java with -Djava.awt.headless=true parameter. This should work for you if you are not using any graphical elements. Hopefully, it will prevent the program from grabbing focus while it is running.

java -Djava.awt.headless=true

Here are some links with more information:

http://www.macosxhints.com/article.php?story=20071208235352641

Eric Bronnimann