<input id="password" name="password" maxlength="500" size="18" autocomplete="off" type="password">
<input id="passcode" name="password" maxlength="6" size="18" autocomplete="off" type="text">
我想查找密码文本字段是否存在,然后输入“myPassword” 如果存在密码文本字段,则输入“myPassCode”,否则抛出异常。
if input id "password" exist then enter "mytext" otherwise
else if input id "passcode" exist then enter "myPassCode"
else throw exception (missing password,passcode text fields)
必须是一个更好的方法来做到这个???? (坏代码):(
try
{
driver.FindElement(By.Id("password")).SendKeys("myPassword");
}
catch (Exception ex)
{
try
{
driver.FindElement(By.Id("passcode")).SendKeys("myPassCode");
}
catch (Exception ex)
{
}
}
答案 0 :(得分:1)
使用List<IWebElement> passwordElements = driver.FindElements(By.Id("password"))
。如果passwordElements中包含的项目超过0个,则可以使用它。如果没有找到,您可以检查其他类型,然后适当地致电SendKeys
。