小编Joh*_*ith的帖子

Selenium从下拉列表中选择多个选项

我必须从下拉列表中选择多个值[隐藏一些值,直到我向下滚动].我可以选择多个选项,但我认为必须有更好的方法从下拉列表中选择多个值.

  1. 我正在使用参数化来传递值,我想选择.
  2. 如果下拉列表是多个,我将通过循环查找所有选项,直到找到参数化值.
  3. 我在我的测试用例中调用了这个方法
  4. test.selectMulti("富");
  5. test.selectMulti("福兹");
  6. 我可以选择这两个选项,但我不认为这是最优化的方式.

有没有人知道更好的方法来传递参数化的多个值部分并选择一次选项.请记住,有些时候我可能需要选择一个选项,有时候选择两个选项.

public void selectMulti (String list) {

    WebElement list = driver.findElement(By.id("abc"));
    Select select = new Select(list);

    if (select.isMultiple()) {

        try {
            List<WebElement> optionLists = select.getOptions();
            listFound = false;
            for (int i = 0; i < optionLists.size(); i++) {
                String text = optionLists.get(i).getText();
                if (text.equals(list)) {
                    optionLists.get(i).click();
                    listFound = true; break;
        }
            } if (listFound) {
    Log.pass();
            } else {
    Log.failed();
            }
        }  catch (StaleElementReferenceException e) {
            e.printStackTrace();
        }   

    } else {
    Log.failed();
    } …
Run Code Online (Sandbox Code Playgroud)

java arrays selenium select selenium-webdriver

3
推荐指数
1
解决办法
1988
查看次数

标签 统计

arrays ×1

java ×1

select ×1

selenium ×1

selenium-webdriver ×1