You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openmeetings.apache.org by "seba.wagner@gmail.com" <se...@gmail.com> on 2013/09/21 09:06:13 UTC

Some updated about Selenium testing

I have committed some changes to the build file to exclude selenium tests
for now.

There are now Ant targets to start/stop the OpenMeetings server.
But those are of course _not_ executed on the nightly builds yet.

I also extended the Selenium tests with screenshot capabilities.
So whenever a test fails it will take a screenshot of the browser.
And also you can programmatically take screenshots during the test script.
This is very handy to debug / review the tests when it runs on Jenkins as
you otherwise have a hard time thinking about what went wrong. With a
screenshot you simply look at it.

There are still a number of things todo to finalize the "testing framework"
to really start writing end-to-end tests.
I started to write a test that will be basically the root of every Selenium
test. The test will make sure that it will install the OpenMeetings default
values before it logs (or registers).

My plan is basically to start OpenMeetings on an alternate port directly on
Jenkins. And then run Selenium in xvfb. Apparently on Ubuntu nodes this
should work.
And of course stop OpenMeetings and shut down xvfb after each test.
Together with the ability of taking screenshot throughout the entire test
this should result in valueable regression tests and should minimize quite
a bit of our manual testing effort and increase our overall quality.

However please do _not_ enable the Selenium tests yet on Jenkins. There are
a number of things todo. The thread is obviously that we accidently don't
stop xvfb or OpenMeetings and eat to much ressources on the Apache
Infrastructure.
We want to create some reliable testing framework before we enable this.

Thanks,
Sebastian

-- 
Sebastian Wagner
https://twitter.com/#!/dead_lock
http://www.webbase-design.de
http://www.wagner-sebastian.com
seba.wagner@gmail.com

Re: Some updated about Selenium testing

Posted by Maxim Solodovnik <so...@gmail.com>.
Great news :)
On Sep 21, 2013 2:11 PM, "seba.wagner@gmail.com" <se...@gmail.com>
wrote:

> "The thread is obviously that we accidently don't stop xvfb or
> OpenMeetings"
> ... + that we accidently not shut down the browser inside Selenium after
> each test. For example at the moment if you would run the test it would not
> close the browser after the JUnit test.
>
> Its a bit fragile but I think that is the only suitable way of testing
> without spending ages of writing test cases.
>
> Sebastian
>
>
>
> 2013/9/21 seba.wagner@gmail.com <se...@gmail.com>
>
> > I have committed some changes to the build file to exclude selenium tests
> > for now.
> >
> > There are now Ant targets to start/stop the OpenMeetings server.
> > But those are of course _not_ executed on the nightly builds yet.
> >
> > I also extended the Selenium tests with screenshot capabilities.
> > So whenever a test fails it will take a screenshot of the browser.
> > And also you can programmatically take screenshots during the test
> script.
> > This is very handy to debug / review the tests when it runs on Jenkins as
> > you otherwise have a hard time thinking about what went wrong. With a
> > screenshot you simply look at it.
> >
> > There are still a number of things todo to finalize the "testing
> > framework" to really start writing end-to-end tests.
> > I started to write a test that will be basically the root of every
> > Selenium test. The test will make sure that it will install the
> > OpenMeetings default values before it logs (or registers).
> >
> > My plan is basically to start OpenMeetings on an alternate port directly
> > on Jenkins. And then run Selenium in xvfb. Apparently on Ubuntu nodes
> this
> > should work.
> > And of course stop OpenMeetings and shut down xvfb after each test.
> > Together with the ability of taking screenshot throughout the entire test
> > this should result in valueable regression tests and should minimize
> quite
> > a bit of our manual testing effort and increase our overall quality.
> >
> > However please do _not_ enable the Selenium tests yet on Jenkins. There
> > are a number of things todo. The thread is obviously that we accidently
> > don't stop xvfb or OpenMeetings and eat to much ressources on the Apache
> > Infrastructure.
> > We want to create some reliable testing framework before we enable this.
> >
> > Thanks,
> > Sebastian
> >
> > --
> > Sebastian Wagner
> > https://twitter.com/#!/dead_lock
> > http://www.webbase-design.de
> > http://www.wagner-sebastian.com
> > seba.wagner@gmail.com
> >
>
>
>
> --
> Sebastian Wagner
> https://twitter.com/#!/dead_lock
> http://www.webbase-design.de
> http://www.wagner-sebastian.com
> seba.wagner@gmail.com
>

Re: Some updated about Selenium testing

Posted by "seba.wagner@gmail.com" <se...@gmail.com>.
"The thread is obviously that we accidently don't stop xvfb or OpenMeetings"
... + that we accidently not shut down the browser inside Selenium after
each test. For example at the moment if you would run the test it would not
close the browser after the JUnit test.

Its a bit fragile but I think that is the only suitable way of testing
without spending ages of writing test cases.

Sebastian



2013/9/21 seba.wagner@gmail.com <se...@gmail.com>

> I have committed some changes to the build file to exclude selenium tests
> for now.
>
> There are now Ant targets to start/stop the OpenMeetings server.
> But those are of course _not_ executed on the nightly builds yet.
>
> I also extended the Selenium tests with screenshot capabilities.
> So whenever a test fails it will take a screenshot of the browser.
> And also you can programmatically take screenshots during the test script.
> This is very handy to debug / review the tests when it runs on Jenkins as
> you otherwise have a hard time thinking about what went wrong. With a
> screenshot you simply look at it.
>
> There are still a number of things todo to finalize the "testing
> framework" to really start writing end-to-end tests.
> I started to write a test that will be basically the root of every
> Selenium test. The test will make sure that it will install the
> OpenMeetings default values before it logs (or registers).
>
> My plan is basically to start OpenMeetings on an alternate port directly
> on Jenkins. And then run Selenium in xvfb. Apparently on Ubuntu nodes this
> should work.
> And of course stop OpenMeetings and shut down xvfb after each test.
> Together with the ability of taking screenshot throughout the entire test
> this should result in valueable regression tests and should minimize quite
> a bit of our manual testing effort and increase our overall quality.
>
> However please do _not_ enable the Selenium tests yet on Jenkins. There
> are a number of things todo. The thread is obviously that we accidently
> don't stop xvfb or OpenMeetings and eat to much ressources on the Apache
> Infrastructure.
> We want to create some reliable testing framework before we enable this.
>
> Thanks,
> Sebastian
>
> --
> Sebastian Wagner
> https://twitter.com/#!/dead_lock
> http://www.webbase-design.de
> http://www.wagner-sebastian.com
> seba.wagner@gmail.com
>



-- 
Sebastian Wagner
https://twitter.com/#!/dead_lock
http://www.webbase-design.de
http://www.wagner-sebastian.com
seba.wagner@gmail.com