Selenium - Xpath 定位具有不同 ID 的元素
Selenium - Xpath locate elements with different IDs
我试图定位有时可能具有不同 ID 的元素。
这是示例:
id = 'greenbay_packers"
id = "Sf_49ers"
现在,有没有办法在 find_element 方法中进行某种或运算?这样我就可以使用相同的元素定位器进行测试步骤?
此外,如果这不可能,是否有一种方法可以编写故障安全例程,尝试使用 find_element(:id,'greenbay_packaers"
) 进行定位,但如果失败,请尝试 find_element(: id,'sf_49ers
")。并且仅当未找到以上 2 个时,测试才会失败。
谢谢
有可能 or
//*[(@id='test1') or (@id='test2')]
对于第二部分,
我建议您尝试 try..catch..finally
,因为您只有两个条件可以匹配
try
{
Driver.FindElement(By.Id("ID1"));
}
catch (NoSuchElementException ex)
{
Driver.FindElement(By.Id("ID1"));
}
finally
{
Console.WriteLine("Failed");
}
用C#编写
我试图定位有时可能具有不同 ID 的元素。 这是示例:
id = 'greenbay_packers"
id = "Sf_49ers"
现在,有没有办法在 find_element 方法中进行某种或运算?这样我就可以使用相同的元素定位器进行测试步骤?
此外,如果这不可能,是否有一种方法可以编写故障安全例程,尝试使用 find_element(:id,'greenbay_packaers"
) 进行定位,但如果失败,请尝试 find_element(: id,'sf_49ers
")。并且仅当未找到以上 2 个时,测试才会失败。
谢谢
有可能 or
//*[(@id='test1') or (@id='test2')]
对于第二部分,
我建议您尝试 try..catch..finally
,因为您只有两个条件可以匹配
try
{
Driver.FindElement(By.Id("ID1"));
}
catch (NoSuchElementException ex)
{
Driver.FindElement(By.Id("ID1"));
}
finally
{
Console.WriteLine("Failed");
}
用C#编写