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();