Selenium While Loop?

时间:2014-07-02 11:57:19

标签: javascript jquery html selenium-ide

 </head>
    <body>
    <table cellpadding="1" cellspacing="1" border="1">
    <thead>
    <tr><td rowspan="1" colspan="3">test</td></tr>
    </thead><tbody>
    <tr>
        <td>click</td>
        <td>//div[@id='wrapper']/div/div/div</td>
        <td></td>
    </tr>
    <tr>
        <td>waitForElementNotPresent</td>
        <td>//div[contains(@class,'ui-widget-overlay')]</td>
        <td></td>
    </tr>
    <tr>
        <td>click</td>
        <td>//div[@id='dataTableContent']/div/div/div[2]/table/tbody/tr[1]/td</td>
        <td>2</td>
    </tr>
    <tr>
        <td>waitForElementNotPresent</td>
        <td>//div[contains(@class,'ui-widget-overlay')]</td>
        <td></td>
    </tr>
    <tr>
        <td>click</td>
        <td>id=backButton</td>
        <td></td>
    </tr>
    <tr>
        <td>waitForElementNotPresent</td>
        <td>//div[contains(@class,'ui-widget-overlay')]</td>
        <td></td>
    </tr>
    <tr>
        <td>click</td>
        <td>//div[@id='dataTableContent']/div/div/div[2]/table/tbody/tr[2]/td</td>
        <td>2</td>
    </tr>
    <tr>
        <td>waitForElementNotPresent</td>
        <td>//div[contains(@class,'ui-widget-overlay')]</td>
        <td></td>
    </tr>
    <tr>
        <td>click</td>
        <td>id=backButton</td>
        <td></td>
    </tr>
    <tr>
        <td>waitForElementNotPresent</td>
        <td>//div[contains(@class,'ui-widget-overlay')]</td>
        <td></td>
    </tr>
    <tr>
        <td>click</td>
        <td>//div[@id='dataTableContent']/div/div/div[2]/table/tbody/tr[3]/td</td>
        <td>2</td>
    </tr>
    <tr>
        <td>waitForElementNotPresent</td>
        <td>//div[contains(@class,'ui-widget-overlay')]</td>
        <td></td>
    </tr>
    <tr>
        <td>click</td>
        <td>id=backButton</td>
        <td></td>
    </tr>
    <tr>
        <td>waitForElementNotPresent</td>
        <td>//div[contains(@class,'ui-widget-overlay')]</td>
        <td></td>
    </tr>
    <tr>
        <td>click</td>
        <td>//div[@id='dataTableContent']/div/div/div[2]/table/tbody/tr[4]/td</td>
        <td>2</td>
    </tr>
    <tr>
        <td>waitForElementNotPresent</td>
        <td>//div[contains(@class,'ui-widget-overlay')]</td>
        <td></td>
    </tr>
    <tr>
        <td>click</td>
        <td>id=backButton</td>
        <td></td>
    </tr>
    <tr>
        <td>waitForElementNotPresent</td>
        <td>//div[contains(@class,'ui-widget-overlay')]</td>
        <td></td>
    </tr>
    </tbody></table>
    </body>
    </html>

我想点击4个部分。 所有路径都相同,但不同于tablediv。

/ DIV / DIV / DIV [2] /表/ tbody的/ TR [1] / TD - &GT; 1至4

我该怎么做呢,那就是代码最小化, 我怎么能在这里使用while循环?

Selenium中的代码有18个命令..

由于

1 个答案:

答案 0 :(得分:0)

由于您使用的是Selenium IDE而不是WebDriver,因此您可以执行的唯一“while”循环是执行普通的旧javascript。

<tr>
  <td>store</td>
  <td>iterator</td>
  <td>1</td>
</tr>
<tr>
  <td>storeEval</td>
  <td>while (iterator <= 4) { browserBot.click("/div/div/div[2]/table/tbody/tr[1]/td[" + iterator + "]" }</td>
  <td></td>
</tr>

你当然需要使用它,这是伪代码,但会对如何使用IDE解决它提供一个相当不错的想法。