在HTML中使用#document标签构建xpath

时间:2018-08-19 17:41:04

标签: selenium-webdriver

如何从此网站构建Try it按钮的xpath: https://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_alert

driver.findElement(By.xpath("//div[@id='iframewrapper']/iframe/????")).click();

我也尝试过此xpath //body[@contenteditable='false']/button,我知道不建议这样做。在Chrome console中似乎可以,但是在Selenium中找不到,我也不知道为什么。

enter image description here

2 个答案:

答案 0 :(得分:4)

如果要使用WebDriverWait:

WebDriverWait wait = new WebDriverWait(driver, 20)  
wait.until(ExpectedConditions.frameToBeAvailableAndSwitchToIt(By.id("iframeResult")));  
wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//button[contains(text(),'Try it') and @onclick='myFunction()']"))).click();

答案 1 :(得分:1)

编写此代码,首先需要切换到“框架”,然后单击该按钮

driver.switchTo().frame("iframeResult")    
driver.findElement(xpath: "//button[text()='Try it']").click()