如何解决如何使用Selenium和Java根据文本条件单击输入元素
我在JAVA上使用硒和junit5。我在turna.com上进行测试。如何在Pegasus(文本)上单击输入按钮。
航空公司名称类型:
- 飞马座
- THY
- Anadolujet
<div class="item-domestic departure-flight rt-domestic-item flight" id="1028" style="">
<div class="col-sm-8">
<div class="caption">
<div class="airline-img-wrapper">
</div>
<div class="airline-tag-wrapper">
<div class="airline-name">Pegasus
</div>
</div>
</div>
</div>
<div class="col-sm-4 text-right amount-wrapper">
<div class="price">
</div>
<div class="button">
<input type="button" class="from-in-button" value="Seç" txt="Seçili">
</div>
</div>
</div>
我的代码:
WebElement airlinename= findElement(airline_name);
if(airlinename.getText()=="Pegasus")
{
clickElement(fromBtn); //input button
}
我正在尝试:)
.airline-name[text="Pegasus"],.from-in-button
问题:我无法单击输入按钮(飞马文字标签)。
解决方法
要针对文本飞马座单击<input>
元素,您需要为elementToBeClickable()
引入WebDriverWait,并且可以使用以下{{ 3}}:
-
xpath
:new WebDriverWait(driver,20).until(ExpectedConditions.elementToBeClickable(By.xpath("//div[@class='airline-name' and contains(.,'Pegasus')]//following::div//input[@class='from-in-button' and @value='Seç']"))).click();
-
浏览器快照(来自Locator Strategies):
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。