当前位置: 首页 > 面试题库 >

Selenium WebDriver和下拉框

林浩漫
2023-03-14
问题内容

如果要选择下拉框的选项,可以通过多种方法进行。我一直使用:

driver.findElement(By.id("selection")).sendKeys("Germany");

但这并非每次都能奏效。有时选择了另一个选项。所以我在谷歌上搜索了一下,发现这段代码每次都有效:

WebElement select = driver.findElement(By.id("selection"));
    List<WebElement> options = select.findElements(By.tagName("option"));
    for (WebElement option : options) {
        if("Germany".equals(option.getText()))
            option.click();
    }

但这确实非常缓慢。如果我的清单很长,里面有很多物品,那确实需要太多时间。所以我的问题是,有没有一种解决方案可以每次都快速有效?


问题答案:

您可以尝试以下方法:

IWebElement dropDownListBox = driver.findElement(By.Id("selection"));
SelectElement clickThis = new SelectElement(dropDownListBox);
clickThis.SelectByText("Germany");


 类似资料:
  • 基于 UIScrollview 的带上拉加载下一页数据和下拉刷新的瀑布流demo。本Demo使用使用 UrlImageView 实现网络图片异步加载和 EGORefresh 实现刷新。 [Code4App.com]

  • 问题内容: 今天,当我使用Selenium WebDrive时,出现错误。我的平台是mac osx。这是我的异常日志。 我不知道为什么会这样。我的Firefox路径是默认路径。谢谢您的帮助!! 问题答案: WebDriver使用端口7054(“锁定端口”)作为互斥体,以确保我们不会同时启动两个Firefox实例。您创建的每个新实例将在启动浏览器之前等待互斥体,然后在浏览器打开后立即释放互斥体。 因

  • 各种大小的下拉框 <div class="row"> <div class="field-label">mini</div> <div class="select-size" data-skin="mini"></div> </div> <div class="row"> <div class="field-label">tiny</div> <div class=

  • 我正在尝试播放以下网站的视频(使用JUnit)-Day01。http://www.itelearn.com/live-training/security-testing-live-training我试图实现的是,在播放视频后,我将拍摄一张屏幕截图,以证明视频播放正确。点击Day01视频后,它会在一个新窗口中打开——当我查看代码时,我意识到他们使用了iFrame。我可以关闭此视频窗口,但无法播放/暂

  • 本文向大家介绍Android XListView下拉刷新和上拉加载更多,包括了Android XListView下拉刷新和上拉加载更多的使用技巧和注意事项,需要的朋友参考一下 市面上有好多的类比ListView刷新数据的开源框架,如:v4包自带的SwipeRefreshLayout ,以及集ListView、GridView甚至WebView于一身的Pulltorefresh等等。前述的两个开源框

  • 问题内容: 我有这样的下拉菜单。我想要的是,我想使用 PHP 在按钮提交中获得选定的值和文本。我的意思是如果它被选为第一。我想同时获得 1 和 Cat 请帮忙。谢谢。 问题答案: 使用您的$ animals列表生成下拉列表;您现在可以获得密钥和该密钥的值。