如何在Robot Framework中使用AND条件?

时间:2017-10-31 13:20:13

标签: selenium robotframework

我的HTML内容如下:

<input type="radio" name="radioButton" value="on" id="radio1" tabindex="0">
<input type="radio" name="radioButton" value="on" id="radio2" tabindex="0">
<input type="radio" name="radioButton" value="on" id="radio3" tabindex="0">

参考: How to use OR condition for Keywords in Robot Framework?

我目前正在尝试上述链接中提到的逻辑。但这与我的方案并不相关。

我想使用它的类型,名称和ID或类来获取并选择单选按钮。

我想实现以下目标:

如果//输入[@ type =“radio”]和//输入[name =“radioButton”]和//输入[@ id =“radio2”]

2 个答案:

答案 0 :(得分:2)

您不需要if声明。只需将所有条件放在一个xpath中即可。例如:

select radio button  //input[@type='radio' and @name='radioButton' and @id='radio2']

但是,如果id是唯一的,那么你不需要所有这些。如果id是唯一的,您可以使用以下内容:

select radio button //input[@id='radio2']

答案 1 :(得分:0)

你可以做下一个

WebDriver driver = new FirefoxDriver(); //it can be any driver, not specifically firefox

WebElement radioButton = driver.findElement(By.xpath("//input[@type='radio' and @name='radioButton' and @id='radio2']");
radioButton.click();

上面的函数将查找元素并单击它。正如@Bryan所说,如果id是唯一的,你只能通过它的id来查找元素。

WebDriver driver = new FirefoxDriver(); //it can be any driver, not specifically firefox
WebElement radioButton = driver.findElement(By.id("@id='radio2']");
radioButton.click();