finding element by classname and tagname using selenium webdriver

こ雲淡風輕ζ 提交于 2021-01-27 07:24:11

问题


There are classes and tagname and I am writing the below selenium code to find description from below code but its not working.

WebElement WWdescription = driver.findElement(By.className("atb-delivery-accordions").className("section highlight-01").tagName("p"));    


<div class="atb-delivery-accordions">
    <div class="page-accordion opened">
    <input id="moreDetails-acc" class="acc-check" type="checkbox" checked="">
    <label class="acc-label opened" data-panel-id="moreDetailsAcc" for="moreDetails-acc">Description</label>
    <div class="content" data-panel-id="moreDetailsAcc" style="display: block;">
    <div class="information-panel">
    <div class="subcontent">
    <div class="section highlight-01">
    <p>A pretty floral lace collection combining contrast bows and trims for a feminine on trend look. The fuller coverage of our post surgery bras provide support, comfort and confidence. The dual cotton pockets are perfect for a prosthesis. Combine style and value with this pack of 2 bras.</p>

回答1:


Try something like this:

 WebElement parentEle = driver.findElement(By.xpath("//div[@class='atb-delivery-accordions']"));

 WebElement descriptionEle = parentEle.findElement(By.tagName("p"));

 //Get the text from the description element.
 String descriptionText = descriptionEle.getText();



回答2:


It is better to use XPath or CSS selector instead of other locaters i.e., className, id, name or tagName. I also experienced the same i.e., when I tried with XPath I was able to locate the element properly and was able to click on it.




回答3:


You should use cssSelector instead of class locator:

    WebElement WWdescription = driver.findElemenet(By.cssSelector(".atb-delivery-accordions>div.section.highlight-01>p");



回答4:


Try below:-

WebElement description = driver.findElement(By.xpath("//div[@class='atb-delivery-accordions']/p"));

String descriptionText=description.getText();



来源:https://stackoverflow.com/questions/31963439/finding-element-by-classname-and-tagname-using-selenium-webdriver

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!