ошибка селена - невозможно найти выбранный элемент - PullRequest
1 голос
/ 13 марта 2019

Пожалуйста, найдите HTML-код ниже:

<div class="col-lg-3 col-md-4">
      <select ui-select2="ui-select2" name="dealer" id="selected_dsd" ng-init="delegate.init()" ng-model="selectedMainStoreTest" ng-change="delegate.getBranchDealers()">
        <option value="">{{'manageChargeCodes.form.fields.choose' |translate}}</option>
        <option ng-repeat="dealer in mainStoreDealerList" value="{{dealer}}">{{dealer.id}} - {{dealer.name}}</option>
      </select>
</div>

Из приведенного ниже кода я получу список опций, и мне нужно получить выбранные значения, используя XPath

<option ng-repeat="dealer in mainStoreDealerList" value="{{dealer}}">{{dealer.id}} - {{dealer.name}}</option>

Пожалуйста, найдите ниже код, который используется для получения выбранного значения

@FindBy(xpath = "//*[@id=\"select2-result-label-90\"]")
private WebElement mainStoreDealersSelector;

public void selectMainStoreDealers(String mainStoreDealer) {
     System.out.println("Xpath--->"+mainStoreDealersSelector);
     selectFromDropDown(mainStoreDealersSelector, mainStoreDealer);
     System.out.println("Completed....");
}

И при печати я получаю следующие результаты.

Xpath--->Proxy element for: org.openqa.selenium.support.pagefactory.DefaultElementLocator@d93a6a5

и его получение не удалось с ошибкой ниже:

Results :

Tests in error:
  Unable to locate element: {"method":"xpath","selector":"//*[@id=\"select2-result-label-90\"]"}
Command duration or timeout: 100.29 seconds

Ответы [ 2 ]

1 голос
/ 13 марта 2019

Попробуйте использовать селектор "ID" , иногда при сбое xpath мы используем свойства CSS для выбора элемента.

@FindBy(id="selected_dsd")
0 голосов
/ 13 марта 2019

Нет элемента с идентификатором select2-result-label-90 в вашем HTML.Если вы пытаетесь выбрать элемент «select», правильный xpath будет

@FindBy(xpath = "//*[@id='selected_dsd']")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...