[ 
http://jira.openqa.org/browse/WTR-166?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=19896#action_19896
 ] 

Jeff Fry commented on WTR-166:
------------------------------

Jarmo, in situations where what you're waiting for on each page is a different 
condition, that's the right choice...but there's another way to go, and that's 
what this was filed to handle.

If an application chooses to expose whether or not there's an XHR or timer 
running, as a testability feature, it's at least theoretically possible to just 
have Wait() Do The Right Thing. Doing this can make automation much simpler.

We've done this for Freebase.com. For an example, 
* go to http://www.sandbox-freebase.com/view/book/book
* open up firebug (FF) or Dev Tools (Chrome), and note the <body> tag
* start typing in one of the filter fields, e.g. type 'testing' into 'Filter by 
Name'
* note that there's now an 'ajax' attribute <body>. When an XHR or timer kicks 
off on the page, we set <body ajax='ajaxStart'>. When it completes, if this was 
the last ajax process running on the page, we set <body ajax='ajaxStop'>. This 
allows me to check for *one* condition, rather than guessing what are all the 
asych things that could be happening on the page.

Bret, if you've got a way to do this today, I think it's *absolutely* worth 
documenting it. I'm not using Watir for work currently, but would be happy to 
test the change on Freebase.


> Document how to use the add_checker method to add custom wait logic to Watir
> ----------------------------------------------------------------------------
>
>                 Key: WTR-166
>                 URL: http://jira.openqa.org/browse/WTR-166
>             Project: Watir
>          Issue Type: New Feature
>          Components: Wait
>    Affects Versions: 1.5.0/1.5.1
>         Environment: x
>            Reporter: Jeff Fry
>            Assignee: Bret Pettichord
>            Priority: Major
>             Fix For: Next
>
>
> Watir.wait() listens to whether IE thinks its done loading, and then checks 
> to see that the main document and any sub documents/frames have finished 
> loading. More and more, there are pages that on load also kick off various 
> XHRs and timers. For me - and possibly for a growing number of folks, testing 
> more AJAXy applications - it would be great to expand wait() to check if 
> there are any XHRs or timers pending, in additional to the checks it 
> currently makes. 
> Note, I don't know, but there may be applications where an XHR is 
> intentionally left open at all times. If this happens I would guess that it's 
> rare, but if we change the default behavior of watir.wait() to wait for 
> pending XHRs and timers, we might want to give a config option that turns 
> this off as well.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.openqa.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        
_______________________________________________
Wtr-development mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/wtr-development

Reply via email to