diff --git a/src/test/java/de/ozgcloud/admin/organisationseinheit/SyncAddedOrganisationsEinheitenITCase.java b/src/test/java/de/ozgcloud/admin/organisationseinheit/SyncAddedOrganisationsEinheitenITCase.java
index 9204b58dc98768fb140ab4479ab7fe9651324ad5..ca1b0366500f5ea25e29cef7ebdaee5deff22484 100644
--- a/src/test/java/de/ozgcloud/admin/organisationseinheit/SyncAddedOrganisationsEinheitenITCase.java
+++ b/src/test/java/de/ozgcloud/admin/organisationseinheit/SyncAddedOrganisationsEinheitenITCase.java
@@ -67,6 +67,20 @@ class SyncAddedOrganisationsEinheitenITCase {
 				.containsExactly(childLevel1.getName());
 	}
 
+	@Test
+	void shouldSynchronizeChildAddedToAlreadySynchronizedParent() {
+		var parent = topLevel("shouldSynchronizeChildAddedToAlreadySynchronizedParent");
+		syncOrganisationsEinheitToKeycloak(parent);
+		var childLevel1 = childLevel("shouldSynchronizeChildAddedToAlreadySynchronizedParent", parent);
+		operations.save(childLevel1);
+
+		service.syncAddedOrganisationsEinheiten(syncTimestamp);
+
+		assertThat(findGroupInKeycloak(parent.getName())).isPresent().get()
+				.extracting(Group::getSubGroups).asList().extracting("name")
+				.containsExactly(childLevel1.getName());
+	}
+
 	@Test
 	void shouldNotAddChildIfParentWasNotSynchronized() {
 		var topLevel = topLevel("shouldNotAddChildIfParentWasNotSynchronized");
@@ -106,4 +120,9 @@ class SyncAddedOrganisationsEinheitenITCase {
 				.filter(group -> groupName.equals(group.getName()))
 				.findFirst();
 	}
+
+	private void syncOrganisationsEinheitToKeycloak(OrganisationsEinheit organisationsEinheit) {
+		operations.save(organisationsEinheit);
+		service.syncAddedOrganisationsEinheiten(syncTimestamp);
+	}
 }