Hi Adam, this is the situation we have with our navigation bar for one of our web apps. Using Watir 1.4.1 I couldn't use the 'text' attribute for SPAN tags and none of the Spans had unique ID's. What I ended up doing was creating two methods to help us navigate the system.
The first one is called 'populate_navigation_bar' and the second is "navigate_bar()". In the first method, I iterate through all the Div and Span tags with the desired information and put them into a Hash array. The 'values' are the index numbers. Then when I want to navigate through the system, I call the navigate_bar() method and pass it the name I want and the method clicks the corresponding element using the index number. This gives me a certain amount of flexibility in my tests because I can now select random elements really easily for each test run, navigate to the 'top' of the list regardless of whatever it's called, and other cool things like that. In Watir 1.5.x, I can now use the 'text' attribute for Spans, but I decided to keep navigating the system the same way because I have greater control this way. That's how I deal with the problem anyway. Maybe this might work for you? Good luck! Cheers. Paul C. On 16/03/07, Adam Reed wrote:
This brings up an interesting issue that came up yesterday. We have a new front-end designer on staff who was creating some mockups for a new project. I was getting familiar with his code and using watir to navigate around, and noticed that of the ~90 divs on the page, only 5-6 have unique (or any) id tags. These unnamed divs make up the primary navigation system for the site. There are no images, buttons or tables on the page. So of course, not thinking much into it - I ask if it would be possible for him add unique id tags to the major navigational elements (50% of the divs are not important to anything other than design). He replied, saying that adding unique ids to all elements would wreak havoc with style sheets, since all of these unnamed divs share the same style information. Also, for Search Engine Optimization (SEO), he needs to keep as much unnecessary text off the page as possible (although this point is debatable). In this case, where do we go from here? I completely understand his point, but at the same time I would be prevented from automating the majority of the tests on the new site. Of course we don't rely 100% on automation (probably less than 50%), but 100% manual testing requires quite more time, and produces many fewer test results. I'd be interested to hear solutions, or just comments on the issue - I know it has to be fairly common. -- Adam
_______________________________________________ Wtr-general mailing list Wtr-general@rubyforge.org http://rubyforge.org/mailman/listinfo/wtr-general