Hi devs,

Jerome and I have explored using Selenium2 (see 
http://xwiki.markmail.org/thread/cqbxdmhqdi36kovn)

The code is in 
http://svn.xwiki.org/svnroot/xwiki/contrib/sandbox/webdriver-ui-tests/

I'd like to propose to:

* Move the code in 
http://svn.xwiki.org/svnroot/xwiki/enterprise/trunk/distribution-test/ui-tests
* Agree that from now on *new* UI functional tests are written using Selenium2
* Slowly migrate current functional tests over time (I have almost finished 
migrating the login/logout tests for ex)
* Use the PageObject pattern as shown in the existing tests in 
http://svn.xwiki.org/svnroot/xwiki/enterprise/trunk/distribution-test/ui-tests

The pros to use selenium2 are those listed in 
http://xwiki.markmail.org/thread/cqbxdmhqdi36kovn:

* No more JS sandbox. In selenium1 all the selenium API is executed as JS in 
the browser. In Selenium2 the browsers are controlled using their native APIs 
(JNA). 
* Faster (as a consequence of the previous point) 
* Allows to do stuff such as file uploads, etc since there's no longer the 
issue of the JS sandbox
* No need to start a Selenium Proxy. All you need is to start XE and then you 
can run the tests as simple JUnit tests.
* The API is much cleaner (this is to be expected with hindsight). See 
http://seleniumhq.org/docs/09_webdriver.html
* There's a very fast executing HtmlUnit driver (not to be used with tests 
using JS though since it emulates browser JS support and thus cannot guarantee 
the result in the real browser)

Caveat:

* Selenium2 is still quite young so it's possible that there are cases when 
it'll have bugs or be instable. We should still allow using selenium1 tests 
when this happens.

Note: I have configured hudson to run the selenium2 tests from the sandbox to 
see how stable it is.

Here's my +1

Thanks
-Vincent

_______________________________________________
devs mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to