嘗試在表元素(單元格)中發送數據。已驗證 ID、X 路徑、選擇器,并且沒有錯誤。甚至,將超時放置到頁面加載。甚至已驗證 iFrame(已切換到當前 iFrame)。每次都不會彈出此類元素錯誤。不確定頁面加載后是否需要再次切換到 iFrame?我嘗試了所有可能的方法,但沒有通過。我真的很感激任何建議或新的思考方向。提前感謝您。運行我的腳本,以便更好地了解其失敗的位置。public class SapDijon { WebDriver driver; JavascriptExecutor jse; public static void main(String[] args) throws Exception { SapDijon sapObj = new SapDijon(); sapObj.invokeBrowser(); sapObj.initializeSapDijon(); sapObj.ForecastME59(); }//End of Main 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 initializeSapDijon() throws Exception { Thread.sleep(1200); driver.get("http://dijon.cob.csuchico.edu:8041/sap/bc/gui/sap/its/webgui/?"); driver.findElement(By.id("sap-user")).sendKeys("H5"); Thread.sleep(1200); driver.findElement(By.id("sap-password")).sendKeys("Onsjhjsa1087"); Thread.sleep(1200); driver.findElement(By.id("sap-client")).clear(); Thread.sleep(1200); driver.findElement(By.id("sap-client")).sendKeys("485"); Thread.sleep(1200); driver.findElement(By.id("LOGON_BUTTON")).click(); }
2 回答

慕標琳琳
TA貢獻1830條經驗 獲得超9個贊
由于打開了新窗口,并且腳本無法找到該元素,因此問題仍然存在。解決方案是切換到新打開的窗口以查找元素定位器。
數組列表選項卡 = 新的數組列表 (driver.getWindowHandles());driver.switchTo().window(tabs.get(1));

桃花長相依
TA貢獻1860條經驗 獲得超8個贊
在 “ ”之后,從框架切換回默認內容,然后再次切換到可用的 iframe。action.doubleClick(md61).perform()
要移回父框架,您可以使用,或者如果要返回到主(或大多數父)框架,可以使用switchTo().parentFrame()
switchTo().defaultContent();
添加回答
舉報
0/150
提交
取消