Res*_*smi -3 java selenium xpath
我需要找到一个包含特定文本的元素.如果不对文本进行硬编码,我该怎么做呢?如何将文本变为变量并将其传递给xpath
函数?
public static void selectEvent(String eventName) {
WebElement eventLink = Browser.instance.findElement(By.xpath("//td[2]/a[1][contains(text(), 'Birthday Party')]"));
eventLink.click();
}
Run Code Online (Sandbox Code Playgroud)
在这里,我不需要使用文本生日派对,而是需要使用已传递给方法的参数eventName.
如果您使用的是java,则声明一个返回特定元素的方法,
public WebElement getElementByXpathContainsText(String xpath)
{
return webDriver.findElement(By.ByXPath(xpath));
}
Run Code Online (Sandbox Code Playgroud)
只需通过传递任何xpath作为参数来调用getElementByXpathContainsText().
为您的代码尝试以下方式,
public static void selectEvent(String eventName) {
WebElement eventLink = Browser.instance.findElement(By.xpath("//td[2]/a[1][contains(text(), '"+eventName+"')]")); eventLink.click();
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
26475 次 |
最近记录: |