diff --git a/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/integration/selenium/ChartTest.java b/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/integration/selenium/ChartTest.java index 8d36b734a5d7519e2c4c9e145beb40d459fe9062..5135c878f31d130385dae928cb092327170f0c36 100644 --- a/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/integration/selenium/ChartTest.java +++ b/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/integration/selenium/ChartTest.java @@ -235,9 +235,11 @@ class ChartTest extends SeleniumTestBase assertThat(driver.findElement(By.id("filterActiveBadge")).isDisplayed()).isFalse(); driver.findElement(By.id("chart-filter-container")).click(); + WebDriverWait wait = new WebDriverWait(driver, Duration.ofSeconds(5)); + wait.until(ExpectedConditions.visibilityOfAllElementsLocatedBy(By.cssSelector("#chart-filter-container .collapsible-header"))); driver.findElement(By.id("section-type")).click(); - WebDriverWait wait = new WebDriverWait(driver, Duration.ofSeconds(5)); + wait = new WebDriverWait(driver, Duration.ofSeconds(5)); wait.until(ExpectedConditions.visibilityOfElementLocated(By.cssSelector("#section-type .text-default"))); final WebElement checkBox = driver.findElement(By.cssSelector("#section-type .text-default")); @@ -256,8 +258,10 @@ class ChartTest extends SeleniumTestBase driver.get(helper.getUrl() + "/charts"); driver.findElement(By.id("chart-filter-container")).click(); - driver.findElement(By.id("section-type")).click(); WebDriverWait wait = new WebDriverWait(driver, Duration.ofSeconds(5)); + wait.until(ExpectedConditions.visibilityOfAllElementsLocatedBy(By.cssSelector("#chart-filter-container .collapsible-header"))); + driver.findElement(By.id("section-type")).click(); + wait = new WebDriverWait(driver, Duration.ofSeconds(5)); wait.until(ExpectedConditions.visibilityOfElementLocated(By.cssSelector("#section-type .text-default"))); final WebElement checkBox = driver.findElement(By.cssSelector("#section-type .text-default")); ((JavascriptExecutor) driver).executeScript("arguments[0].scrollIntoView(true);", checkBox); @@ -285,6 +289,8 @@ class ChartTest extends SeleniumTestBase wait.until(ExpectedConditions.attributeContains(By.cssSelector(chartPreviewSelector + " .chart-preview"), "class", "active")); driver.findElement(By.id("chart-filter-container")).click(); + wait = new WebDriverWait(driver, Duration.ofSeconds(5)); + wait.until(ExpectedConditions.visibilityOfAllElementsLocatedBy(By.cssSelector("#chart-filter-container .collapsible-header"))); driver.findElement(By.id("section-type")).click(); wait = new WebDriverWait(driver, Duration.ofSeconds(5)); wait.until(ExpectedConditions.visibilityOfElementLocated(By.cssSelector("#section-type .text-default"))); diff --git a/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/integration/selenium/FilterTest.java b/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/integration/selenium/FilterTest.java index deb5742fd8e8471d9408ac07cfa8d4c68e4c84bd..e57a591ac6dc790ae03d128ec32cbd6a065317f7 100644 --- a/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/integration/selenium/FilterTest.java +++ b/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/integration/selenium/FilterTest.java @@ -45,8 +45,8 @@ class FilterTest extends SeleniumTestBase driver.findElement(By.id("section-type")).click(); wait = new WebDriverWait(driver, Duration.ofSeconds(5)); - wait.until(ExpectedConditions.visibilityOfAllElementsLocatedBy(By.cssSelector("#section-type .text-default"))); - final WebElement checkBox = driver.findElements(By.cssSelector("#section-type .text-default")).get(0); + wait.until(ExpectedConditions.elementToBeClickable(By.cssSelector("#section-type .text-default"))); + final WebElement checkBox = driver.findElements(By.cssSelector("#section-type .text-default")).getFirst(); checkBox.click(); driver.findElement(By.id("buttonApplyFilter")).click();