我正在尝试使用selenium Webdriver访问png图像中的标签:
div id="navbar6ClickDiv"
a onclick="return hdlClick('navbar6ClickDiv', 'navbar')" target="workspace" href="/setup.htm"
img width="90" height="23" border="0" src="/xyz.png"
我尝试了以下方法来访问该标签,但没有任何效果:
第一
WebElement div = driver.findElement(By.id("navbar6ClickDiv"));
div.click();
第二
WebElement div = driver.findElement(By.tagName("img").name("/images/banner/setupt.png"));
div.click();
第三
WebElement div = driver.findElement(By.xpath("//img[contains(@src,'/images/banner/setupt.png')]"));
div.click();
答案 0 :(得分:2)
当使用WebDriver测试DHTML / AJAX页面时,很常见的是WebDriver太快而无法通过互联网延迟和浏览器javascript来呈现页面。
该元素可能不存在尚未。在Java中,WebDriver WaitUntil习惯用于通过等待显示容器(例如div)来避免这种情况。
答案 1 :(得分:0)
第1步:
导出图像的完整CSS选择器。
css=a[onclick*='navbar6ClickDiv'] > img[src*='xyz.png']
第2步:
单击图像
driver.findElement(
By.cssSelector("a[onclick*='navbar6ClickDiv'] > img[src*='xyz.png']")
).click();