diff --git a/goofy-client/apps/goofy-e2e/src/components/kommentar/kommentar-list.e2e.component.ts b/goofy-client/apps/goofy-e2e/src/components/kommentar/kommentar-list.e2e.component.ts
index 57e54c0517eeae4dee5e93f26ec0c0ceae825d49..3496fae7f1de53701ae0fc9c091cf50d5aa088da 100644
--- a/goofy-client/apps/goofy-e2e/src/components/kommentar/kommentar-list.e2e.component.ts
+++ b/goofy-client/apps/goofy-e2e/src/components/kommentar/kommentar-list.e2e.component.ts
@@ -23,6 +23,7 @@
  */
 import { convertToDataTestId } from '../../support/tech.util';
 import { UserProfileE2EComponent } from '../user-profile/user-profile.component.e2e';
+import { AttachmentContainerE2EComponent } from '../attachment/attachment.e2e.component';
 
 export class KommentareInVorgangE2EComponent {
 
@@ -34,6 +35,9 @@ export class KommentareInVorgangE2EComponent {
 	readonly locatorTextInput: string = 'Kommentar-textarea-input';
 	readonly locatorTextError: string = 'Kommentar-textarea-error';
 
+	private readonly attachmentContainer: AttachmentContainerE2EComponent = new AttachmentContainerE2EComponent();
+
+
 	readonly locatorRoot: string = 'kommentar-container-in-vorgang';
 
 	public getRoot() {
@@ -71,6 +75,10 @@ export class KommentareInVorgangE2EComponent {
 	public getKommentar(text: string): KommentarInVorgangE2E {
 		return new KommentarInVorgangE2E(text);
 	}
+
+	public getAttachmentContainer(): AttachmentContainerE2EComponent {
+		return this.attachmentContainer;
+	}
 }
 
 class KommentarInVorgangE2E {
diff --git a/goofy-client/apps/goofy-e2e/src/integration/main-tests/kommentar-attachment/kommentar-attachment.e2e-spec.ts b/goofy-client/apps/goofy-e2e/src/integration/main-tests/kommentar-attachment/kommentar-attachment.e2e-spec.ts
new file mode 100644
index 0000000000000000000000000000000000000000..ce64e2a4f4e52f6c0cf454cdd1f448a7680e4c56
--- /dev/null
+++ b/goofy-client/apps/goofy-e2e/src/integration/main-tests/kommentar-attachment/kommentar-attachment.e2e-spec.ts
@@ -0,0 +1,149 @@
+/*
+ * Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den
+ * Ministerpräsidenten des Landes Schleswig-Holstein
+ * Staatskanzlei
+ * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
+ *
+ * Lizenziert unter der EUPL, Version 1.2 oder - sobald
+ * diese von der Europäischen Kommission genehmigt wurden -
+ * Folgeversionen der EUPL ("Lizenz");
+ * Sie dürfen dieses Werk ausschließlich gemäß
+ * dieser Lizenz nutzen.
+ * Eine Kopie der Lizenz finden Sie hier:
+ *
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
+ *
+ * Sofern nicht durch anwendbare Rechtsvorschriften
+ * gefordert oder in schriftlicher Form vereinbart, wird
+ * die unter der Lizenz verbreitete Software "so wie sie
+ * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN -
+ * ausdrücklich oder stillschweigend - verbreitet.
+ * Die sprachspezifischen Genehmigungen und Beschränkungen
+ * unter der Lizenz sind dem Lizenztext zu entnehmen.
+ */
+import { KommentareInVorgangE2EComponent } from '../../../components/kommentar/kommentar-list.e2e.component';
+import { UserE2E } from '../../../model/user';
+import { VorgangE2E } from '../../../model/vorgang';
+import { MainPage, waitForSpinnerToDisappear } from '../../../page-objects/main.po';
+import { VorgangPage } from '../../../page-objects/vorgang.po';
+import { dropCollections, readFileFromDownloads } from '../../../support/cypress-helper';
+import { exist, notExist } from '../../../support/cypress.util';
+import { getUserSabine, loginAsSabine } from '../../../support/user-util';
+import { createVorgang, initVorgang } from '../../../support/vorgang-util';
+import { VorgangListE2EComponent } from '../../../components/vorgang/vorgang-list.e2e.component';
+import { AttachmentContainerE2EComponent, AttachmentListE2EComponent } from '../../../components/attachment/attachment.e2e.component';
+import { uploadFile } from '../../../support/file-upload';
+import { TEST_FILE_WITH_CONTENT, TEST_FILE_WITHOUT_CONTENT } from '../../../support/data.util';
+
+describe('Kommentar attachments', () => {
+	const mainPage: MainPage = new MainPage();
+	const vorgangList: VorgangListE2EComponent = mainPage.getVorgangList();
+
+	const vorgangPage: VorgangPage = new VorgangPage();
+	const kommentarContainer: KommentareInVorgangE2EComponent = vorgangPage.getKommentarContainer();
+
+	const attachmentContainer: AttachmentContainerE2EComponent = kommentarContainer.getAttachmentContainer();
+	const attachmentList: AttachmentListE2EComponent = attachmentContainer.getList();
+
+	const kommentarText: string = 'Test text to test the test text test';
+
+	const vorgang: VorgangE2E = createVorgang();
+	const userSabine: UserE2E = getUserSabine();
+
+	before(() => {
+		initVorgang(vorgang);
+
+		loginAsSabine();
+
+		waitForSpinnerToDisappear();
+		exist(mainPage.getVorgangList().getRoot());
+	})
+
+	after(() => {
+		dropCollections();
+	})
+
+	describe('Upload attachements', () => {
+
+		it('should navigate to Vorgang', () => {
+			vorgangList.getListItem(vorgang.name).getRoot().click();
+			waitForSpinnerToDisappear();
+
+			exist(vorgangPage.getVorgangDetailHeader().getRoot());
+		});
+
+		it('should show button for uploading attachments when creating new Kommentar', () => {
+			kommentarContainer.getHinzufuegenButton().click();
+			waitForSpinnerToDisappear();
+
+			exist(attachmentContainer.getUploadInput());
+		});
+
+		it('should upload attachements', () => {
+			uploadFile(attachmentContainer.getUploadInput(), TEST_FILE_WITH_CONTENT);
+			waitForSpinnerToDisappear();
+
+			uploadFile(attachmentContainer.getUploadInput(), TEST_FILE_WITHOUT_CONTENT);
+			waitForSpinnerToDisappear();
+
+			exist(attachmentList.getItem(TEST_FILE_WITH_CONTENT).getRoot());
+			exist(attachmentList.getItem(TEST_FILE_WITHOUT_CONTENT).getRoot());
+		});
+
+		it('should show attachements after saving Kommentar', () => {
+			kommentarContainer.getTextInput().type(kommentarText);
+			kommentarContainer.getFormularSpeichernButton().click();
+			waitForSpinnerToDisappear();
+
+			exist(attachmentList.getItem(TEST_FILE_WITH_CONTENT).getRoot());
+			exist(attachmentList.getItem(TEST_FILE_WITHOUT_CONTENT).getRoot());
+		});
+	});
+
+	describe('Delete attachements', () => {
+		it('should delete attachments', () => {
+			kommentarContainer.getKommentar(kommentarText).getRoot().click();
+			waitForSpinnerToDisappear();
+
+			attachmentList.getItem(TEST_FILE_WITH_CONTENT).getDeleteButton().click();
+			waitForSpinnerToDisappear();
+
+			attachmentList.getItem(TEST_FILE_WITHOUT_CONTENT).getDeleteButton().click();
+			waitForSpinnerToDisappear();
+
+			notExist(attachmentList.getItem(TEST_FILE_WITH_CONTENT).getRoot());
+			notExist(attachmentList.getItem(TEST_FILE_WITHOUT_CONTENT).getRoot());
+		});
+
+		it('should not show attachments after saving Kommentar', () => {
+			kommentarContainer.getFormularSpeichernButton().click();
+			waitForSpinnerToDisappear();
+
+			notExist(attachmentList.getItem(TEST_FILE_WITH_CONTENT).getRoot());
+			notExist(attachmentList.getItem(TEST_FILE_WITHOUT_CONTENT).getRoot());
+		});
+	});
+
+	describe('Download Kommentar attachments', () => {
+		it('should upload attachment', () => {
+			kommentarContainer.getKommentar(kommentarText).getRoot().click();
+			waitForSpinnerToDisappear();
+
+			uploadFile(attachmentContainer.getUploadInput(), TEST_FILE_WITH_CONTENT);
+			waitForSpinnerToDisappear();
+
+			kommentarContainer.getFormularSpeichernButton().click();
+			waitForSpinnerToDisappear();
+
+			exist(attachmentList.getItem(TEST_FILE_WITH_CONTENT).getRoot());
+		});
+
+		it('should download uploaded attachment', () => {
+			attachmentList.getItem(TEST_FILE_WITH_CONTENT).getDownloadButton().click();
+			waitForSpinnerToDisappear();
+
+			exist(readFileFromDownloads(TEST_FILE_WITH_CONTENT));
+		});
+	});
+
+});