这里的id可能是动态
我正在尝试从下拉列表中选择一个元素,但是在执行过程中出现此错误:
线程“ main”中的异常org.openqa.selenium.NoSuchElementException:没有这样的元素:无法找到元素:{“ method”:“ xpath”,“ selector”:“ // select [@ id ='id12']”}] >>
下拉列表的HTML代码为:
<select style="width:163px" name="department:department" id="id12"> <option selected="selected" value="">Escoge</option> <option value="100">100</option> <option value="999">999</option> <option value="800">800</option> <option value="700">700</option> <option value="600">600</option> <option value="540">540</option> <option value="500">500</option> <option value="400">400</option> <option value="345">345</option> <option value="280">280</option> <option value="270">270</option> <option value="264">264</option> <option value="262">262</option> <option value="251">251</option> <option value="201">201</option> <option value="82">82</option> <option value="81">81</option> <option value="50">50</option> <option value="21">21</option> <option value="19">19</option> <option value="001">001</option> </select>
我的Java代码是:
WebElement dropdownlist = driver.findElement(By.xpath("//select[@id='id12']"));
Select dropdown = new Select(dropdownlist);
dropdown.selectByVisibleText("100");
我也尝试过:
WebElement dropdownlist = driver.findElement(By.xpath("//select[@name='department']"));
Select dropdown = new Select(dropdownlist);
dropdown.selectByVisibleText("100");
WebElement dropdownlist = driver.findElement(By.cssSelector("select[id='id12']"));
您能帮我吗?
谢谢大家,祝您周末检疫愉快:-P
我正在尝试从下拉列表中选择一个元素,但是在执行过程中遇到此错误:线程“ main” org.openqa.selenium.NoSuchElementException异常:无此类元素:无法...
] >这里的id可能是动态
尝试下面的代码。
WebElement dropdownlist = driver.findElement(By.xpath("//select[@name='department:department']")); Select dropdown = new Select(dropdownlist); dropdown.selectByVisibleText("100");
要处理下拉列表,您必须使用
org.openqa.selenium.support.ui.Select
import,它将在WebDriver中将下拉框实例化为“选择”对象。另外,您尝试在其上执行操作的元素可能会花费一些时间,因此发生了异常。添加明确的等待并从头开始检查:::>WebElement element=driver.findElement(By.id("id12")); WebDriverWait wait = new WebDriverWait(driver,30); wait.until(ExpectedConditions.visibilityOfElementLocated(element)); Select dropdown = new Select(element); dropdown.selectByVisibleText("100");
这里的id可能是动态
要处理下拉列表,您必须使用org.openqa.selenium.support.ui.Select
import,它将在WebDriver中将下拉框实例化为“选择”对象。另外,您尝试在其上执行操作的元素可能会花费一些时间,因此发生了异常。添加明确的等待并从头开始检查:::>
WebElement element=driver.findElement(By.id("id12"));
WebDriverWait wait = new WebDriverWait(driver,30);
wait.until(ExpectedConditions.visibilityOfElementLocated(element));
Select dropdown = new Select(element);
dropdown.selectByVisibleText("100");