如何使用Selenium WebDriver在C#中从有序列表中选择多个web元素?
我想手动做,我会按下Ctrl并选择多个选项。我想让这个自动化。
下面是示例HTML:
<ol id="selectable" class="ui-selectable">
<li class="ui-state-default ui-selectee">1</li>
<li class="ui-state-default ui-selectee">2</li>
<li class="ui-state-default ui-selectee">3</li>
<li class="ui-state-default ui-selectee">4</li>
<li class="ui-state-default ui-selectee">5</li>
<li class="ui-state-default ui-selectee">6</li>
<li class="ui-state-default ui-selectee">7</li>
<li class="ui-state-default ui-selectee">8</li>
<li class="ui-state-default ui-selectee">9</li>
<li class="ui-state-default ui-selectee">10</li>
<li class="ui-state-default ui-selectee">11</li>
<li class="ui-state-default ui-selectee">12</li>
</ol> 感谢你的时间和努力。
发布于 2018-12-02 18:07:09
您试过使用GetElementsByClassName()吗?与Actions类中的KeyDown命令相结合(参见this question的答案),这样的方法可能对您有用.
using OpenQA.Selenium;
using OpenQA.Selenium.Firefox;
using OpenQA.Selenium.Interactions;
var driver = new WebDriver();
var elements = driver.GetElementsByClassName("ui-state-default ui-selectee");
var action = new Actions(driver);
action.KeyDown(Keys.Control);
foreach (var element in elements)
{
// If element properties match your selection
element.Click()
}https://stackoverflow.com/questions/53581400
复制相似问题