diff --git a/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/integration/selenium/RecurringOverviewTest.java b/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/integration/selenium/RecurringOverviewTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..71edc43a803e2e38a2dc4eade0727329d9f7cfee
--- /dev/null
+++ b/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/integration/selenium/RecurringOverviewTest.java
@@ -0,0 +1,43 @@
+package de.deadlocker8.budgetmaster.integration.selenium;
+
+import de.deadlocker8.budgetmaster.authentication.UserService;
+import de.deadlocker8.budgetmaster.integration.helpers.IntegrationTestHelper;
+import de.deadlocker8.budgetmaster.integration.helpers.SeleniumTestBase;
+import org.junit.jupiter.api.Test;
+import org.openqa.selenium.By;
+import org.openqa.selenium.support.ui.ExpectedConditions;
+import org.openqa.selenium.support.ui.WebDriverWait;
+
+import java.io.File;
+import java.time.Duration;
+
+import static org.assertj.core.api.Assertions.assertThat;
+
+class RecurringOverviewTest extends SeleniumTestBase
+{
+	private static IntegrationTestHelper helper;
+
+	@Override
+	protected void importDatabaseOnce()
+	{
+		helper = new IntegrationTestHelper(driver, port);
+		helper.start();
+		helper.login(UserService.DEFAULT_PASSWORD);
+		helper.hideBackupReminder();
+		helper.hideWhatsNewDialog();
+
+		String path = getClass().getClassLoader().getResource("NeverEndingRepeatingTransaction.json").getFile().replace("/", File.separator);
+		helper.uploadDatabase(path);
+	}
+
+	@Test
+	void test_recurringOverview()
+	{
+		driver.get(helper.getUrl() + "/transactions/recurringOverview");
+
+		final WebDriverWait wait = new WebDriverWait(driver, Duration.ofSeconds(5));
+		wait.until(ExpectedConditions.textToBePresentInElementLocated(By.cssSelector(".headline"), "Active Recurring Transactions"));
+
+		assertThat(driver.findElements(By.className("search-result"))).hasSizeGreaterThan(0);
+	}
+}
\ No newline at end of file
diff --git a/BudgetMasterServer/src/test/resources/NeverEndingRepeatingTransaction.json b/BudgetMasterServer/src/test/resources/NeverEndingRepeatingTransaction.json
new file mode 100644
index 0000000000000000000000000000000000000000..71a653c8aa4c2afeb0fb3b470f3b29a432577c92
--- /dev/null
+++ b/BudgetMasterServer/src/test/resources/NeverEndingRepeatingTransaction.json
@@ -0,0 +1,110 @@
+{
+    "TYPE": "BUDGETMASTER_DATABASE",
+    "VERSION": 9,
+    "categories": [
+        {
+            "ID": 312,
+            "name": "Keine Kategorie",
+            "color": "#FFFFFF",
+            "type": "NONE"
+        },
+        {
+            "ID": 313,
+            "name": "Übertrag",
+            "color": "#FFFF00",
+            "type": "REST"
+        }
+    ],
+    "accounts": [
+        {
+            "ID": 136,
+            "name": "Placeholder",
+            "accountState": "FULL_ACCESS",
+            "type": "ALL",
+            "iconReferenceID": 406
+        },
+        {
+            "ID": 137,
+            "name": "Default Account First",
+            "accountState": "FULL_ACCESS",
+            "type": "CUSTOM",
+            "iconReferenceID": 407
+        }
+    ],
+    "transactions": [
+        {
+            "amount": -1000,
+            "isExpenditure": true,
+            "date": "2022-10-01",
+            "accountID": 137,
+            "categoryID": 312,
+            "name": "Pizza",
+            "description": "",
+            "tags": [],
+            "repeatingOption": {
+                "startDate": "2023-01-01",
+                "modifier": {
+                    "quantity": 1,
+                    "localizationKey": "repeating.modifier.years"
+                },
+                "endOption": {
+                    "localizationKey": "repeating.end.key.never"
+                }
+            }
+        }
+    ],
+    "templateGroups": [
+        {
+            "ID": 1,
+            "name": "Not grouped",
+            "type": "DEFAULT"
+        }
+    ],
+    "templates": [],
+    "charts": [],
+    "images": [],
+    "icons": [
+        {
+            "ID": 406,
+            "builtinIdentifier": "fas fa-landmark"
+        },
+        {
+            "ID": 407
+        }
+    ],
+    "transactionNameKeywords": [
+        {
+            "value": "einnahme"
+        },
+        {
+            "value": "rückzahlung"
+        },
+        {
+            "value": "erstattung"
+        },
+        {
+            "value": "zinsen"
+        },
+        {
+            "value": "lohn"
+        },
+        {
+            "value": "gehalt"
+        },
+        {
+            "value": "gutschrift"
+        },
+        {
+            "value": "income"
+        },
+        {
+            "value": "refund"
+        },
+        {
+            "value": "interest"
+        },
+        {
+            "value": "salary"
+        }
+    ]
+}
\ No newline at end of file