Тайм-аут выполнения теста / время ожидания исключения - PullRequest
0 голосов
/ 03 апреля 2020

Я тестирую веб-приложение для мобильных устройств. Я запускаю тест через задачу Gradle (она использует Junit5). У меня проблема с тайм-аутом исключения. На экране нет элемента, у меня есть исключение - это правильно. При появлении теста исключения в течение примерно 8 минут для Вариант 1 и метода не удалось, тест не пройден (другие методы в цепочке не запускаются). Когда я использую try / catch в Variant 2 test wait 15se c, следующий метод запускается и завершается неудачей через 8 минут (я использую цепочку методов). Я не знаю, почему ожидание составляет 8 минут (я нигде не установил его).

Меня интересует:

  • метод не удался (следующий метод в цепочке не запускается )
  • ждать только 15 се c вместо 8 мин.

    вариант 1

    //TIMEOUT = 15 sec.
    
    public MobileElement getElement(By locator, int... waitTime) {
        int timeOut = waitTime.length > 0 ? waitTime[0] : TIMEOUT;
    
        WebDriverWait wait = new WebDriverWait(driver, timeOut);
        wait.withMessage(String.format("Element was not found\nLocator - %s", locator.toString()));
        return (MobileElement) wait.until(ExpectedConditions.visibilityOfElementLocated(locator));
    }
    

    вариант 2

        WebElement element = null;
        WebDriverWait wait = new WebDriverWait(driver, timeOut);
        wait.withMessage(String.format("Element was not found\nLocator - %s", locator.toString()));
    
        try {
            element =   wait.until(ExpectedConditions.visibilityOfElementLocated(locator));
        }
        catch (TimeoutException ex) {
    
        }
        return (MobileElement) element;
    
...