Java с методом Playwright On -response - не может получить возвращаемое строковое значение, indexoutofboundsexceptionJAVA

Программисты JAVA общаются здесь
Anonymous
Java с методом Playwright On -response - не может получить возвращаемое строковое значение, indexoutofboundsexception

Сообщение Anonymous »

Я создал метод void, который распечатывает необходимые ответы из URL -адреса (используя Java и Playwright), но мне действительно нужно получить эти значения для выполнения утверждений JUNIT, и я пытаюсь преобразовать метод в метод строки, но я не могу получить возвращенное значение. Результат или «0 Выйдет из границ для длины 0 '», поэтому, похоже, я на самом деле не добавляю никаких значений в мой список массивов.public String getResponseAgain()
{
List anotherArray = new ArrayList();
String[] extractedValue ={""};
page.onResponse(response -> {
if (response.url().contains("myUrlIsHere")) {
String value = response.url().substring(response.url().lastIndexOf("someValue") + 2,
response.url().indexOf("anotherValue"));
String[] splitText = value.split("bySomeValue");
List arrayOfStrings = new ArrayList(Arrays.asList(splitText));
extractedValue[0] = String.join(" ", arrayOfStrings);
anotherArray.addAll(List.of(extractedValue));
for(String arr : anotherArray){
System.out.println("Arr is " + arr);
}
}
});

return anotherArray.get(0);
}
< /code>
Я использую метод в тестовом классе: < /p>
public void responsesTest(){

////some code that accesses url and is ok////

Assertions.assertEquals("expected value", page.getResponseAgain());

}
< /code>
Это исходный метод, который работает и распечатывает правильные значения: < /p>
public void getSomeResponse(){
page.onResponse(response -> {
if (response.url().contains("myUrlIsHere")) {
String value = response.url().substring(response.url().lastIndexOf("someValue") + 2, response.url().indexOf("anotherValue"));
String[] splitText = value.split("bySomeValue");

List arrayOfStrings = new ArrayList(Arrays.asList(splitText));
String extractedValue = String.join(" ", arrayOfStrings);
System.out.println(extractedValue);
}
});
}


Подробнее здесь: https://stackoverflow.com/questions/795 ... lue-indexo

Вернуться в «JAVA»