嘗試在iFrame中查找單選按鈕,但出現(xiàn)錯(cuò)誤,因?yàn)檎也坏酱祟愒?。已嘗試切換到iFrame,但仍收到相同的錯(cuò)誤。不知道我錯(cuò)過了什么。嘗試了幾種方法,但沒有通過。不確定我的Xpath是否錯(cuò)誤,或者我使用id來定位元素的方式是錯(cuò)誤的。[在開發(fā)人員工具中驗(yàn)證了我的Xpath,但仍然收到相同的錯(cuò)誤,即找不到suh元素]提前感謝您。public class Sap_Demo { WebDriver driver; JavascriptExecutor jse; public static void main(String[] args) { Sap_Demo demoObj = new Sap_Demo(); demoObj.invokeBrowser(); demoObj.initializeSAPFiory(); demoObj.forecastMD61(); } public void invokeBrowser() { System.setProperty("webdriver.chrome.driver", "U:\\Research Paper\\Selenium\\Drivers\\Chrome\\chromedriver_win32\\chromedriver.exe"); driver = new ChromeDriver(); driver.manage().deleteAllCookies(); driver.manage().window().maximize(); driver.manage().timeouts().implicitlyWait(40, TimeUnit.SECONDS); driver.manage().timeouts().pageLoadTimeout(40, TimeUnit.SECONDS); } public void initializeSAPFiory() { try { Thread.sleep(1200); driver.get("https://dijon.cob.csuchico.edu:8042/erp"); driver.findElement(By.id("USERNAME_FIELD-inner")).sendKeys("H4"); Thread.sleep(1200); driver.findElement(By.id("PASSWORD_FIELD-inner")).sendKeys("Onsjhjsa1087"); Thread.sleep(1200); driver.findElement(By.id("CLIENT_FIELD-inner")).clear(); Thread.sleep(1200); driver.findElement(By.id("CLIENT_FIELD-inner")).sendKeys("485"); Thread.sleep(1200); driver.findElement(By.xpath("//span[@class='sapMBtnContent sapMLabelBold sapUiSraDisplayBeforeLogin']")).click(); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } }}
1 回答

繁星淼淼
TA貢獻(xiàn)1775條經(jīng)驗(yàn) 獲得超11個(gè)贊
元素的第一個(gè) xpath 和 iframe 的 id 是正確的,但是當(dāng)窗口在新選項(xiàng)卡中打開時(shí),
您需要將驅(qū)動(dòng)程序切換到新選項(xiàng)卡。driver.switchTo().defaultContent();
ArrayList<String> tabs = new ArrayList<String> (driver.getWindowHandles()); driver.switchTo().window(tabs.get(1));
如果要切換到原始選項(xiàng)卡,則需要使用:
driver.switchTo().window(tabs.get(0));
添加回答
舉報(bào)
0/150
提交
取消