2011-11-07 76 views
0

我試圖做一個測試與硒,以驗證在頁面上輸入的準確數量(和姓名)。我需要的測試涉及到的元素的XPATH(CSS的ID),而不是標籤。我試着verifyAllFields()和正則表達式,但它不工作。 任何人都可以提供一些想法? 謝謝。硒檢測輸入

回答

1

我不知道你正在使用(爪哇,紅寶石,C#),但這裏是什麼味道硒是一個C#示例:

private List<IWebElement> getAllFields(IWebDriver driver) 
{ 
    List<IWebElement> fields = driver.FindElements(By.XPath("//input[@type='text'])).ToList(); 
    fields.AddRange(driver.FindElements(By.XPath("//input[@type='password']")).ToList()); 
    fields.AddRange(driver.FindElements(By.XPath("//textarea")).ToList()); 

    return fields; 
} 

我知道你想要的號碼,但原因返回的列表IWebElements是因爲你說過你想要這些元素的名稱和數量。所以,如果你有對象,然後你有文字,名稱,數量,等等。

也有一個需要注意這一點。當你發現它的元素會發現兩者顯示和不顯示元素,因此它可能給你一個無效的計數,但有會解決這個取決於,如果你想只顯示輸入一個簡單的LINQ。

fields.RemoveAll(i => !i.Displayed) 

這種說法正確的有將刪除不顯示

0

檢索要算input元素的CSS標識所有輸入字段。您可以使用this函數來檢索頁面上的輸入元件的數量。