Comment sélectionner le Sélecteur de Date Dans Selenium WebDriver
Actuellement en train de travailler sur Selenium WebDriver et à l'aide de Java. Je veux sélectionner des valeurs dans date range
à partir de la liste déroulante.. je veux savoir comment puis-je sélectionner les valeurs que Date, Month and year
dans le sélecteur de date déroulant.
Ici est la balise HTML:
<dd id="date-element">
<input id="fromDate" class="hasDatepicker" type="text" style="width:57px; padding:3px 1px; font-size:11px;" readonly="readonly" name="fromDate" value="01 Jan 2013">
<input id="toDate" class="hasDatepicker" type="text" style="width:57px; padding:3px 1px; font-size:11px;" readonly="readonly" name="toDate" value="31 Dec 2013">
Ci-dessous un exemple de code que j'ai essayé:
Log.info("Clicking on From daterange dropdown");
JavascriptExecutor executor8 = (JavascriptExecutor)driver;
executor8.executeScript("document.getElementById('fromDate').style.display='block';");
Select select8 = new Select(driver.findElement(By.id("fromDate")));
select8.selectByVisibleText("10 Jan 2013");
Thread.sleep(3000);
Log.info("Clicking on To daterange dropdown");
JavascriptExecutor executor10 = (JavascriptExecutor)driver;
executor10.executeScript("document.getElementById('toDate').style.display='block';");
Select select10 = new Select(driver.findElement(By.id("toDate")));
select10.selectByVisibleText("31 Dec 2013");
Thread.sleep(3000);
ce que vous avez essayé?
Les Dates ne sont pas
Regarde ma réponse.
Vérifiez cet exemple - testautomationguru.com/...
Les Dates ne sont pas
Select
éléments. Ils sont en effet tablesRegarde ma réponse.
Vérifiez cet exemple - testautomationguru.com/...
OriginalL'auteur Amirdha | 2014-01-29
Vous devez vous connecter pour publier un commentaire.
DatePicker ne sont pas
Select
élément. Ce que vous faites dans votre code n'est pas correct.Datepicker sont, en fait, table avec jeu de lignes et de colonnes.Pour sélectionner une date, vous avez juste à naviguer jusqu'à la cellule où notre date souhaitée est présent.
De sorte que votre code devrait ressembler à ceci:
N'est-il pas nécessaire de jeter comme suit @la Fourmi? Liste<WebElement> colonnes = (List<WebElement>) dateWidget.findElements(Par.tagName("td"));
Pourquoi les jeter ?
OriginalL'auteur Ant's
Vous ne pouvez pas essayer, voir si cela fonctionne pour vous.
Plutôt que de choisir la date à partir de sélecteur de date, vous pouvez activer la case de la date à l'aide de javascript & entrez la date souhaitée, cela permettrait d'éviter trop de temps requis pour parcourir dans tous les éléments jusqu'à ce que vous atteignez un vous avez besoin de sélectionner.
Code pour
à partir de la date
Code pour
à jour
OriginalL'auteur Shoaib Shaikh
Je pense que cela pourrait être fait de façon beaucoup plus simple:
Donc le code devrait ressembler à quelque chose comme ceci:
Cela ne fonctionnera pas si le sélecteur de date des listes déroulantes ne sont pas de sélection, mais la plupart de ceux que j'ai vu sont des éléments individuels (select, liens, etc...)
OriginalL'auteur zmorris
Vous pouvez directement utiliser javascript suivant
OriginalL'auteur MilanYadav
essayer de SendKeys au lieu de sélectionner la date
Si cela ne fonctionne pas, essayez d'envoyer native "de l'onglet'
OriginalL'auteur pw1
OriginalL'auteur Shasak Singh Sengar
Ne pas injecter du code javascript. C'est une mauvaise pratique.
Je modèle le DatePicker un élément comme zone de texte /sélectionner comme indiqué ci-dessous.
Pour la réponse détaillée - vérifier ici- http://www.testautomationguru.com/selenium-webdriver-automating-custom-controls-datepicker/
OriginalL'auteur vins