我正在尝试在以下网站上尝试自动化测试-http://www.arzoo.com当我们搜索航班时,我无法单击特定航班上的选择。我使用XPath,但是如果元素在页面的底部或中间,则不会获得该元素,因此我需要使用:
JavascriptExecutor jsx2 = (JavascriptExecutor)driver;
jsx2.executeScript("window.scrollBy(0,750)", "");
driver.findElements(By.xpath("//a[text()='Select']")).get(15).click();
,但我不想使用滚动来定位。不同的屏幕需要不同的尺寸。
我计划使用CSS部门,但仍然没有成功。
尝试以下XPath:
driver.findElement(By.xpath("//a[contains(@class, 'btn-primary')]")).click();
如果不是,请尝试
driver.findElement(By.xpath("//li[contains(@id, 'result_0')]/div/div/div/div[2]/a")).click();
请参阅以下参考:
使用XPATH
获取节点的n个孩子x path在页面上每次加载时更改
在executescript()
中包装以下代码let allSelectButtons = document.querySelectorAll(".booking-item-flight-details .booking-item-arrival a");
for(i=0;i<allSelectButtons.length;i++) {
allSelectButtons[i].click();
}