У нас есть автоматический тестовый случай в Java
, но тестируемая страница слишком загружается. Иногда это может занять не менее 60 секунд. Нам нужно определить это время и остановить загрузку страницы (страница загружает ненужные вещи только через 30 секунд) и продолжить процесс (Selenium ждет, пока страница полностью загрузится, чтобы перейти к следующему шагу).
Мы пытались использовать поток, но он не работал, и мы не понимаем, почему
driver.manage().timeouts().pageLoadTimeout(60000, TimeUnit.MILLISECONDS);
Thread jsInjector = new Thread(){
@Override
public void run() {
super.run();
try {
Thread.sleep(30000);
JavascriptExecutor jsi = (JavascriptExecutor) dr;
jsi.executeScript("window.stop()");
System.out.println("#### Stop loading page #####");
} catch (InterruptedException e) {
}
}
};
jsInjector.start();
driver.get(url);
sleepProcess(randTime());
jsInjector.interrupt();