Date d'entrée échoue sur chromewebdriver
J'ai rencontré un problème lors du changement de firefoxdriver à chromedriver avec le sélénium, ça marchait très bien dans FF, mais maintenant, quand j'essaie de supprimer une date d'entrée le terrain, j'ai cette erreur:
Caused by: org.openqa.selenium.InvalidElementStateException: Element must be user-editable
in order to clear it. (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 38 milliseconds
Build info: version: '2.31.0', revision: '1bd294d185a80fa4206dfeab80ba773c04ac33c0',
time: '2013-02-27 13:51:26'
System info: os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.8.2', java.version:
'1.6.0_41'
Session ID: cb5a1b7e5f4abc4f2e56e2fe284a9dc3
Driver info: org.openqa.selenium.chrome.ChromeDriver
Capabilities [{platform=MAC, chrome.chromedriverVersion=26.0.1383.0, acceptSslCerts=false,
javascriptEnabled=true, browserName=chrome, rotatable=false, locationContextEnabled=false,
version=25.0.1364.160, cssSelectorsEnabled=true, databaseEnabled=false,
handlesAlerts=true, browserConnectionEnabled=false, nativeEvents=true,
webStorageEnabled=true, applicationCacheEnabled=false, takesScreenshot=true}]
blah blah...
J'ai essayé d'ajouter l'attribut contenteditable de mon champs de saisie, mais pas de chance:
<input type="date" contenteditable="true" required="required" placeholder="YYYY-MM-dd" />
Je ne suis pas sûr si je devrais rapport ou rapport, mais j'ai trouvé ces problèmes dans des projets liés à la, un peu similaire:
https://github.com/jnicklas/capybara/issues/554
https://github.com/Behat/MinkSelenium2Driver/pull/29
Dans l'intervalle des suggestions pour contourner ce bug?
Ren
Apparemment, cela est dû à la chromedriver n'étant pas assez matures. J'espère que ce sera corrigé dans le futur.
OriginalL'auteur Renaud | 2013-03-12
Vous devez vous connecter pour publier un commentaire.
Comme une solution de contournement, vous pouvez sélectionner le webElement représentant le champ de saisie et d'effectuer une
webElement.SendKeys(Keys.Delete);
pour effacer le champ.
Je suis "Clés n'est pas défini". Est les "Clés" d'un espace réservé pour certains de la variable personnalisée je dois insérer ?
Espace de noms est
OpenQA.Selenium.Keys
OriginalL'auteur Robert
Parfois, vous pouvez modifier l'expression xpath, un peu et arriver au point que cela fonctionne:
Par exemple pour ce morceau de DOM:
<tr class="table-filters"><td><input type="text" value=""></td></tr>
si vous utilisez:
il ne fonctionnera pas, mais:
Œuvres.
OriginalL'auteur user3720447
OriginalL'auteur sanit
J'ai une solution à ce que j'ai utilisé dans mon ChromeDriver projet dans Eclipse. C'est aussi un travail autour de.
J'ai trouvé que, tout simplement, à l'aide de {webElement.Touches} seulement supprimé une partie du texte dans le champ de saisie. Donc, vous devez d'abord utiliser la touche flèche gauche pour sélectionner l'intégralité du texte à supprimer.
Le code suivant devrait fonctionner dans ChromeDriver. Il est en Java (à l'aide d'Eclipse):
OriginalL'auteur Rebecca