我有以下HTML代码,我想点击第二个选项"计划b"。
<ul class="clearfix all">
<li data-content="a" data-tab-target="tab1" class="active"><span>Plan a</span</li>
<li data-content="b" data-tab-target="tab2" class=""><span>Plan b</span></li>
<li data-content="c" data-tab-target="tab3" class=""><span>Plan c</span></li>/ul>
我试着做这样的事情:
1
@FindBy(css = "li:nth-child(2)")
WebElement sparpreis;
sparpreis.click();
2
@FindBy(xpath = "//*[@class='clearfix all']/ul/li[2]")
WebElement sparpreis;
sparpreis.click();
我的错误讯息:
org.openqa.selenium.ElementNotVisibleException:元素不可见
org.openqa.selenium.NoSuchElementException:没有这样的元素:无法找到元素:{&#34;方法&#34;:&#34; xpath&#34;,&#34;选择器&#34; :&#34; // * [@ class =&#39; clearfix all&#39;] / ul / li [2]&#34;}
Perhaphs我应该激活第二个&#34;类&#34;?
答案 0 :(得分:1)
不需要/ ul,请尝试以下操作:
@FindBy(xpath = "//ul[contains(@class, 'clearfix all')]/li[2]")
答案 1 :(得分:0)
根据您分享的HTML
,点击第二个选项 Plan b
,您可以使用以下任一代码块:
<强> css
强>
@FindBy(css = "ul.clearfix.all li[data-content=b] > span")
WebElement sparpreis;
sparpreis.click();
<强> xpath
强>
@FindBy(xpath = "//ul[@class='clearfix all']//li[@data-content='b']/span")
WebElement sparpreis;
sparpreis.click();