Как найти элемент в субкадре с помощью nightwatch?
Например, я пытаюсь найти элемент в веб-туре, посмотрите HTML-код следующим образом:
<frameset>
<frame name="a"></frame>
<frame name="b"><input name="login"/></frame>
</frameset>
и нет атрибута id, я пытаюсь использовать.frame(0).frame(1), но это не сработало, может кто-нибудь дать мне небольшую подсказку? Спасибо
0 ответов
Ночной дозор
С .frameParent
вам нужно изменить фокус на родительский фрейм, а затем выбрать, какой фрейм вы хотите сфокусировать:
this.testFrames = function (browser) {
browser
.frame(0) // first frame
.frameParent()
.frame(1) // second frame
.frameParent()
}
Документы: https://nightwatchjs.org/api/frameParent.html
Теперь, чтобы заполнить поле ввода внутри второго кадра:
this.testInputFrame = function (browser) {
browser
.frame(1) // second frame
.waitForElementVisible('input[name="login"]')
.setValue('input[name="login"], 'user123')
.frameParent()
}