diff --git a/goofy-client/apps/goofy-e2e/cypress.config.ts b/goofy-client/apps/goofy-e2e/cypress.config.ts
index 2c142046e35bbac0bb32403266bebfdff6166203..fd6fee3da4580645f7e50b12343812d99a0bacdd 100644
--- a/goofy-client/apps/goofy-e2e/cypress.config.ts
+++ b/goofy-client/apps/goofy-e2e/cypress.config.ts
@@ -5,6 +5,8 @@ const MongoClient = require('mongodb').MongoClient;
 const Binary = require('mongodb').Binary;
 const ObjectId = require('mongodb').ObjectId;
 const Long = require('mongodb').Long;
+const fs = require('fs');
+const {rmdir} = require('fs');
 
 const cypressJsonConfig = {
 	baseUrl: 'http://localhost:4300',
@@ -91,7 +93,30 @@ export default defineConfig({
 					console.log('dropUserManagerCollections: ', collections);
 					dropUserManagerCollectionsFromDatabase(config, collections);
 					return 0;
-				}
+				},
+				countDownloadFiles(folderName) {
+					return new Promise((resolve, reject) => {
+					fs.readdir(folderName, (err, files) => {
+						if (err) {
+						return reject(err)
+						}
+		
+						resolve(files.length)
+					})
+				})},
+				deleteDownloadFolder(folderName) {
+					console.log('deleting folder %s', folderName)
+			  
+					return new Promise((resolve, reject) => {
+					  rmdir(folderName, { maxRetries: 10, recursive: true }, (err) => {
+						if (err) {
+						  console.error(err)
+						  return reject(err)
+						}
+						resolve(null)
+					  })
+					})
+				  },
 			});
 
 			// Workaround für Angular 13 und Cypress mit Webpack 4,
diff --git a/goofy-client/apps/goofy-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-exportieren.cy.ts b/goofy-client/apps/goofy-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-exportieren.cy.ts
index f860a6d99217dd94c8d807dd4c4f33bf92c4ff84..8012254cf57d5dc52d53ffb3cd27a5b0bb2c6623 100644
--- a/goofy-client/apps/goofy-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-exportieren.cy.ts
+++ b/goofy-client/apps/goofy-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-exportieren.cy.ts
@@ -29,10 +29,11 @@ import { VorgangListE2EComponent } from '../../../components/vorgang/vorgang-lis
 import { VorgangE2E } from '../../../model/vorgang';
 import { MainPage, waitForSpinnerToDisappear } from '../../../page-objects/main.po';
 import { VorgangPage } from '../../../page-objects/vorgang.po';
-import { dropCollections } from '../../../support/cypress-helper';
-import { exist, notExist } from '../../../support/cypress.util';
+import { countDownloadFiles, deleteDownloadFolder, dropCollections } from '../../../support/cypress-helper';
+import { exist, haveValue, notExist } from '../../../support/cypress.util';
 import { loginAsSabine } from '../../../support/user-util';
 import { createVorgang, initVorgaenge } from '../../../support/vorgang-util';
+import * as fs from 'fs';
 
 registerLocaleData(localeDe, 'de', localeDeExtra);
 
@@ -46,6 +47,7 @@ describe('Vorgang exportieren', () => {
 	const vorgangExportieren: VorgangE2E = { ...createVorgang(), name: 'DoExportieren' };
 
 	before(() => {
+		dropCollections();
 		initVorgaenge([vorgangExportieren]);
 
 		loginAsSabine();
@@ -83,11 +85,14 @@ describe('Vorgang exportieren', () => {
 			exist(menuItem.getButton());
 		})
 
-		it('should download', () => {
+		it('should be 1 file in download folder', () => {
 			menuItem.getButton().click();
 
 			waitForSpinnerToDisappear();
-			//TODO In Cypress 10+ implement something like https://docs.cypress.io/api/commands/task#Return-number-of-files-in-the-folder
+			countDownloadFiles().then((count) => {
+				expect(count).to.eq(1);
+				deleteDownloadFolder();
+			});
 		})
 
 		it('should close menu after download', () => {
diff --git a/goofy-client/apps/goofy-e2e/src/support/cypress-helper.ts b/goofy-client/apps/goofy-e2e/src/support/cypress-helper.ts
index bde71f182f74051db676b6bf41da1e23ff93072c..c8414803ec145db27e5e88d6a25b19bb208ae865 100644
--- a/goofy-client/apps/goofy-e2e/src/support/cypress-helper.ts
+++ b/goofy-client/apps/goofy-e2e/src/support/cypress-helper.ts
@@ -37,6 +37,8 @@ enum CypressTasks {
 	INIT_VORGANG_DATA = 'initVorgangData',
 	INIT_VORGANG_ATTACHED_ITEM_DATA = 'initVorgangAttachedItemData',
 	INIT_USERMANAGER_DATA = 'initUsermanagerData',
+	COUNT_DOWNLOAD_FILES = 'countDownloadFiles',
+	DELETE_DOWNLOAD_FOLDER = 'deleteDownloadFolder'
 }
 
 enum MongoCollections {
@@ -48,6 +50,8 @@ enum MongoCollections {
 	USER = "User"
 }
 
+const DOWNLOAD_FOLDER: string = 'cypress/downloads';
+
 export function login(userJsonPath: string): void {
 	cy.fixture(userJsonPath).then(user => {
 		cy.login(user.name, user.password);
@@ -108,6 +112,14 @@ export function dropCollections() {
 	cy.task(CypressTasks.DROP_USER_MANAGER_COLLECTIONS, [MongoCollections.USER]);
 }
 
+export function countDownloadFiles(): Cypress.Chainable<number> {
+	return cy.task(CypressTasks.COUNT_DOWNLOAD_FILES, DOWNLOAD_FOLDER);
+}
+
+export function deleteDownloadFolder() {
+	cy.task(CypressTasks.DELETE_DOWNLOAD_FOLDER, DOWNLOAD_FOLDER);
+}
+
 export function scrollToWindowBottom(): void {
 	cy.window().scrollTo('bottom');
 }
@@ -143,7 +155,7 @@ export function reload(): void {
 }
 
 export function readFileFromDownloads(fileName: string) {
-	return cy.readFile(`cypress/downloads/${fileName}`);
+	return cy.readFile(`${DOWNLOAD_FOLDER}/${fileName}`);
 }
 
 export function pressTab(): void {