首页 > 解决方案 > 选择方法解释

问题描述

我是 Java 和 Selenium 的新手,并尝试学习问题是,我不知道如何使用 Select 类从下拉菜单中提取名称

我已经创建了一个具有预期结果的变量数组字符串
我已经为 Select Class 创建了一个新对象并传递了 xpath
我已经创建了一个列表来存储下拉列表中的所有选项
然后我有一个 For 循环来迭代中的所有项目循环并取名字
但我没有提取名字的方法。
问题是我们如何做到这一点?使用选择。

在此先感谢您的帮助

练习网站就是这个:http: //qaclickacademy.com/practice.php

HTML 代码:

<select id="dropdown-class-example" name="dropdown-class-example" wtx-context="4CBF2E98-EC2A-4384-8B92-4FB100C9F504" style="" xpath="1">
    <option value="">Select</option>
    <option value="option1" style="">Option1</option>
    <option value="option2">Option2</option>
    <option value="option3">Option3</option>
</select>

我的代码:

String expectedDropDownItems [] = {"Select","option1","option2","option3"};
Select dropDownSelect = new Select(driver.findElement(By.id("dropdown-class-example")));
List<WebElement> dropDownActualValues = dropDownSelect.getOptions();
int counter = dropDownActualValues.size();
for (int i=0; i < counter; i++){

}

预期和实际是这样的:

Selection 1 is : Select  
Selection 2 is : option1  
Selection 3 is : option2  
Selection 4 is : option3  

标签: javaselenium

解决方案


您可以从这里的下拉元素列表中获得所有选项,您非常接近您想要的。WebElement 接口中的每个 Web 元素都有方法getText()

在你的 for 循环中,它看起来像:

for (int i=0; i<counter; i++){
            System.out.println("Selection " + i + " is : "  + dropDownActualValues.get(i).getText());
   }

输出
选择 0 是:选择
选择 1 是:选项 1
选择 2 是:选项 2
选择 3 是:选项 3


推荐阅读