Monocle with VNC for Jenkins [was: Re: openjfx/8u-dev/rt: RT-35441 [Monocle] Provide a VNC back-end]

Daniel Blaukopf daniel.blaukopf at oracle.com
Wed Jan 22 05:48:36 PST 2014


Hi Uwe,

On Jan 22, 2014, at 2:19 PM, Uwe Sander <usander at tesis.de> wrote:

> Hi,
> 
> I'm interested in headless testing, too. I tried to use StubToolkit for including TestFX tests in a headless build, but all I got was a CNFE. If anyone is interested to give me a hand on this, details can be found at http://stackoverflow.com/questions/21137039/how-to-use-stubtoolkit-instead-of-quantum-toolkit-for-my-javafx-application.
> 
> As Tom explained, Monocle would provide another way for headless testing. Does it replace StubToolkit?
Monocle uses the same Quantum toolkit that other JavaFX implementation use - not StubToolkit, which is only used in testing.

As I see it, there is a place for tests using StubToolkit, and a place for tests using a real Toolkit implementation. For example, QuantumToolkit has a very specific threading model, but this is not enforced by StubToolkit. StubToolkit is useful for isolated tests of the upper parts of the JavaFX stack. For a real application you need to test on a real Toolkit, and headless Monocle is one way to do that.

We have https://javafx-jira.kenai.com/browse/RT-35330 open on removing StubToolkit. I’m not convinced that is the right thing to do. https://javafx-jira.kenai.com/browse/RT-35396 would open up possibilities for a new class of automated test, without requiring us to rewrite existing tests that use StubToolkit.

Thanks,
Daniel

> 
> Cheers,
> Uwe
> 
> 
> 
> 
> Tom Eugelink <tbee at tbee.org> , 22/1/2014 8:46 AM:
> 
> What also is very interesting is headless testing. Let me see if I'm getting this. 
> 
> Normally Jenkins would start a VNC server (xvnc), which provides some kind of graphics API against which an UI program can paint. JavaFX is not picking that up however. 
> But, as I read it, in this case JavaFX starts its own VNC server, so it takes of everything itself. All one would need to do is specify the 
> 
>     -Dglass.platform=Monocle -Dmonocle.platform=VNC -Dprism.order=sw 
> 
> And additionally a port to run the VNC server on (so multiple Jenkins jobs don't interfere). 
> 
> Am I correct? How can I test this (aka in which version is the VNC server available)? 
> 
> Tom 
> 
> 



More information about the openjfx-dev mailing list