Получение пустого значения при использовании getAttribute()

Я пытаюсь получить текст "Лиор Пелет", но получаю пустую строку

Это код сайта:

<div class="crm-entity-stream-content-detail"><span>Lior Pelet</span></div>

И это мой код:

@FindBy(css=".crm-entity-stream-content-detail > span")
public WebElement txtFullName;  //full name 

String sContactName=txtFullName.getAttribute("span");

person Lior p    schedule 23.10.2019    source источник
comment
Возможный дубликат Как использовать аннотацию @FindBy в Selenium для объемный текст?   -  person Ali Ben Zarrouk    schedule 23.10.2019
comment
в вашем html нет атрибута с именем span, почему вы предполагаете, что это работает?   -  person f1sh    schedule 23.10.2019


Ответы (2)


Вы можете получить данные с помощью метода getText() вместо метода getAttribute().
Вы можете сделать это следующим образом:

@FindBy(css=".crm-entity-stream-content-detail > span")
public WebElement txtFullName;  //full name 

String sContactName=txtFullName.getText();

OR

Вы можете получить желаемый результат, используя getAttribute("value") .
Вы можете сделать это следующим образом:

@FindBy(css=".crm-entity-stream-content-detail > span")
public WebElement txtFullName;  //full name 

String sContactName=txtFullName.getAttribute("value");
person Sameer Arora    schedule 23.10.2019

css=".crm-entity-stream-content-detail > span

означает, что ваш "txtFullName" уже является элементом span, поэтому вместо этого вызовите метод getText().

person Aykhan    schedule 23.10.2019