Selenium:如何通过ng-model获取<select>元素为List<Select>
解决方法:用NgWebDriver获取List
Selenium的
用流的方式(简洁高效):
Selenium的
Select类需要接收一个WebElement(必须是<select>标签)来初始化,你可以用Java流或者普通循环来完成转换:用流的方式(简洁高效):
import org.openqa.selenium.support.ui.Select; import java.util.stream.Collectors; List<Select> selectList = selectWebElements.stream() .map(Select::new) .collect(Collectors.toList());
或者用普通for循环(更直观,适合新手):
import org.openqa.selenium.support.ui.Select; import java.util.ArrayList; import java.util.List; List<Select> selectList = new ArrayList<>(); for (WebElement element : selectWebElements) { selectList.add(new Select(element)); }
这样处理后,selectList的长度就会是2,完全符合你的要求。需要注意的是,要确保所有定位到的WebElement确实是<select>标签,否则创建Select对象时会抛出UnexpectedTagNameException异常哦。
内容的提问来源于stack exchange,提问作者k_rollo
相关产品推荐
相关产品推荐

