If the element's class is changed to 'not-here' and Watir is looking for 'here', then it won't find it and wait_while_present would exit.
This will exit immediately: my_element = browser.element(class: 'here') dynamically_change_class(my_element) my_element.wait_while_present These are effectively equivalent because it is ignoring cache: my_element.wait_while_present browser.element(class: 'here').wait_while(&:present) On Thursday, September 13, 2018 at 2:39:50 PM UTC-7, NaviHan wrote: > > Yes Titus, I got that. > > But for that fresh retry from scratch to work, the class of the element > has to go back to "here" from "not-here" isnt it? > > On Tuesday, 11 September 2018 14:52:33 UTC+10, NaviHan wrote: >> >> This is something that keeps me a bit sceptic when I write and read the >> automation code in my project. >> This used PageObjects. >> >> I have seen extensive use of element referces, for example >> >> button(:add_to_bag, :css => '#add-to-cart') >> add_to_bag.element.when_present.click >> >> >> >> instead of >> >> add_to_bag >> >> which directly clicks the element >> >> I have also seen extensive use of referencing elements using >> <element>.when_present, <element>.wait_until_present etc >> >> Im confused where we should draw the line when deciding to reference the >> element and actually using it(as in directly calling "add_o_bag" in the >> above example to click the element. >> >> Any thoughts? >> >> >> -- -- Before posting, please read https://github.com/watir/watir_meta/wiki/Guidelines-for-Posting-to-Watir-General-Google-Group. In short: search before you ask, be nice. [email protected] http://groups.google.com/group/watir-general [email protected] --- You received this message because you are subscribed to the Google Groups "Watir General" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
