Невозможно написать новые поля в области текстового поля - PullRequest
0 голосов
/ 08 марта 2020

Я пытаюсь написать какие-либо новые поля в месте происхождения в приложении поиска рейсов (https://flights.msn.com/en-in/flight-search), но не могу написать. Я перепробовал все возможные XPath и локаторы, но это сделать не удалось.

Значение по умолчанию в Origin Place не удаляется и не разрешается записывать новые поля.

Ссылка : https://flights.msn.com/en-in/flight-search

Поле : Место происхождения

enter image description here

Ошибка :

Исключение в потоке "main" org.openqa.selenium.NoSuchElementException: нет такого элемента: невозможно найти элемент: {"method": "xpath", " селектор ":" // div [@class = 'js -originplace field-box flex'] "} (информация о сеансе: chrome = 80.0.3987.132)

код :

<div class="js-originplace field-box flex"><div class="place-selector js-place-selector">
        <div class="place-selector__root clearfix">
            <a href="#" tabindex="1" class="place-selector__cover text-ellipsis js-autocomplete-place-cover populated">Bengaluru <span class="place-selector__cover-id">(Any)<span></span></span></a>
            <div class="place-selector__content">
                <input class="place-selector__input js-place-input" size="1" tabindex="1" type="text" placeholder="Origin city or airport" autocomplete="off" value="">
                <div class="place-selector__loading-spinner js-loading js-spin-activated" style="display: none;">
                <div class="place-selector__dropdown dropdown">
                    <div class="place-selector__not-found js-not-found" style="display: none;">
                        <div data-i18n="search.place.not-found">Type a city or airport</div>
                    </div>
                    <ul class="dropdown-items js-dropdown-items"></ul>
                </div>
            </div>
        </div>
    </div></div>

Ответы [ 2 ]

0 голосов
/ 09 марта 2020

Попробуйте использовать element.click в поле, а затем используйте прозрачные клавиши отправки для отправки ввода.

0 голосов
/ 09 марта 2020

попробуйте этот xpath:

//*[@class='js-originplace field-box flex']/descendant-or-self::a

опция 2

WebElement element = driver.findElement(By.xpath("//*[@class='js-originplace field-box flex']/descendant-or-self::a"));
JavascriptExecutor js= (JavascriptExecutor)driver;
js.executeScript("arguments[0].click();", element);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...