Java로 Selenium Webdriver를 사용하는데 문제가 있음을 발견했습니다. 텍스트 필드에 텍스트를 보내려고하면 처음 두 문자 만 보내 게됩니다. JavaScriptExecutor로 설정하려고했지만 같은 일이 발생했습니다. ChromeDriver가 실행 중이고 정상적으로 작동합니다. 아래 코드 :Selenium Webdriver - sendKeys()가 모든 키를 보내지 않음 - Java
public void sendNumberToChrome (int number){
textfield.clear(); // textfield is already set, it's classic input field with max. 10 characters
System.out.println(String.valueOf(number)); // This prints for example 94
textfield.sendKeys(String.valueOf(number)); // But only "9" appears in the browser
}
는 또한 문자로 그에게 문자를 보내려고 :
String[] arr = String.valueOf(number).split("(?<!^)"); // splits number character by character
for (String s : arr){
System.out.println(s); // Prints 9 and then 4
textfield.sendKeys(s); // Also only 9 appears
Thread.sleep(100); // Maybe browser can not work too fast, so I will wait before sending next character
}
JavascriptExecutor도 (왜 몰라) 하나 개의 문자와 몇 분마다 충돌을 보내, 그래서 나는 아니다 그것을 사용합니다. 그러나 흥미로운 무엇 -이 수행 할 때
textfield.sendKeys(String.valueOf(94));
그것은 크롬에 (94)를 보냅니다! 문제가 어디 있는지 모르겠지만 누군가 나를 도울 수 있습니까?
편집 : 크롬 버전 : 29.0.1547.76 m, 셀레늄 서버 독립 2.35.0, Chromedriver 방법론 페이지
Chrome/ChromeDriver/Selenium의 버전은 무엇입니까? 다른 브라우저와 다른 점은 무엇입니까? – Arran
모두 괜찮아요, 내가 정확히 무엇을 보내고 싶은지 입력하면 보내 게됩니다. 그러나 변수를 보내는 것을 거부합니다. 때때로 두 문자를 모두 보냅니다. – Manderius