From: Jean-Francois P. <jfp...@ya...> - 2006-06-29 17:20:40
|
Hi Timothy, I have tried to call actionActivate twice, and it works! Thanks for the trick. Cheers Jean-Francois --- Timothy Wall <tw...@us...> a écrit : > > On Jun 27, 2006, at 10:19 AM, Jean-Francois Poilpret > wrote: > > > Hello, > > > > I am making quite some progress in using abbot on > > HiveBoard. > > Now I am experimenting (quite successfully) two > > scripts running on 2 instances of HiveBoard (one > > script is launched in forked mode, so each has its > own > > VM). > > very interesting. > > > These 2 scripts synchronize with each other > through > > sockets and a few bsh functions that I have > written. > > This way in fact, two scripts are not concurrent > but > > execute some steps sequentially (step1-1, step2-1, > > step1-2, step2-2...) > > > > Now I had some problems due to the fact that the > > HiveBoard application takes a lot of space on my > > screen, and it is impossible to make 2 HiveBoard > > instances completely visible on my screen at the > same > > time. Due to this, when the script for the > background > > application executes, some actions do not work > (eg, > > actionSelectCell on a JTable cell which is hidden > by > > the first -foreground- application). > > You might consider (if you're on an X11 system) > running VNC to get > several virtual displays. I have a virtual display > always running on > a linux box so that I can do unit testing in > isolation (it's also > using a minimal or no window manager to avoid any > interception of > keystrokes by the WM). > > If you run cygwin sshd on windows, you can also run > abbot from that > environment (it's a sort of peculiar "service mode", > so nicknamed b/c > I originally worked on a project which ran tests as > a service). > java.awt.Robot won't work, but most of the rest of > abbot will (using > AWT mode). Your tests will run on the local > machine, but will have > their own display space. > > > > > > I was wondering if I had one way to force the > > currently tested application into foreground? > > I have tested WindowTester.actionActivate() to no > > avail: I did not see any foreground switches > between > > the two tested GUIs. I suppose the > actionActivate() > > works only _inside_ the current VM, not across > several > > applications. > > Normally, toFront will bring the window from the > current JVM instance > into focus, but it's not hard to confuse java and > leave it stuck > somewhere behind other windows (don't know if this > is a java bug or a > windows bug). > > Window.toFront is *supposed* to make the window > frontmost. If it > doesn't, it's either a JVM or w32 bug. You might > try calling it more > than once. Try adding a listener to the window to > see if it *thinks* > it's been activated; if java can't tell whether the > window's really > been activated, it'll be difficult to provide a > robust solution to > ensure that it's activated. > ___________________________________________________________________________ Yahoo! Mail réinvente le mail ! Découvrez le nouveau Yahoo! Mail et son interface révolutionnaire. http://fr.mail.yahoo.com |