我开始使用 Selenium 进行自动化,这是我第一次独自完成,我无法在此处找到下拉列表的正确代码https://demoqa.com/automation-practice-form最后有一个“州和城市列表”.. 对于州,您必须单击“选择州”,然后它会为您提供选项,因此您必须单击所需的选项。
这是我的代码,我尝试了不同的选项,但这是最接近正确工作的代码(但它仍然没有做它需要做的事情)我知道它不能用 Select 来完成,因为它是一个div,我只能使用:
driver.findElement()
代码试验:
//Select state and city
driver.findElement(By.id("state")).click();
driver.findElement(By.xpath("//body/div/div/div/div/div/div/form/div[10]/div[2]/div[1]/div[1]/div[1]/div[1]")).click();
图片 A:在此处输入图片说明
图 B:
图片 C:在此处输入图片说明
该下拉菜单是一个非HTML的选择元素。要从State下拉列表中选择一个项目,您需要为 the引入WebDriverWaitelementToBeClickable()
并且您可以使用以下Locator Strategies:
driver.get("https://demoqa.com/automation-practice-form");
((JavascriptExecutor)driver).executeScript("return arguments[0].scrollIntoView(true);", new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.cssSelector("div#state div[class$='placeholder']"))));
new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.cssSelector("div#state div[class$='placeholder']"))).click();
new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.xpath("//*[contains(., 'Uttar Pradesh')]"))).click();
您可以在以下位置找到一些相关的详细讨论:
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句