<div dir="ltr"><div><div><div>hi Jamie,<br><br></div>Thank you, that works, indeed. But I don&#39;t understand where you&#39;ve got &#39;People dialog&#39; from.<br><br></div>It wasn&#39;t obvious to me that there are iframes (and it&#39;s still not clear to me).  I wonder how to detect that as a user. I&#39;ve used Firebug &gt; Net tab (whether with filter HTML+XHR, or showing any HTTP requests) and I cleared Firefox cache.  I navigate from dashboard to &#39;People&#39; tab. All HTML contents that I get is for:<br>

<br><a href="http://localhost/drupal7/">http://localhost/drupal7/</a><br><a href="http://localhost/drupal7/?q=admin%2Fpeople&amp;render=overlay">http://localhost/drupal7/?q=admin%2Fpeople&amp;render=overlay</a><br><br></div>

<div>When I search for &#39;People dialog&#39;, it&#39;s not in either of them. So how do I go about identifying what comes through iframes, please? That&#39;s why I&#39;ve asked about tab behaviour in my initial question.<br>

</div><div><div><div><div><div class="gmail_extra"><br clear="all"><div>-Peter Kehl<br></div><br><div class="gmail_quote">On 28 January 2014 11:17, Jamie Holly  wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">


  
    
  
  <div text="#000000" bgcolor="#FFFFFF">
    <div>Peter,<br>
      <br>
      Did you read the link I sent? I ask because I&#39;ve never used
      Seleneum before, but this part really caught my eye:<br>
      <blockquote>In AJAX driven web applications, data is retrieved
        from server without refreshing the page. Using andWait commands
        will not work as the page is not actually refreshed. Pausing the
        test execution for a certain period of time is also not a good
        approach as web element might appear later or earlier than the
        stipulated period depending on the system’s responsiveness, load
        or other uncontrolled factors of the moment, leading to test
        failures. <b>The best approach would be to wait for the needed
          element in a dynamic period and then continue the execution as
          soon as the element is found.</b><b><br>
        </b><b><br>
        </b><b>This is done using waitFor commands, as
          waitForElementPresent or waitForVisible, which wait
          dynamically, checking for the desired condition every second
          and continuing to the next command in the script as soon as
          the condition is met.</b><br>
      </blockquote>
      The overlays load iFrames, which can always be cumbersome to work
      with, but that last paragraph was the key. I went ahead and
      installed Selenium and came up with this real quick:<br>
      <br>
      open | (url)<br>
      click | id=toolbar-link-admin-people<br>
      waitForElementPresent | xpath=//iframe[contains(@title, &#39;People
      dialog&#39;)]<br>
      selectFrame | xpath=//iframe[contains(@title, &#39;People dialog&#39;)]<br>
      click | xpath=//ul[contains(@class, &#39;action-links&#39;)]/li/a<br>
      <br>
      Like wise if you want to click the Permissions tab, change the
      last click to :<br>
      <br>
      xpath=//ul[contains(@id, &#39;overlay-tabs&#39;)]/li[last()]/a<br>
      <br>
      Considering every element doesn&#39;t have an ID, I decided to use
      xpath, as I know that.<br>
      <br>
      Tested in FF 26 with Selenium IDE 2.5.0 on local D7 site as well
      as a hosted one.<span class=""><font color="#888888"><br>
      <pre cols="72">Jamie Holly<a href="http://hollyit.net" target="_blank"></a><br></pre></font></span></div></div></blockquote></div></div></div></div></div></div></div>