DOM 中两个不同元素的 Xpath OR 条件

Xpath OR condition for two different elements in the DOM

我有一个带有 maven build.in 步骤的 selenium jbehave 项目 class 我想为两种类型的 DOM elements.for 相同的元素添加一个 OR 条件我知道如何it.how 我可以为不同的元素做吗?

@Then("I click $Search Button")
public void clickSearchGoogleButton(String search) {
    driver.findElement(By.xpath("//input[@aria-label='"+search+"']")).click();
}

在上面的代码中我想要做的是我有一个带有 "aria-label" 的按钮元素 所以我想将它添加到相同的 xpath 条件下,或者 condition.i 已经在下面尝试过,但它给出了一个错误。

@Then("I click $Search Button")
public void clickSearchGoogleButton(String search) {
    driver.findElement(By.xpath("//input[@aria-label='"+search+"'] or //button[@aria-label='"+search+"']")).click();
}

任何帮助都会很棒。

您可以使用 | 而不是 or

By.xpath("//input[@aria-label='"+search+"'] | //button[@aria-label='"+search+"']")