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 171a3c38be6ddd85f5c7a6d67080e94a24148452..94cdcee3140d007fa23c7c4f255cae0903a27797 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
@@ -5,10 +5,13 @@ import de.deadlocker8.budgetmaster.charts.ChartDisplayType;
 import de.deadlocker8.budgetmaster.charts.ChartGroupType;
 import de.deadlocker8.budgetmaster.integration.helpers.IntegrationTestHelper;
 import de.deadlocker8.budgetmaster.integration.helpers.SeleniumTestBase;
+import de.deadlocker8.budgetmaster.integration.helpers.TransactionTestHelper;
 import org.junit.jupiter.api.Test;
 import org.openqa.selenium.By;
 import org.openqa.selenium.JavascriptExecutor;
+import org.openqa.selenium.Keys;
 import org.openqa.selenium.WebElement;
+import org.openqa.selenium.interactions.Actions;
 import org.openqa.selenium.support.ui.ExpectedConditions;
 import org.openqa.selenium.support.ui.WebDriverWait;
 
@@ -354,6 +357,38 @@ class ChartTest extends SeleniumTestBase
 		assertThat(driver.findElement(By.name("buttonSave")).isEnabled()).isTrue();
 	}
 
+	@Test
+	void test_showRelatedTransactionsOnShiftClick()
+	{
+		TransactionTestHelper.selectGlobalAccountByName(driver, "DefaultAccount0815");
+
+		driver.get(helper.getUrl() + "/charts");
+
+		final String chartPreviewSelector = ".chart-preview-column[data-id='6']";
+		driver.findElement(By.cssSelector(chartPreviewSelector)).click();
+
+		WebDriverWait wait = new WebDriverWait(driver, Duration.ofSeconds(5));
+		wait.until(ExpectedConditions.attributeContains(By.cssSelector(chartPreviewSelector + " .chart-preview"), "class", "active"));
+
+		driver.findElement(By.cssSelector("td[data-quick='3']")).click();
+
+		driver.findElement(By.name("buttonSave")).click();
+
+		wait = new WebDriverWait(driver, Duration.ofSeconds(5));
+		wait.until(ExpectedConditions.visibilityOfElementLocated(By.className("chart-canvas")));
+
+		assertThat(driver.findElements(By.cssSelector(".chart-canvas .plot-container"))).hasSize(1);
+
+		Actions actions = new Actions(driver);
+		actions.moveToElement(driver.findElement(By.className("plot-container"))).perform();
+		actions.moveByOffset(-450, 25).keyDown(Keys.SHIFT).click().keyUp(Keys.SHIFT).perform();
+
+		wait = new WebDriverWait(driver, Duration.ofSeconds(5));
+		wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("matchingTransactionsTitle")));
+
+		assertThat(driver.findElements(By.className("search-result"))).hasSizeGreaterThan(0);
+	}
+
 	private String getSelectedType(String selector)
 	{
 		final List<WebElement> activeTypeButtons = driver.findElements(By.cssSelector(selector));