我正在尝试使旅行应用程序自动化。我使用用户名登录,并尝试单击书本旅行。但是在我尝试点击旅行时显示以下错误。
失败:BookTravel org.openqa.selenium.NoSuchElementException:无法 查找元素: {“方法”:“ xpath”,“选择器”:“。//*[@id ='ctl00_mnuTraveln0'] / table / tbody / tr / td / a”}
屏幕截图
答案 0 :(得分:1)
我希望你知道C#, 该代码可能会对您有所帮助,
Driver.FindElement(By.XPath("*//a[text()='Book Travel']"));
在Java中,
driver.findElement(By.xpath("*//a[text()='Book Travel']"));
检查这可能有帮助,
driver.findElement(By.xpath("*//a[@href='TravelRequest.aspx?PID=1']"));
driver.findElement(By.xpath("*//a[contains(@class,'MenuItemStyle')]"));
driver.findElement(By.xpath("*//a[contains(@href,'TravelRequest')]"));
如果有框架,以上将不起作用, 您必须计算帧, 使用多少显示帧,
int size = driver.findElements(By.tagName("iframe")).size();
driver.switchTo().frame(size);
也可以使用webelement进行切换
driver.switchTo().frame(WebElement);
在父帧或默认帧之间切换
driver.switchTo().parentFrame();
driver.switchTo().defaultContent();