Dmi
(Дмтрю)
#1
Есть много полей(input) для ввода чего-либо. Как написать универсальный метод который будет работать и для одного input и для нескольких.
public List<WebElement> getlist() {
return driver.findElements(By.xpath("//input[contains(@class, “form-control”)]"));
}
public List<WebElement> enterStrings(List<String> strings) {
for (WebElement listS
tring : getlist()) {
listString.sendKeys(strings.get(1));
}
return getlist();
}
asolntsev
(asolntsev)
#2
Мой стандартный ответ: используйте Selenide, код будет короче:
public void enterTexts(List<String> texts) {
for (int I = 0; I < texts.size(); I++) {
$("input.form-control").val(texts.get(i));
}
}
BabyRoot
(Vasily)
#3
Воу-воу-воу. А разве метод $ сам может спускаться к следующему элементу инпут?
Он же долбить будет всё время один и тот же…
Тогда уж
$$("input.form-control").get(i).val(texts.get(i));
asolntsev
(asolntsev)
#4
А, точно, это я забыл индекс дописать:
$("input.form-control", i+1).val(texts.get(i));
1 лайк