2017-05-26 75 views
0

我一直在嘗試使用Selenium sendkeys(),但未成功使用Chrome。我在這裏研究了類似的問題,似乎沒有成功。我可以產生網址,調用按鈕(單擊()),但當我嘗試在特定文本字段中輸入值時,我會得到:線程「main」中的異常org.openqa.selenium.WebDriverException:未知錯誤:無法集中元素

「線程中的異常」main「org.openqa.selenium.WebDriverException:unknown error :不能集中元素。「

希望有任何幫助。謝謝!

下面是一個代碼片段:

WebElement titleBox = driver.findElement(By.xpath("//*[@id='root']/div/div[2]/div/div/div[2]/div[1]")); 
titleBox.click(); 
titleBox.sendKeys("Test Survey Title"); 

這裏的堆棧跟蹤:

開始ChromeDriver 2.29.461585(0be2cd95f834e9ee7c46bcc7cf405b483f5ae83b)端口43615 只有本地連接被允許。 2017年5月26日下午三時42分50秒org.openqa.selenium.remote.ProtocolHandshake了createSession 信息:檢測到的話:OSS 異常線程「main」 org.openqa.selenium.WebDriverException:未知錯誤:無法對焦元素 (會話信息:chrome = 58.0.3029.110) (驅動程序信息:chromedriver = 2.29.461585(0be2cd95f834e9ee7c46bcc7cf405b483f5ae83b),platform = Mac OS X 10.12.5 x86_64)(警告:服務器沒有提供任何堆棧跟蹤信息) 命令持續時間或超時:43毫秒 構建信息:版本:'3.4.0',修訂:'未知',時間:'未知' 系統信息:主機:'Enriques-MacBook-Pro.local',ip:'10.0.0.208' ,os.name:'Mac OS X',os.arch:'x86_64',os.version:'10 .12.5'​​,java.version:'1.8.0_131' 驅動程序信息:用戶數據目錄=/var/folders/55/jxcw642x4593njd3nnysck_80000gn/T/.org.chromium.Chromium.4miVBB},takesHeapSnapshot = true,pageLoadStrategy = normal,databaseEnabled = false,handlesAlerts = true,hasTouchScreen = false,version = 58.0.3029.110,platform = MAC,browserConnectionEnabled = false,nativeEvents =真,acceptSslCerts =真,locationContextEnabled =真,webStorageEnabled =真,browserName =鉻,takesScreenshot =真,javascriptEnabled =真,cssSelectorsEnabled =真,unexpectedAlertBehaviour =}] 會話ID:c0d55118bf095a12cb6e105b581b149e 在sun.reflect.NativeConstructorAccessorImpl.newInstance0(母語方法) at sun.reflec t.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) 在sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 在java.lang.reflect.Constructor.newInstance(Constructor.java:423) 在有機openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:215) 在org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:167) 在org.openqa.selenium.remote.RemoteWebDriver.execute( RemoteWebDriver.java:671) 在org.openqa.selenium.remote.RemoteWebElement.execute(RemoteWebElement.java:272) 在org.openqa.selenium.remote.RemoteWebElement.sendKeys(RemoteWebElement.java:96) 在LaunchChrome。主(LaunchChrome。Java的:36)

+1

的[越來越鉻不能集中元件和使用Java的邊緣可能的複製/硒](https://stackoverflow.com/questions/34537344/getting-cannot-focus-element-in-chrome-and-edge-using-java-selenium) –

回答

0

可以使用動作類具有焦點的元素上,然後才能與它進行交互嘗試下面的代碼:

WebElement titleBox = driver.findElement(By.xpath("//*@id='root']/div/div[2]/div/div/div[2]/div[1]")); 

Actions action = new Actions(driver); 
action.moveToElement(titleBox).build().perform(); 
titleBox.click(); 
titleBox.sendKeys("Test Survey Title"); 
+0

我已經看到,在差異的職位,因爲我回顧了這一點問題。不幸的是,這並不適合我。我似乎無法超越'無法聚焦元素'問題。 – rickman

+0

moveToElement(titleBox)應該可以工作 – kushal

+0

也許它應該但它不適合我。 Selenium有點沮喪,首先我遇到了類似的問題,當我能夠讓頁面按照我想要的做,但無法使'sendkeys'或'type'輸入一個值,所以我決定給webdriver使用chrome拍攝...在這裏,我是。無論如何,人們感謝您的寶貴意見。和平。 – rickman

相關問題