2011-11-07 119 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函数来检索页面上的输入元件的数量。