On 05/21/2010 12:32 PM, Jerome Velociter wrote: > > ----- "Denis Gervalle"<[email protected]> wrote: > >> On Thu, May 20, 2010 at 19:23, Vincent Massol<[email protected]> >> wrote: >> >>> >>> On May 20, 2010, at 7:15 PM, dgervalle (SVN) wrote: >>> >>>> Author: dgervalle >>>> Date: 2010-05-20 19:15:53 +0200 (Thu, 20 May 2010) >>>> New Revision: 28950 >>>> >>>> Modified: >>>> >>> >> platform/web/branches/xwiki-web-2.3/standard/src/main/webapp/resources/js/xwiki/table/livetable.js >>>> Log: >>>> XWIKI-5212 - Livetable filter serialization does not properly >> support >>> multi-valued form elements >>>> Merge from trunk r28947 >>> >>> Do we have a test for this? How do we unit-test UI components? >>> >> >> This would be nice to have. Building proper tests is not so easy, this >> could >> be very long to setup, since you need to test in several browsers and >> you >> need full AJAX interaction. > > That's basically what we do with Selenium, except that we test the > integration of the features in the wiki, not the atomic behaviors of the > components. > > There isn't really an alternative to launching a browser for testing our JS > components, since most if not all of them heavily rely on a DOM, so just a JS > runtime will not be enough. > > We could envisage a JS unit-testing system like this : > > - Write tests in .js files, using JSUnit or any other unit testing JS > framework (http://ejohn.org/blog/which-unit-testing-framework/) > - Slurp the tests in a XAR using a maven plugin > - Execute the tests inside XE, using Selenium > > wdyt ?
Another alternative I investigated was to use JSUnit with an injected DOM, from a HTML file placed in src/test/resources. I had a PoC with this at one point, and it was working fine. I'll try to find it. > Jerome. > >> I am not used to such automated testing, >> but I >> am not sure the investment is worse the improvement we could get from >> them. >> >> On the other side, I use livetables JS heavily, so you could be >> assured that >> my fixes/improvements are either well tested or will be fixed ASAP >> since all >> changes I introduce is already in production. We also usually test >> them on >> all supported browsers, and at least on IE6/7/8, FF3 (Win/Mac), >> Safari4 >> (Mac) and Chrome (Mac) >> FYI, I found this one when we have introduced the usage of hashes to >> provide >> "Back to the list" links. I will soon commit an improvement supporting >> the >> page size in hash as well, so you can really get very precise "back to >> the >> list" return links. >> >> Denis >> >> Thanks >>> -Vincent >>> -- Sergiu Dumitriu http://purl.org/net/sergiu/ _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs

