SendKey funktioniert nicht für Zahlen in Chrome (Java).

SendKey funktioniert nicht für Zahlen in Chrome (Java).

Ich verwende Windows 10 64 Bit mit einer Chrome-Version 75.0.3770.142 und dem neuesten Chrome-Treiber 75. Ich habe ein SendKey-Problem bei der Verwendung von Selenium auf Java. Ich habe vor Kurzem meinen Computer gewechselt und habe eine Regression bei der SendKey-Methode für numerische Werte für einige Felder (Typ: Dezimal) in einer Salesforce-Anwendung.

lstOfElements.get(0).sendKeys("120000");

Für diese Felder sendet der SendKey nichts. Ich habe einen Workaround mit Javascript verwendet:

WebElement t1 =  driver.findElements(By.xpath("//*[contains(@id,'input')]")).get(0);
t1.click();
JavascriptExecutor jse = (JavascriptExecutor)driver;
jse.executeScript("arguments[0].value='120000';", t1);

Ich kann den Wert senden, aber er wird nicht als korrekter Wert erkannt (der manuell eingegebene Wert funktioniert auf jeden Fall).

Ich habe also einen anderen Workaround verwendet,

t1.sendKeys(Keys.NUMPAD1);

Und es funktioniert. Aber ich möchte meinen Datensatz über eine externe Datei verwalten und möchte die Übersetzung zwischen der Zahl und dem NumPad-Befehl vermeiden.

Ich habe also denselben Anfangsbefehl (SendKey("120000");) auf FireFox mit Gecko WebDriver getestet und es funktioniert gut. Bei anderen Entwicklern mit anderer Konfiguration (Chrome 32 Bit auf Windows 10 64 Bit und demselben Treiber) funktioniert SendKey auch auf Chrome gut. Ich habe auch meine Konfiguration geändert, um es anzupassen, aber dasselbe Problem.

Weiß jemand, wie es zu diesem Sendkey-Problem kommt? Kann er es mir bitte erklären? Vielleicht gibt es ein Kompatibilitätsproblem mit Chrome, denn als ich einen Roboter mit keyPress(KeyEvent.VK_1) getestet habe, funktionierte dieser nicht, da keyPress(KeyEvent.VK_NUMPAD1); funktioniert.

Danke für Ihre Hilfe. Ich hoffe, ich habe mich klar ausgedrückt.

verwandte Informationen