Je souhaite sélectionner une valeur dans le menu déroulant. Mon code sélectionne uniquement la première valeur dans le menu déroulant et je souhaite que vous cliquiez sur toutes les valeurs dans les menus déroulants et que vous vérifiiez s'ils sont chargés manuellement avec l'adresse URL et l'onglet de titre corrects. Je ne vois aucune erreur, et me montre que le test a réussi le test mais n'a pas fait ce que je voulais. J'utilise PageObject et PageFactory. S'il vous plaît aider.Utilisation de Selenium (Java), comment sélectionner une valeur dans le menu déroulant
Ceci est mon code pour la première valeur dans le menu déroulant:
public void clickOnAccessories(){
WebElement element=driver.findElement(By.xpath("//a[text()='Product Category']"));
String mouseOver = "var evObj = document.createEvent('MouseEvents');" +
"evObj.initMouseEvent(\"mouseover\",true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);" +
"arguments[0].dispatchEvent(evObj);";
((JavascriptExecutor)driver).executeScript(mouseOver, element);
waitForElementToBeDisplayed(driver.findElement(By.xpath("//*[text()='Accessories']")), 500);
Assert.assertTrue(driver.getCurrentUrl().equals("http://store.demoqa.com/products-page/product-category/accessories/"));
Assert.assertTrue(driver.getTitle().contains("Accessories"));
}
Ceci est mon code HTML:
<li id="menu-item-33" class="menu-item menu-item-type-taxonomy menu-item-object-wpsc_product_category menu-item-has-children menu-item-33 has_children">
<span class="before"> </span>
<a href="http://store.demoqa.com/products-page/product-category/">
<span></span>
Product Category
</a>
<ul class="sub-menu" style="display: none;">
<li id="menu-item-34" class="menu-item menu-item-type-taxonomy menu-item-object-wpsc_product_category menu-item-34">
<span class="before"> </span>
<a href="http://store.demoqa.com/products-page/product-category/accessories/" style="padding-left: 10px;">
<span></span>
Accessories
</a>
</li>
<li id="menu-item-35" class="menu-item menu-item-type-taxonomy menu-item-object-wpsc_product_category menu-item-35">
<span class="before"> </span>
<a href="http://store.demoqa.com/products-page/product-category/imacs/" style="padding-left: 10px;">
<span></span>
iMacs
</a>
</li>
Avez-vous une raison spécifique pour l'utilisation de clics de souris que des emplacements spécifiques? Je pense qu'il serait préférable d'utiliser d'autres méthodes de cliquer. –
Je n'ai pas de raison particulière, je ne sais pas comment écrire une autre méthode. Pouvez-vous m'aider? –
Pouvez-vous partager un extrait HTML du menu déroulant? Parce qu'il y a beaucoup de différents types de ceci. C'est important, donc quelqu'un ici peut faire une solution. –