Правильный способ найти элемент "by.id ()" с вложенными компонентами и связанными полями [id] - PullRequest
0 голосов
/ 10 января 2019

Я сделал проблему с GitHub на сайте angular / protractor, но мне сказали, что я должен задать вопрос здесь, так как это не было ошибкой (https://github.com/angular/protractor/issues/5118#issuecomment-453169976)

В настоящее время у меня есть пример на stackblitz (https://stackblitz.com/edit/protractor-bug-example)

У меня вопрос, почему element(by.id('123-789')) работает в моем примере, когда [id] устанавливается в app.component.ts, но всякий раз, когда он вложен в другой компонент, почему он возвращает ошибку и пытается найти идентификатор с помощью By(css selector, *[id="\31 23-456-789"])

1 Ответ

0 голосов
/ 10 января 2019

Я думаю, что может быть проблема с Selenium WebdriverJS, пытающимся идентифицировать элементы по идентификатору, который начинается с цифры. Я не уверен, как вы вообще можете взаимодействовать с первым элементом.

Я проверил это и увидел следующее:

element(by.id('14a')) -> becomes [id="\31 4a"]
element(by.id('a')) -> becomes [id="a"]
element(by.id('a14')) -> becomes [id="a14"]

Возможно, стоит поделиться с вами версией вашего веб-драйвера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...