I'd personally be all for it. I am currently having the same problem you've described testing an AJAX heavy app, and I have a lot of waits of up to 50 iterations of 0.2 seconds sleep (max 10 seconds wait).
Something like you described would make my job a lot easier. Cheers, Alister Scott Brisbane, Australia Watir Wiki Master: http://watir.com Blog: http://watirmelon.com Google: http://www.google.com/profiles/alister.scott LinkedIn: http://www.linkedin.com/in/alisterscott On 17/10/2010, at 10:15 PM, Jarmo <[email protected]> wrote: > Hi! > > I have been thinking about making Watir wait automatically before > throwing Exceptions. I don't know how you are dealing currently with > the pages with Ajax/JavaScript usage, but i find myself quite often > using some wait_until or similar solution. It has happened quite often > that i create a test and it's ok, but then at some CI machine it fails > intermittently and i end up inserting some wait_until in between > assertions or anything else. > > The problem is that sometimes JavaScript is used to redirect/refresh > or change the DOM. All these things are not blocking #wait if i'm not > mistaken. If JavaScript redirect/refresh is used then there is a > possibility that there will be some random errors because Watir loads > the page and thinks everything is ready and doesn't block in #wait > anymore, but right then the redirect is issued and something might > break or might not break - depending of the timing. > > So, i was thinking - why not add some 5-10 seconds wait_until into > somewhere to not throw Exception right away if the object doesn't > exist? Or if the object isn't visible? So, if the test is failing then > it waits maximum of 5-10 seconds befor actually failing and if test is > ok, then it doesn't add any extra waiting time. And there's no need to > put all those wait_until's into every here and there. If there's some > longer Ajax call or anything then you can still use a wait_until in > your test with longer timeout. So it shouldn't break any backwards > compatibility either. > > What do you guys think? Is there any reason why not to implement > something like that? > > Jarmo > _______________________________________________ > Wtr-development mailing list > [email protected] > http://rubyforge.org/mailman/listinfo/wtr-development _______________________________________________ Wtr-development mailing list [email protected] http://rubyforge.org/mailman/listinfo/wtr-development
