diff --git a/build.gradle.kts b/build.gradle.kts
index c9e6d9c3a2a6a0490b2065755b123f1828c665db..58b1010d6030b5e15fece0317f85e6fd14e242a0 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -35,6 +35,7 @@ dependencies {
     kapt("com.google.dagger:dagger-compiler:$daggerVersion")
 
     testImplementation(kotlin("test-testng"))
+    testImplementation("commons-io:commons-io:2.11.0")
     kaptTest("com.google.dagger:dagger-compiler:$daggerVersion")
 }
 
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/BriarDesktopTestApp.kt b/src/test/kotlin/org/briarproject/briar/desktop/BriarDesktopTestApp.kt
index a4bbc9cd144d77ea03fbb615898fe0d3878a750c..17584c59986056838c7bb479c7cf5daf4eebfde3 100644
--- a/src/test/kotlin/org/briarproject/briar/desktop/BriarDesktopTestApp.kt
+++ b/src/test/kotlin/org/briarproject/briar/desktop/BriarDesktopTestApp.kt
@@ -5,6 +5,7 @@ import org.briarproject.bramble.BrambleCoreEagerSingletons
 import org.briarproject.bramble.BrambleCoreModule
 import org.briarproject.bramble.api.account.AccountManager
 import org.briarproject.bramble.api.lifecycle.LifecycleManager
+import org.briarproject.bramble.api.lifecycle.ShutdownManager
 import org.briarproject.briar.BriarCoreEagerSingletons
 import org.briarproject.briar.BriarCoreModule
 import org.briarproject.briar.api.test.TestDataCreator
@@ -27,6 +28,8 @@ internal interface BriarDesktopTestApp : BrambleCoreEagerSingletons, BriarCoreEa
 
     fun getLifecycleManager(): LifecycleManager
 
+    fun getShutdownManager(): ShutdownManager
+
     fun getAccountManager(): AccountManager
 
     fun getTestDataCreator(): TestDataCreator
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/TestWithTemporaryAccount.kt b/src/test/kotlin/org/briarproject/briar/desktop/TestWithTemporaryAccount.kt
index 20c9561e431bae0f2cf7180b81bacca2bf9bd958..ac5bb5cd3ba411f6dcbcdd19108cf55cc91859ec 100644
--- a/src/test/kotlin/org/briarproject/briar/desktop/TestWithTemporaryAccount.kt
+++ b/src/test/kotlin/org/briarproject/briar/desktop/TestWithTemporaryAccount.kt
@@ -2,6 +2,7 @@ package org.briarproject.briar.desktop
 
 import androidx.compose.ui.ExperimentalComposeUiApi
 import androidx.compose.ui.window.application
+import org.apache.commons.io.FileUtils
 import org.briarproject.bramble.BrambleCoreEagerSingletons
 import org.briarproject.bramble.util.OsUtils.isLinux
 import org.briarproject.bramble.util.OsUtils.isMac
@@ -32,6 +33,12 @@ private class TestWithTemporaryAccount {
             DaggerBriarDesktopTestApp.builder().desktopTestModule(
                 DesktopTestModule(dataDir.toFile())
             ).build()
+
+        app.getShutdownManager().addShutdownHook {
+            println("deleting temporary account at $dataDir")
+            FileUtils.deleteDirectory(dataDir.toFile())
+        }
+
         // We need to load the eager singletons directly after making the
         // dependency graphs
         BrambleCoreEagerSingletons.Helper.injectEagerSingletons(app)