WebdriverIO и JavaScript для идентификаторов доступности
Если у меня есть два текстовых поля, имя и фамилия, и установите для них идентификатор доступности; поля оба назначены "nameID"
в виде массива [@name="nameID"])[1]
а также [@name="nameID"])[2].
Я пытался сделать
$('~nameID[1]);
а также
$('~[@name="nameID"])[1]');
без результатов. Как мне получить доступ к этим идентификаторам по имени?
Благодарю.
1 ответ
Решение
Понимание вашего вопроса:
Допустим, так выглядит ваш HTML-фрагмент:
First Name <input type="text" name="textName">
Last Name <input type="text" name="textName">
Оба текстовых поля выше имеют одинаковое значение для атрибута name
,
Вот как вы можете получить к ним доступ:
let textFields = $$('[name="textName"]');
// Access the First Name
textFields[0]
// Access the Last Name
textFields[1]
Замечания:
- Больше о селекторах вместе с атрибутом имени можно найти в WebdriverIO API здесь
- Решение, приведенное выше, является очень простым, и фрагмент HTML никогда не будет таким простым, и у вас будет много вариантов доступа к ним.
- Если у вас есть более 2 форм на вашей странице и имеет много
input type texts
тогда однозначно решение выше не подойдет для использования.