Я тестирую веб-приложение, написанное на VB.NET. Приложение использует много вложенных фреймов. В одном из фреймов находится список элементов. Во втором фрейме появляются поля, которые вместе с выбором конкретного элемента первого кадра заполняются информацией, полученной из базы данных об этом элементе.Тестирование web-сервера селена прекращается после случайного числа кликов итераций
Я хотел бы создать тест производительности, проверяющий время, прошедшее с момента загрузки, для загрузки данных.
После щелчка при загрузке данных появляется gif-анимация, символизирующая это действие. На этом этапе я проверяю, не ушла ли анимация, а затем переходите к следующему щелчку. Я пишу код в Java моя функция выглядит следующим образом:
public void function(int i, int repeat){
for(int a = 0; a<repeat; a++){
driver.switchTo().defaultContent();
driver.switchTo().frame("MyFrame");
driver.switchTo().frame("frame_Left");
driver.switchTo().frame("Elements");
List<WebElement> ele4 = driver.findElements(By.tagName("tr"));
long start=System.currentTimeMillis();
wait.until(ExpectedConditions.elementToBeClickable(ele4.get(i)));
ele4.get(i).findElement(By.xpath("td/div/a")).click();
driver.switchTo().defaultContent();
driver.switchTo().frame("MyFrame");
driver.switchTo().frame("frame_Right");
wait.until(ExpectedConditions.invisibilityOfElementLocated((By.xpath("//*[@src='/directiory/Loading.gif']"))));
long stop=System.currentTimeMillis();
System.out.println("Time: "+(stop-start) + "\n");
ele4.clear();
}
}
В какой-то случайный момент автоматизированный тест перестает щелкать. Остальные действия, которые должны соблюдаться, также прекращаются. Он не сообщает никаких ошибок или исключений. Когда я нажимаю вручную в интересном элементе, который заставляет тест возобновляться снова.m, но после повторения случайного числа циклов цикла. Как я могу это решить?
Robert: Это происходит на одной строке (после случайного числа исполнений в цикле) или это происходит в разных строках (разные шаги)? – DasunB
Тест должен выполнять этот цикл, например, 12 часов без перерывов. Это происходит обычно после итераций цикла hundereds, когда он пытается выполнить эту строку: ele4.get (i) .findElement (By.xpath ("td/div/a")). Click(); – Robert
Попробуйте добавить паузу между начальным переключателем кадра и найти элемент tr. Это может быть вызвано проблемой загрузки. – debugger89