diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/contactdiary/storage/ContactDiaryDatabaseMigrationTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/contactdiary/storage/ContactDiaryDatabaseMigrationTest.kt
index bd23cf8461818998bacbad0daf0f931762ab63a4..c8f85180b71b9fb29e29f30799e62f30c96ac0ed 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/contactdiary/storage/ContactDiaryDatabaseMigrationTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/contactdiary/storage/ContactDiaryDatabaseMigrationTest.kt
@@ -21,11 +21,11 @@ import org.joda.time.LocalDate
 import org.junit.Rule
 import org.junit.Test
 import org.junit.runner.RunWith
-import testhelpers.BaseTest
+import testhelpers.BaseTestInstrumentation
 import java.io.IOException
 
 @RunWith(AndroidJUnit4::class)
-class ContactDiaryDatabaseMigrationTest : BaseTest() {
+class ContactDiaryDatabaseMigrationTest : BaseTestInstrumentation() {
     private val DB_NAME = "contactdiary_migration_test.db"
 
     @get:Rule
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/contactdiary/storage/ContactDiaryDatabaseTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/contactdiary/storage/ContactDiaryDatabaseTest.kt
index 6853d1150cb63ba33f903ccf2f61a0cc1a580c98..95c5c04429ee7443db3ace7bf6e9e51a7c0366c3 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/contactdiary/storage/ContactDiaryDatabaseTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/contactdiary/storage/ContactDiaryDatabaseTest.kt
@@ -19,10 +19,10 @@ import org.joda.time.LocalDate
 import org.junit.After
 import org.junit.Test
 import org.junit.runner.RunWith
-import testhelpers.BaseTest
+import testhelpers.BaseTestInstrumentation
 
 @RunWith(AndroidJUnit4::class)
-class ContactDiaryDatabaseTest : BaseTest() {
+class ContactDiaryDatabaseTest : BaseTestInstrumentation() {
 
     // TestData
     private val date = LocalDate.now()
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/risk/storage/RiskResultDatabaseMigrationTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/risk/storage/RiskResultDatabaseMigrationTest.kt
index 730112da5305024e7af29610eceb27fdbdefadb6..3b699ab53c884822c6c863ec4e429a16f3fe4164 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/risk/storage/RiskResultDatabaseMigrationTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/risk/storage/RiskResultDatabaseMigrationTest.kt
@@ -21,12 +21,12 @@ import org.joda.time.Instant
 import org.junit.Rule
 import org.junit.Test
 import org.junit.runner.RunWith
-import testhelpers.BaseTest
+import testhelpers.BaseTestInstrumentation
 import timber.log.Timber
 import java.io.IOException
 
 @RunWith(AndroidJUnit4::class)
-class RiskResultDatabaseMigrationTest : BaseTest() {
+class RiskResultDatabaseMigrationTest : BaseTestInstrumentation() {
     private val DB_NAME = "riskresults_migration_test.db"
 
     @get:Rule
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/contactdiary/ContactDiaryDayFragmentTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/contactdiary/ContactDiaryDayFragmentTest.kt
index 578c99ae6d7b47aa319708cc0b2f5b4c0a59a74c..ae11a6cceb12d764caf8ba24dbfba16b274de8df 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/contactdiary/ContactDiaryDayFragmentTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/contactdiary/ContactDiaryDayFragmentTest.kt
@@ -24,7 +24,6 @@ import io.mockk.MockKAnnotations
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.spyk
-import io.mockk.unmockkAll
 import org.joda.time.LocalDate
 import org.junit.After
 import org.junit.Before
@@ -78,7 +77,6 @@ class ContactDiaryDayFragmentTest : BaseUITest() {
     @After
     fun teardown() {
         clearAllViewModels()
-        unmockkAll()
     }
 
     @Test
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/contactdiary/ContactDiaryEditLocationsFragmentTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/contactdiary/ContactDiaryEditLocationsFragmentTest.kt
index ad260c4e9e0884618f38e8da947ecfcf2c456dab..195824d42c6cc2c49c93788edee6edef7f08a122 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/contactdiary/ContactDiaryEditLocationsFragmentTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/contactdiary/ContactDiaryEditLocationsFragmentTest.kt
@@ -12,19 +12,18 @@ import io.mockk.MockKAnnotations
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.spyk
-import io.mockk.unmockkAll
 import org.junit.After
 import org.junit.Before
 import org.junit.Rule
 import org.junit.Test
 import org.junit.runner.RunWith
 import testhelpers.BaseUITest
-import testhelpers.takeScreenshot
 import testhelpers.Screenshot
 import testhelpers.SystemUIDemoModeRule
 import testhelpers.TestDispatcherProvider
 import testhelpers.launchFragment2
 import testhelpers.launchFragmentInContainer2
+import testhelpers.takeScreenshot
 import tools.fastlane.screengrab.locale.LocaleTestRule
 
 @RunWith(AndroidJUnit4::class)
@@ -57,9 +56,8 @@ class ContactDiaryEditLocationsFragmentTest : BaseUITest() {
     }
 
     @After
-    fun tearDown() {
+    fun teardown() {
         clearAllViewModels()
-        unmockkAll()
     }
 
     @Test
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/contactdiary/ContactDiaryEditPersonsFragmentTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/contactdiary/ContactDiaryEditPersonsFragmentTest.kt
index c05ad05c97322007d33746cae50efcd64f96eeb9..1f0440d7657df42a775638d1455f26ed765d6b6b 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/contactdiary/ContactDiaryEditPersonsFragmentTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/contactdiary/ContactDiaryEditPersonsFragmentTest.kt
@@ -12,19 +12,18 @@ import io.mockk.MockKAnnotations
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.spyk
-import io.mockk.unmockkAll
 import org.junit.After
 import org.junit.Before
 import org.junit.Rule
 import org.junit.Test
 import org.junit.runner.RunWith
 import testhelpers.BaseUITest
-import testhelpers.takeScreenshot
 import testhelpers.Screenshot
 import testhelpers.SystemUIDemoModeRule
 import testhelpers.TestDispatcherProvider
 import testhelpers.launchFragment2
 import testhelpers.launchFragmentInContainer2
+import testhelpers.takeScreenshot
 import tools.fastlane.screengrab.locale.LocaleTestRule
 
 @RunWith(AndroidJUnit4::class)
@@ -57,9 +56,8 @@ class ContactDiaryEditPersonsFragmentTest : BaseUITest() {
     }
 
     @After
-    fun tearDown() {
+    fun teardown() {
         clearAllViewModels()
-        unmockkAll()
     }
 
     @Test
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/contactdiary/ContactDiaryOnboardingFragmentTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/contactdiary/ContactDiaryOnboardingFragmentTest.kt
index 5614d8687dcd51cfe7c62588b2961c88b092dd1a..d1e4a35c6d93a28e1298bf871b2211d83c663186 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/contactdiary/ContactDiaryOnboardingFragmentTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/contactdiary/ContactDiaryOnboardingFragmentTest.kt
@@ -7,18 +7,17 @@ import de.rki.coronawarnapp.contactdiary.ui.onboarding.ContactDiaryOnboardingFra
 import de.rki.coronawarnapp.contactdiary.ui.onboarding.ContactDiaryOnboardingFragmentArgs
 import de.rki.coronawarnapp.contactdiary.ui.onboarding.ContactDiaryOnboardingFragmentViewModel
 import io.mockk.MockKAnnotations
-import io.mockk.unmockkAll
 import org.junit.After
 import org.junit.Before
 import org.junit.Rule
 import org.junit.Test
 import org.junit.runner.RunWith
 import testhelpers.BaseUITest
-import testhelpers.takeScreenshot
 import testhelpers.Screenshot
 import testhelpers.SystemUIDemoModeRule
 import testhelpers.launchFragment2
 import testhelpers.launchFragmentInContainer2
+import testhelpers.takeScreenshot
 import tools.fastlane.screengrab.locale.LocaleTestRule
 
 @RunWith(AndroidJUnit4::class)
@@ -49,7 +48,6 @@ class ContactDiaryOnboardingFragmentTest : BaseUITest() {
     @After
     fun teardown() {
         clearAllViewModels()
-        unmockkAll()
     }
 
     @Test
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/contactdiary/ContactDiaryOverviewFragmentTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/contactdiary/ContactDiaryOverviewFragmentTest.kt
index cc87948f952b3e29fe077ad352413a49995280a5..382ae5d43c3ad2faf5903331bdc08f37c197fb4a 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/contactdiary/ContactDiaryOverviewFragmentTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/contactdiary/ContactDiaryOverviewFragmentTest.kt
@@ -11,7 +11,6 @@ import de.rki.coronawarnapp.task.TaskController
 import io.mockk.MockKAnnotations
 import io.mockk.impl.annotations.MockK
 import io.mockk.spyk
-import io.mockk.unmockkAll
 import org.junit.After
 import org.junit.Before
 import org.junit.Test
@@ -51,7 +50,6 @@ class ContactDiaryOverviewFragmentTest : BaseUITest() {
     @After
     fun teardown() {
         clearAllViewModels()
-        unmockkAll()
     }
 
     @Test
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/main/home/HomeFragmentTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/main/home/HomeFragmentTest.kt
index 56559565e14f6017f5530eb84e8fe3e57d1069d1..83a01aaba9f026eb41ea31bd227e43d2c8b78056 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/main/home/HomeFragmentTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/main/home/HomeFragmentTest.kt
@@ -24,7 +24,6 @@ import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.just
 import io.mockk.spyk
-import io.mockk.unmockkAll
 import io.mockk.verify
 import org.junit.After
 import org.junit.Before
@@ -77,7 +76,6 @@ class HomeFragmentTest : BaseUITest() {
     @After
     fun teardown() {
         clearAllViewModels()
-        unmockkAll()
     }
 
     @Test
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/onboarding/OnboardingAnalyticsFragmentTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/onboarding/OnboardingAnalyticsFragmentTest.kt
index c6d4cd2f7f265c9c2cafeb8aa83a1a411bb0fbb1..eaf88daf0bfa813ccc1a453083c58ef0feae1004 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/onboarding/OnboardingAnalyticsFragmentTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/onboarding/OnboardingAnalyticsFragmentTest.kt
@@ -13,7 +13,6 @@ import io.mockk.coEvery
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.spyk
-import io.mockk.unmockkAll
 import kotlinx.coroutines.flow.flow
 import kotlinx.coroutines.flow.flowOf
 import org.junit.After
@@ -82,7 +81,6 @@ class OnboardingAnalyticsFragmentTest : BaseUITest() {
     @After
     fun teardown() {
         clearAllViewModels()
-        unmockkAll()
     }
 
     @Test
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/onboarding/OnboardingDeltaInteroperabilityFragmentTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/onboarding/OnboardingDeltaInteroperabilityFragmentTest.kt
index cca410b3d66db4650b4a204619fe907e51c0b848..0b32b217db31b50f5e6db3e94cdf46a91eca4a36 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/onboarding/OnboardingDeltaInteroperabilityFragmentTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/onboarding/OnboardingDeltaInteroperabilityFragmentTest.kt
@@ -6,19 +6,18 @@ import dagger.android.ContributesAndroidInjector
 import de.rki.coronawarnapp.storage.interoperability.InteroperabilityRepository
 import io.mockk.MockKAnnotations
 import io.mockk.impl.annotations.MockK
-import io.mockk.unmockkAll
 import org.junit.After
 import org.junit.Before
 import org.junit.Rule
 import org.junit.Test
 import org.junit.runner.RunWith
 import testhelpers.BaseUITest
-import testhelpers.takeScreenshot
 import testhelpers.Screenshot
 import testhelpers.SystemUIDemoModeRule
 import testhelpers.TestDispatcherProvider
 import testhelpers.launchFragment2
 import testhelpers.launchFragmentInContainer2
+import testhelpers.takeScreenshot
 import tools.fastlane.screengrab.locale.LocaleTestRule
 
 @RunWith(AndroidJUnit4::class)
@@ -51,7 +50,6 @@ class OnboardingDeltaInteroperabilityFragmentTest : BaseUITest() {
     @After
     fun teardown() {
         clearAllViewModels()
-        unmockkAll()
     }
 
     @Test
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/onboarding/OnboardingNotificationsFragmentTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/onboarding/OnboardingNotificationsFragmentTest.kt
index 8e057638ae9b5ccadd2797ff5042459593c1bdcd..1954b667c2f2d1e31b7c694dbcada9a89437bba3 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/onboarding/OnboardingNotificationsFragmentTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/onboarding/OnboardingNotificationsFragmentTest.kt
@@ -3,18 +3,17 @@ package de.rki.coronawarnapp.ui.onboarding
 import androidx.test.ext.junit.runners.AndroidJUnit4
 import dagger.Module
 import dagger.android.ContributesAndroidInjector
-import io.mockk.unmockkAll
 import org.junit.After
 import org.junit.Before
 import org.junit.Rule
 import org.junit.Test
 import org.junit.runner.RunWith
 import testhelpers.BaseUITest
-import testhelpers.takeScreenshot
 import testhelpers.Screenshot
 import testhelpers.SystemUIDemoModeRule
 import testhelpers.launchFragment2
 import testhelpers.launchFragmentInContainer2
+import testhelpers.takeScreenshot
 import tools.fastlane.screengrab.locale.LocaleTestRule
 
 @RunWith(AndroidJUnit4::class)
@@ -39,7 +38,6 @@ class OnboardingNotificationsFragmentTest : BaseUITest() {
     @After
     fun teardown() {
         clearAllViewModels()
-        unmockkAll()
     }
 
     @Test
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/onboarding/OnboardingPrivacyFragmentTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/onboarding/OnboardingPrivacyFragmentTest.kt
index 9963c9d574040484c68d21682a3e36edb9f34ee0..96af67c859188160d57d06f18998b0f7f70338cd 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/onboarding/OnboardingPrivacyFragmentTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/onboarding/OnboardingPrivacyFragmentTest.kt
@@ -3,18 +3,17 @@ package de.rki.coronawarnapp.ui.onboarding
 import androidx.test.ext.junit.runners.AndroidJUnit4
 import dagger.Module
 import dagger.android.ContributesAndroidInjector
-import io.mockk.unmockkAll
 import org.junit.After
 import org.junit.Before
 import org.junit.Rule
 import org.junit.Test
 import org.junit.runner.RunWith
 import testhelpers.BaseUITest
-import testhelpers.takeScreenshot
 import testhelpers.Screenshot
 import testhelpers.SystemUIDemoModeRule
 import testhelpers.launchFragment2
 import testhelpers.launchFragmentInContainer2
+import testhelpers.takeScreenshot
 import tools.fastlane.screengrab.locale.LocaleTestRule
 
 @RunWith(AndroidJUnit4::class)
@@ -39,7 +38,6 @@ class OnboardingPrivacyFragmentTest : BaseUITest() {
     @After
     fun teardown() {
         clearAllViewModels()
-        unmockkAll()
     }
 
     @Test
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/onboarding/OnboardingTestFragmentTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/onboarding/OnboardingTestFragmentTest.kt
index 3feb9d96252757233937e7996944aece9c432c4a..3d07dec0fa7f0232c420edcc29de6bc38ea4f09e 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/onboarding/OnboardingTestFragmentTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/onboarding/OnboardingTestFragmentTest.kt
@@ -3,7 +3,6 @@ package de.rki.coronawarnapp.ui.onboarding
 import androidx.test.ext.junit.runners.AndroidJUnit4
 import dagger.Module
 import dagger.android.ContributesAndroidInjector
-import io.mockk.unmockkAll
 import org.junit.After
 import org.junit.Before
 import org.junit.Rule
@@ -12,10 +11,10 @@ import org.junit.runner.RunWith
 import testhelpers.BaseUITest
 import testhelpers.Screenshot
 import testhelpers.SystemUIDemoModeRule
+import testhelpers.launchFragment2
 import testhelpers.launchFragmentInContainer2
-import tools.fastlane.screengrab.locale.LocaleTestRule
 import testhelpers.takeScreenshot
-import testhelpers.launchFragment2
+import tools.fastlane.screengrab.locale.LocaleTestRule
 
 @RunWith(AndroidJUnit4::class)
 class OnboardingTestFragmentTest : BaseUITest() {
@@ -39,7 +38,6 @@ class OnboardingTestFragmentTest : BaseUITest() {
     @After
     fun teardown() {
         clearAllViewModels()
-        unmockkAll()
     }
 
     @Test
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/onboarding/OnboardingTracingFragmentTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/onboarding/OnboardingTracingFragmentTest.kt
index 8116f9a850a3c3b6d31b0623b41b6462effdcddd..7eeb02ee3d9649bea978adb941dacde0312778da 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/onboarding/OnboardingTracingFragmentTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/onboarding/OnboardingTracingFragmentTest.kt
@@ -11,7 +11,6 @@ import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.just
 import io.mockk.spyk
-import io.mockk.unmockkAll
 import kotlinx.coroutines.flow.flowOf
 import org.junit.After
 import org.junit.Before
@@ -19,12 +18,12 @@ import org.junit.Rule
 import org.junit.Test
 import org.junit.runner.RunWith
 import testhelpers.BaseUITest
-import testhelpers.takeScreenshot
 import testhelpers.Screenshot
 import testhelpers.SystemUIDemoModeRule
 import testhelpers.TestDispatcherProvider
 import testhelpers.launchFragment2
 import testhelpers.launchFragmentInContainer2
+import testhelpers.takeScreenshot
 import tools.fastlane.screengrab.locale.LocaleTestRule
 
 @RunWith(AndroidJUnit4::class)
@@ -65,7 +64,6 @@ class OnboardingTracingFragmentTest : BaseUITest() {
     @After
     fun teardown() {
         clearAllViewModels()
-        unmockkAll()
     }
 
     @Test
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionConsentFragmentTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionConsentFragmentTest.kt
index 3722ad6f62adfcc0e1c1f9cea7884a78bddc7c22..0fde6ecaf2d8d1ce3e3c09bcb967d9c070e7bf91 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionConsentFragmentTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionConsentFragmentTest.kt
@@ -11,7 +11,6 @@ import de.rki.coronawarnapp.ui.submission.qrcode.consent.SubmissionConsentViewMo
 import io.mockk.MockKAnnotations
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
-import io.mockk.unmockkAll
 import kotlinx.coroutines.flow.flowOf
 import org.junit.After
 import org.junit.Before
@@ -62,7 +61,6 @@ class SubmissionConsentFragmentTest : BaseUITest() {
     @After
     fun teardown() {
         clearAllViewModels()
-        unmockkAll()
     }
 
     @Test
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionContactFragmentTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionContactFragmentTest.kt
index 703f42fadb8a916ade881a4c4243b17a6d40e017..2fc4006c280e2badf61984db0df2613ff33dd788 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionContactFragmentTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionContactFragmentTest.kt
@@ -14,7 +14,6 @@ import de.rki.coronawarnapp.R
 import de.rki.coronawarnapp.ui.submission.fragment.SubmissionContactFragment
 import de.rki.coronawarnapp.ui.submission.viewmodel.SubmissionContactViewModel
 import io.mockk.MockKAnnotations
-import io.mockk.unmockkAll
 import org.junit.After
 import org.junit.Before
 import org.junit.Rule
@@ -53,7 +52,6 @@ class SubmissionContactFragmentTest : BaseUITest() {
     @After
     fun teardown() {
         clearAllViewModels()
-        unmockkAll()
     }
 
     @Test
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionDispatcherFragmentTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionDispatcherFragmentTest.kt
index bce66aec861cd6c7e85d2aa21ef3052ae0f8152a..a38a450fb4c0e196fe4c649f9a90572dac191aac 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionDispatcherFragmentTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionDispatcherFragmentTest.kt
@@ -15,7 +15,6 @@ import de.rki.coronawarnapp.R
 import de.rki.coronawarnapp.ui.submission.fragment.SubmissionDispatcherFragment
 import de.rki.coronawarnapp.ui.submission.viewmodel.SubmissionDispatcherViewModel
 import io.mockk.MockKAnnotations
-import io.mockk.unmockkAll
 import org.junit.After
 import org.junit.Before
 import org.junit.Rule
@@ -24,10 +23,10 @@ import org.junit.runner.RunWith
 import testhelpers.BaseUITest
 import testhelpers.Screenshot
 import testhelpers.SystemUIDemoModeRule
-import testhelpers.takeScreenshot
 import testhelpers.captureScreenshot
 import testhelpers.launchFragment2
 import testhelpers.launchFragmentInContainer2
+import testhelpers.takeScreenshot
 import tools.fastlane.screengrab.locale.LocaleTestRule
 
 @RunWith(AndroidJUnit4::class)
@@ -61,7 +60,6 @@ class SubmissionDispatcherFragmentTest : BaseUITest() {
     @After
     fun teardown() {
         clearAllViewModels()
-        unmockkAll()
     }
 
     @Test
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionQrCodeScanFragmentTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionQrCodeScanFragmentTest.kt
index 95fa42138eb8470c6458b56b949e6fbceb5f2be3..06ab62aa36eba132f077b81be1b302b906204f0a 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionQrCodeScanFragmentTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionQrCodeScanFragmentTest.kt
@@ -7,7 +7,6 @@ import de.rki.coronawarnapp.ui.submission.qrcode.scan.SubmissionQRCodeScanFragme
 import de.rki.coronawarnapp.ui.submission.qrcode.scan.SubmissionQRCodeScanViewModel
 import io.mockk.MockKAnnotations
 import io.mockk.impl.annotations.MockK
-import io.mockk.unmockkAll
 import org.junit.After
 import org.junit.Before
 import org.junit.Test
@@ -33,7 +32,6 @@ class SubmissionQrCodeScanFragmentTest : BaseUITest() {
     @After
     fun teardown() {
         clearAllViewModels()
-        unmockkAll()
     }
 
     @Test
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionSymptomCalendarFragmentTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionSymptomCalendarFragmentTest.kt
index d9f8712c01f50e2feb0f8ea772489ac2f81032f6..943df7ec90e9868c1f5914330b2fcde74e8131e9 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionSymptomCalendarFragmentTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionSymptomCalendarFragmentTest.kt
@@ -18,18 +18,17 @@ import io.mockk.MockKAnnotations
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.spyk
-import io.mockk.unmockkAll
 import org.junit.After
 import org.junit.Before
 import org.junit.Rule
 import org.junit.Test
 import org.junit.runner.RunWith
 import testhelpers.BaseUITest
-import testhelpers.takeScreenshot
 import testhelpers.Screenshot
 import testhelpers.SystemUIDemoModeRule
 import testhelpers.TestDispatcherProvider
 import testhelpers.captureScreenshot
+import testhelpers.takeScreenshot
 import tools.fastlane.screengrab.locale.LocaleTestRule
 
 @RunWith(AndroidJUnit4::class)
@@ -71,7 +70,6 @@ class SubmissionSymptomCalendarFragmentTest : BaseUITest() {
     @After
     fun teardown() {
         clearAllViewModels()
-        unmockkAll()
     }
 
     @Test
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionSymptomIntroFragmentTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionSymptomIntroFragmentTest.kt
index 1480a9211ef090e4a12ca0fbebd2a65ff75230bd..9e86f9de03d7bb207f3652ace363a8c32ea6a14d 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionSymptomIntroFragmentTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionSymptomIntroFragmentTest.kt
@@ -18,20 +18,19 @@ import io.mockk.MockKAnnotations
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.spyk
-import io.mockk.unmockkAll
 import org.junit.After
 import org.junit.Before
 import org.junit.Rule
 import org.junit.Test
 import org.junit.runner.RunWith
 import testhelpers.BaseUITest
-import testhelpers.takeScreenshot
 import testhelpers.Screenshot
 import testhelpers.SystemUIDemoModeRule
 import testhelpers.TestDispatcherProvider
 import testhelpers.captureScreenshot
 import testhelpers.launchFragment2
 import testhelpers.launchFragmentInContainer2
+import testhelpers.takeScreenshot
 import tools.fastlane.screengrab.locale.LocaleTestRule
 
 @RunWith(AndroidJUnit4::class)
@@ -72,7 +71,6 @@ class SubmissionSymptomIntroFragmentTest : BaseUITest() {
     @After
     fun teardown() {
         clearAllViewModels()
-        unmockkAll()
     }
 
     @Test
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionTanFragmentTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionTanFragmentTest.kt
index 0d11b6d32c95656687b5889e09ae453b1697ee06..4e5d114ea9d3fa3b8f8f9244065d2a716f3f04bd 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionTanFragmentTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionTanFragmentTest.kt
@@ -14,19 +14,18 @@ import de.rki.coronawarnapp.ui.submission.tan.SubmissionTanFragment
 import de.rki.coronawarnapp.ui.submission.tan.SubmissionTanViewModel
 import io.mockk.MockKAnnotations
 import io.mockk.impl.annotations.MockK
-import io.mockk.unmockkAll
 import org.junit.After
 import org.junit.Before
 import org.junit.Rule
 import org.junit.Test
 import org.junit.runner.RunWith
 import testhelpers.BaseUITest
-import testhelpers.takeScreenshot
 import testhelpers.Screenshot
 import testhelpers.SystemUIDemoModeRule
 import testhelpers.TestDispatcherProvider
 import testhelpers.launchFragment2
 import testhelpers.launchFragmentInContainer2
+import testhelpers.takeScreenshot
 import tools.fastlane.screengrab.locale.LocaleTestRule
 
 @RunWith(AndroidJUnit4::class)
@@ -60,7 +59,6 @@ class SubmissionTanFragmentTest : BaseUITest() {
     @After
     fun teardown() {
         clearAllViewModels()
-        unmockkAll()
     }
 
     @Test
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionTestResultAvailableFragmentTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionTestResultAvailableFragmentTest.kt
index c099702b2c9d71f323151993717783e3cad916c5..82b41af38b9680a2cb43a620c1e9c3ed1d57e120 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionTestResultAvailableFragmentTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionTestResultAvailableFragmentTest.kt
@@ -16,7 +16,6 @@ import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.just
 import io.mockk.spyk
-import io.mockk.unmockkAll
 import kotlinx.coroutines.flow.flowOf
 import org.junit.After
 import org.junit.Before
@@ -73,7 +72,6 @@ class SubmissionTestResultAvailableFragmentTest : BaseUITest() {
     @After
     fun teardown() {
         clearAllViewModels()
-        unmockkAll()
     }
 
     @Test
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionTestResultConsentGivenFragmentTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionTestResultConsentGivenFragmentTest.kt
index b195f8d395dce7a5e06f36879f4e0918d775620c..2ddeb46116948b3086b0916d7f9ddee5acb65d2a 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionTestResultConsentGivenFragmentTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionTestResultConsentGivenFragmentTest.kt
@@ -24,7 +24,6 @@ import io.mockk.MockKAnnotations
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.spyk
-import io.mockk.unmockkAll
 import org.junit.After
 import org.junit.Before
 import org.junit.Rule
@@ -84,7 +83,6 @@ class SubmissionTestResultConsentGivenFragmentTest : BaseUITest() {
     @After
     fun teardown() {
         clearAllViewModels()
-        unmockkAll()
     }
 
     @Test
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionTestResultFragmentTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionTestResultFragmentTest.kt
index 26121cd22026c15ac6e2377a75e20f37e604b16c..dbc5de25ebf30886fe62f36034c11d4f55ca9d12 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionTestResultFragmentTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionTestResultFragmentTest.kt
@@ -21,7 +21,6 @@ import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.just
 import io.mockk.spyk
-import io.mockk.unmockkAll
 import kotlinx.coroutines.flow.flowOf
 import org.junit.After
 import org.junit.Before
@@ -88,7 +87,6 @@ class SubmissionTestResultFragmentTest : BaseUITest() {
     @After
     fun teardown() {
         clearAllViewModels()
-        unmockkAll()
     }
 
     @Test
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionTestResultNegativeFragmentTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionTestResultNegativeFragmentTest.kt
index 8af923fc90d8b3664ac210923e65b0bb05394138..d18ae41de25400d3c51c441904c6c07098995b03 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionTestResultNegativeFragmentTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionTestResultNegativeFragmentTest.kt
@@ -15,7 +15,6 @@ import io.mockk.MockKAnnotations
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.spyk
-import io.mockk.unmockkAll
 import kotlinx.coroutines.flow.flowOf
 import org.junit.After
 import org.junit.Before
@@ -69,7 +68,6 @@ class SubmissionTestResultNegativeFragmentTest : BaseUITest() {
     @After
     fun teardown() {
         clearAllViewModels()
-        unmockkAll()
     }
 
     @Test
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionTestResultNoConsentGivenFragmentTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionTestResultNoConsentGivenFragmentTest.kt
index d13a644893f13b90b05995c99a3393f16b46ca06..1aaa59220916d29cf48878e26bda36b579f790cc 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionTestResultNoConsentGivenFragmentTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionTestResultNoConsentGivenFragmentTest.kt
@@ -15,7 +15,6 @@ import io.mockk.MockKAnnotations
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.spyk
-import io.mockk.unmockkAll
 import org.junit.After
 import org.junit.Before
 import org.junit.Rule
@@ -58,7 +57,6 @@ class SubmissionTestResultNoConsentGivenFragmentTest : BaseUITest() {
     @After
     fun teardown() {
         clearAllViewModels()
-        unmockkAll()
     }
 
     @Test
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionYourConsentFragmentTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionYourConsentFragmentTest.kt
index d04b7ce216171e1f1ea9702abb277c7399ca6022..3084dc54851102f60d6703230fd87df7a4a768f9 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionYourConsentFragmentTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/submission/SubmissionYourConsentFragmentTest.kt
@@ -11,7 +11,6 @@ import de.rki.coronawarnapp.ui.submission.yourconsent.SubmissionYourConsentViewM
 import io.mockk.MockKAnnotations
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
-import io.mockk.unmockkAll
 import kotlinx.coroutines.flow.flowOf
 import org.junit.After
 import org.junit.Before
@@ -56,7 +55,6 @@ class SubmissionYourConsentFragmentTest : BaseUITest() {
     @After
     fun teardown() {
         clearAllViewModels()
-        unmockkAll()
     }
 
     @Test
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/util/security/DBPasswordTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/util/security/DBPasswordTest.kt
index 65bc675e5daf5c602cb401fc3cdf4b5e6bdacb9c..f06bf3afb5cfe4b173fc8cc47dca7f0c1f29a43b 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/util/security/DBPasswordTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/util/security/DBPasswordTest.kt
@@ -11,7 +11,6 @@ import de.rki.coronawarnapp.util.di.ApplicationComponent
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
@@ -21,16 +20,16 @@ import kotlinx.coroutines.runBlocking
 import net.sqlcipher.database.SQLiteException
 import org.hamcrest.Matchers.equalTo
 import org.hamcrest.Matchers.not
-import org.junit.After
 import org.junit.Assert.assertThat
 import org.junit.Assert.assertTrue
 import org.junit.Before
 import org.junit.Test
 import org.junit.runner.RunWith
 import org.junit.runners.JUnit4
+import testhelpers.BaseTestInstrumentation
 
 @RunWith(JUnit4::class)
-class DBPasswordTest {
+class DBPasswordTest : BaseTestInstrumentation() {
 
     @MockK lateinit var applicationComponent: ApplicationComponent
     @MockK lateinit var encryptedSharedPreferencesFactory: EncryptedPreferencesFactory
@@ -63,11 +62,6 @@ class DBPasswordTest {
         AppDatabase.reset(appContext)
     }
 
-    @After
-    fun teardown() {
-        clearAllMocks()
-    }
-
     @Test
     fun generatesPassphraseInCorrectLength() {
         val passphrase = SecurityHelper.getDBPassword()
diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/worker/DiagnosisKeyRetrievalPeriodicWorkerTest.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/worker/DiagnosisKeyRetrievalPeriodicWorkerTest.kt
index f2eeb393db5d03a46aaf05ebfccb52e57d4f31ac..bc8b3025f2bb742d1bb7835ecdfd64c675c0e2ff 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/worker/DiagnosisKeyRetrievalPeriodicWorkerTest.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/worker/DiagnosisKeyRetrievalPeriodicWorkerTest.kt
@@ -12,7 +12,6 @@ import io.mockk.Runs
 import io.mockk.every
 import io.mockk.just
 import io.mockk.mockkObject
-import io.mockk.unmockkAll
 import org.hamcrest.CoreMatchers.`is`
 import org.hamcrest.CoreMatchers.notNullValue
 import org.hamcrest.CoreMatchers.nullValue
@@ -22,17 +21,19 @@ import org.junit.Before
 import org.junit.Ignore
 import org.junit.Test
 import org.junit.runner.RunWith
+import testhelpers.BaseTestInstrumentation
 
 /**
  * DiagnosisKeyRetrievalPeriodicWorker test.
  */
 @Ignore("FixMe:DiagnosisKeyRetrievalPeriodicWorkerTest")
 @RunWith(AndroidJUnit4::class)
-class DiagnosisKeyRetrievalPeriodicWorkerTest {
+class DiagnosisKeyRetrievalPeriodicWorkerTest : BaseTestInstrumentation() {
     private lateinit var context: Context
     private lateinit var workManager: WorkManager
     private lateinit var request: WorkRequest
     private lateinit var request2: WorkRequest
+
     // small delay because WorkManager does not run work instantly when delay is off
     private val delay = 500L
 
@@ -131,7 +132,6 @@ class DiagnosisKeyRetrievalPeriodicWorkerTest {
     @After
     fun cleanUp() {
         workManager.cancelAllWork()
-        unmockkAll()
     }
 
     private fun runPeriodicJobInitialDelayMet() {
diff --git a/Corona-Warn-App/src/androidTest/java/testhelpers/BaseUITest.kt b/Corona-Warn-App/src/androidTest/java/testhelpers/BaseUITest.kt
index ad347acdb141a78f9fa9e3132e25fe99dc894bcf..65f9ce8d370be7e5ce6dde6358399da29c197d23 100644
--- a/Corona-Warn-App/src/androidTest/java/testhelpers/BaseUITest.kt
+++ b/Corona-Warn-App/src/androidTest/java/testhelpers/BaseUITest.kt
@@ -7,7 +7,7 @@ import de.rki.coronawarnapp.util.viewmodel.CWAViewModelFactory
 import org.junit.Rule
 import testhelpers.viewmodels.MockViewModelModule
 
-abstract class BaseUITest : BaseTest() {
+abstract class BaseUITest : BaseTestInstrumentation() {
 
     @get:Rule
     val permissionRule: GrantPermissionRule = GrantPermissionRule.grant(
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/AppConfigModuleTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/AppConfigModuleTest.kt
index fdae6dd05d6b673b95c5b49a3a5edf39d76c9124..5a742dd75f3c470b9c3b657bc427b9c3a670669c 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/AppConfigModuleTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/AppConfigModuleTest.kt
@@ -4,7 +4,6 @@ import android.content.Context
 import io.kotest.assertions.throwables.shouldNotThrowAny
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import org.junit.jupiter.api.AfterEach
@@ -32,7 +31,6 @@ class AppConfigModuleTest : BaseIOTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         testDir.deleteRecursively()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/AppConfigProviderTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/AppConfigProviderTest.kt
index d919d3119653df4ddf2629442ded2bc4de5c5025..85dcb2b5ebdbe1cf91088189d1d7d304d4672756 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/AppConfigProviderTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/AppConfigProviderTest.kt
@@ -6,7 +6,6 @@ import de.rki.coronawarnapp.util.TimeStamper
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.coVerifySequence
@@ -57,7 +56,6 @@ class AppConfigProviderTest : BaseIOTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         testDir.deleteRecursively()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/internal/AppConfigSourceTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/internal/AppConfigSourceTest.kt
index 9faa43631ab10fa795b30849449eb1fb3201fae4..d52c964adcde7bc0c9f5875cc4cd998d4e09a63a 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/internal/AppConfigSourceTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/internal/AppConfigSourceTest.kt
@@ -10,7 +10,6 @@ import de.rki.coronawarnapp.util.TimeStamper
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerifyOrder
 import io.mockk.coVerifySequence
@@ -22,7 +21,6 @@ import io.mockk.verify
 import kotlinx.coroutines.test.runBlockingTest
 import org.joda.time.Duration
 import org.joda.time.Instant
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -90,11 +88,6 @@ class AppConfigSourceTest : BaseTest() {
         every { cwaSettings.lastDeviceTimeStateChangeState = any() } just Runs
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance() = AppConfigSource(
         remoteAppConfigSource = remoteSource,
         localAppConfigSource = localSource,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/mapping/CWAConfigMapperTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/mapping/CWAConfigMapperTest.kt
index 3e6b7ec3187450d1410836ad1928536ce90887af..58bdfad97231049d9d81f4230dec6318350163b9 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/mapping/CWAConfigMapperTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/mapping/CWAConfigMapperTest.kt
@@ -6,11 +6,9 @@ import de.rki.coronawarnapp.server.protocols.internal.v2.AppFeaturesOuterClass.A
 import de.rki.coronawarnapp.util.CWADebug
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.mockkObject
 import io.mockk.spyk
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -26,11 +24,6 @@ class CWAConfigMapperTest : BaseTest() {
         mockkObject(CWADebug)
     }
 
-    @AfterEach
-    fun tearDown() {
-        clearAllMocks()
-    }
-
     @Test
     fun `simple creation`() {
         val rawConfig = ApplicationConfigurationAndroid.newBuilder()
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/mapping/ConfigParserTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/mapping/ConfigParserTest.kt
index 87713174b430cf062b8cf1ca2540795f3baf31dd..46082ad4a64534c09ffb7b569c17bff9572ab56a 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/mapping/ConfigParserTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/mapping/ConfigParserTest.kt
@@ -11,13 +11,11 @@ import io.kotest.assertions.throwables.shouldThrow
 import io.kotest.matchers.shouldBe
 import io.kotest.matchers.shouldNotBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockk
 import io.mockk.verifySequence
 import okio.ByteString.Companion.decodeHex
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -49,11 +47,6 @@ class ConfigParserTest : BaseTest() {
         appConfig180.exists() shouldBe true
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance(): ConfigParser = ConfigParser(
         cwaConfigMapper = cwaConfigMapper,
         keyDownloadConfigMapper = keyDownloadConfigMapper,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/fallback/DefaultAppConfigSanityCheck.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/fallback/DefaultAppConfigSanityCheck.kt
index 2a21d798e23c7a76a303650af05b6607037dbdeb..3c94d8afd20b5c09a3fe2d814ab60c77d98242af 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/fallback/DefaultAppConfigSanityCheck.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/fallback/DefaultAppConfigSanityCheck.kt
@@ -10,8 +10,6 @@ import io.kotest.assertions.throwables.shouldNotThrowAny
 import io.kotest.matchers.shouldBe
 import io.kotest.matchers.shouldNotBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
-import org.junit.After
 import org.junit.Before
 import org.junit.Test
 import org.junit.runner.RunWith
@@ -32,11 +30,6 @@ class DefaultAppConfigSanityCheck : BaseTest() {
         MockKAnnotations.init(this)
     }
 
-    @After
-    fun teardown() {
-        clearAllMocks()
-    }
-
     val context: Context
         get() = ApplicationProvider.getApplicationContext()
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/fallback/DefaultAppConfigSourceTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/fallback/DefaultAppConfigSourceTest.kt
index 9aaeca2fdb1435ce41d157ef3b1e97b4e399f86e..313f4cbca19208d229f306c3160cb26c4d3c00df 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/fallback/DefaultAppConfigSourceTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/fallback/DefaultAppConfigSourceTest.kt
@@ -8,7 +8,6 @@ import de.rki.coronawarnapp.appconfig.mapping.ConfigParser
 import io.kotest.assertions.throwables.shouldThrowAny
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
@@ -47,7 +46,6 @@ class DefaultAppConfigSourceTest : BaseIOTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         testDir.deleteRecursively()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/local/AppConfigStorageTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/local/AppConfigStorageTest.kt
index 1f0ebdfa6e71d241a6a36a12b7edc35a724b6eb2..a467ec05266ca7c1a591609744c1bccdcf991639 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/local/AppConfigStorageTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/local/AppConfigStorageTest.kt
@@ -6,7 +6,6 @@ import de.rki.coronawarnapp.util.TimeStamper
 import de.rki.coronawarnapp.util.serialization.SerializationModule
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockk
@@ -51,7 +50,6 @@ class AppConfigStorageTest : BaseIOTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         testDir.deleteRecursively()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/local/LocalAppConfigSourceTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/local/LocalAppConfigSourceTest.kt
index 9bf5c9ddfcc08815f9ca89db789cc042ce3eaa75..026e8d1d4a4e47d435e6959d421f46b2fde9ff58 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/local/LocalAppConfigSourceTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/local/LocalAppConfigSourceTest.kt
@@ -7,7 +7,6 @@ import de.rki.coronawarnapp.appconfig.mapping.ConfigParser
 import de.rki.coronawarnapp.util.TimeStamper
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerifyOrder
 import io.mockk.every
@@ -61,7 +60,6 @@ class LocalAppConfigSourceTest : BaseIOTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         testDir.deleteRecursively()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/remote/AppConfigApiTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/remote/AppConfigApiTest.kt
index 4cb3589217bff955a4c625a56a3d233a11e4c01c..7534816f002e9bb7318568e32601aaf1393fd0d4 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/remote/AppConfigApiTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/remote/AppConfigApiTest.kt
@@ -7,7 +7,6 @@ import de.rki.coronawarnapp.environment.download.DownloadCDNModule
 import de.rki.coronawarnapp.http.HttpModule
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.impl.annotations.MockK
 import kotlinx.coroutines.runBlocking
 import okhttp3.ConnectionSpec
@@ -40,7 +39,6 @@ class AppConfigApiTest : BaseIOTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         webServer.shutdown()
         testDir.deleteRecursively()
     }
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/remote/AppConfigServerTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/remote/AppConfigServerTest.kt
index 0aa04e4b6b92038d48dab5aba3af316771f600c8..f8e3b0aab6c770d062385704ee2ac01bd8803571 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/remote/AppConfigServerTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/remote/AppConfigServerTest.kt
@@ -11,7 +11,6 @@ import de.rki.coronawarnapp.util.security.VerificationKeys
 import io.kotest.assertions.throwables.shouldThrow
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
@@ -55,7 +54,6 @@ class AppConfigServerTest : BaseIOTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         testDir.deleteRecursively()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/remote/RemoteAppConfigSourceTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/remote/RemoteAppConfigSourceTest.kt
index 79f79fa9ef8f090edced1a5261976fffbaf9740b..0887d78cb8b9d9dce2e12548bcafe672bfcf6ffe 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/remote/RemoteAppConfigSourceTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/appconfig/sources/remote/RemoteAppConfigSourceTest.kt
@@ -8,7 +8,6 @@ import de.rki.coronawarnapp.appconfig.sources.local.AppConfigStorage
 import de.rki.coronawarnapp.util.TimeStamper
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.every
@@ -65,7 +64,6 @@ class RemoteAppConfigSourceTest : BaseIOTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         testDir.deleteRecursively()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/bugreporting/censors/DiaryLocationCensorTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/bugreporting/censors/DiaryLocationCensorTest.kt
index 991635564d0a71584e7d537bf9d00bc1ab022303..a02d2f73cd405b14179730df07f4083f4d47dd63 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/bugreporting/censors/DiaryLocationCensorTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/bugreporting/censors/DiaryLocationCensorTest.kt
@@ -6,7 +6,6 @@ import de.rki.coronawarnapp.contactdiary.storage.repo.ContactDiaryRepository
 import de.rki.coronawarnapp.util.CWADebug
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockk
@@ -34,7 +33,6 @@ class DiaryLocationCensorTest : BaseTest() {
     @AfterEach
     fun teardown() {
         QRCodeCensor.lastGUID = null
-        clearAllMocks()
     }
 
     private fun createInstance(scope: CoroutineScope) = DiaryLocationCensor(
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/bugreporting/censors/DiaryPersonCensorTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/bugreporting/censors/DiaryPersonCensorTest.kt
index fe731ed3e4c4ef4cd59280abc2fde2aedeae155f..44b46c3d8685a849216a9287fd01fda88a802d99 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/bugreporting/censors/DiaryPersonCensorTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/bugreporting/censors/DiaryPersonCensorTest.kt
@@ -6,7 +6,6 @@ import de.rki.coronawarnapp.contactdiary.storage.repo.ContactDiaryRepository
 import de.rki.coronawarnapp.util.CWADebug
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockk
@@ -34,7 +33,6 @@ class DiaryPersonCensorTest : BaseTest() {
     @AfterEach
     fun teardown() {
         QRCodeCensor.lastGUID = null
-        clearAllMocks()
     }
 
     private fun createInstance(scope: CoroutineScope) = DiaryPersonCensor(
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/bugreporting/censors/QRCodeCensorTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/bugreporting/censors/QRCodeCensorTest.kt
index 0fc7a543d5e765c5c3602fb9a8164fe5f0098089..617bad4cab1ae22191aafd4b5261b98c8f19ab8b 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/bugreporting/censors/QRCodeCensorTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/bugreporting/censors/QRCodeCensorTest.kt
@@ -4,7 +4,6 @@ import de.rki.coronawarnapp.bugreporting.debuglog.LogLine
 import de.rki.coronawarnapp.util.CWADebug
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.mockkObject
 import kotlinx.coroutines.test.runBlockingTest
@@ -28,7 +27,6 @@ class QRCodeCensorTest : BaseTest() {
     @AfterEach
     fun teardown() {
         QRCodeCensor.lastGUID = null
-        clearAllMocks()
     }
 
     private fun createInstance() = QRCodeCensor()
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/bugreporting/censors/RegistrationTokenCensorTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/bugreporting/censors/RegistrationTokenCensorTest.kt
index 89ae8cd1e09b62ee503265e982c0689567de44d7..08978e545feb1e462f8e81f139c65cc52b7e2394 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/bugreporting/censors/RegistrationTokenCensorTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/bugreporting/censors/RegistrationTokenCensorTest.kt
@@ -5,12 +5,10 @@ import de.rki.coronawarnapp.storage.LocalData
 import de.rki.coronawarnapp.util.CWADebug
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.mockkObject
 import io.mockk.verify
 import kotlinx.coroutines.test.runBlockingTest
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -30,11 +28,6 @@ class RegistrationTokenCensorTest : BaseTest() {
         every { LocalData.registrationToken() } returns testToken
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance() = RegistrationTokenCensor()
 
     @Test
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/bugreporting/debuglog/DebugLoggerTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/bugreporting/debuglog/DebugLoggerTest.kt
index addaad19d1a7f7fad078a00a646082be36867d40..9824c5645efe5e565314e6df7906e72f33644a73 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/bugreporting/debuglog/DebugLoggerTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/bugreporting/debuglog/DebugLoggerTest.kt
@@ -8,7 +8,6 @@ import de.rki.coronawarnapp.util.di.ApplicationComponent
 import io.kotest.matchers.shouldBe
 import io.kotest.matchers.shouldNotBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockkObject
@@ -55,7 +54,6 @@ class DebugLoggerTest : BaseIOTest() {
     fun teardown() {
         runBlocking { DebugLogger.stop() }
         testDir.deleteRecursively()
-        clearAllMocks()
         Timber.uprootAll()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/retention/ContactDiaryCleanTaskTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/retention/ContactDiaryCleanTaskTest.kt
index 1b13ca0562f26bdbced0742f631daf01f25d1284..847990207627eb0500f7aa7fab19d423d1a26526 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/retention/ContactDiaryCleanTaskTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/retention/ContactDiaryCleanTaskTest.kt
@@ -2,14 +2,12 @@ package de.rki.coronawarnapp.contactdiary.retention
 
 import io.kotest.matchers.shouldNotBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.coVerifyOrder
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockk
 import kotlinx.coroutines.test.runBlockingTest
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import org.junit.jupiter.api.assertThrows
@@ -28,11 +26,6 @@ class ContactDiaryCleanTaskTest : BaseTest() {
         coEvery { retentionCalculation.clearObsoleteRiskPerDate() } returns Unit
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance() = ContactDiaryCleanTask(
         retentionCalculation = retentionCalculation
     )
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/retention/ContactDiaryCleanWorkerTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/retention/ContactDiaryCleanWorkerTest.kt
index dbb0f02848fde33ba12537e5ec0eefbfe18c32f4..a919b427da6d87dff315bf0765af1d5dad755b1b 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/retention/ContactDiaryCleanWorkerTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/retention/ContactDiaryCleanWorkerTest.kt
@@ -4,10 +4,8 @@ import android.content.Context
 import androidx.work.WorkerParameters
 import de.rki.coronawarnapp.task.TaskController
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.impl.annotations.MockK
 import io.mockk.impl.annotations.RelaxedMockK
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -23,11 +21,6 @@ class ContactDiaryCleanWorkerTest : BaseTest() {
         MockKAnnotations.init(this)
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createWorker() = ContactDiaryRetentionWorker(
         context = context,
         workerParams = workerParams,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/retention/ContactDiaryDataRetentionCalculationTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/retention/ContactDiaryDataRetentionCalculationTest.kt
index c11f9e440598251fd58644a132b2981523046ddd..5c6e9b76f03f7c97d736b7c59bdaf73eb3b8b259 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/retention/ContactDiaryDataRetentionCalculationTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/retention/ContactDiaryDataRetentionCalculationTest.kt
@@ -9,7 +9,6 @@ import de.rki.coronawarnapp.server.protocols.internal.v2.RiskCalculationParamete
 import de.rki.coronawarnapp.util.TimeStamper
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.every
@@ -22,7 +21,6 @@ import kotlinx.coroutines.test.runBlockingTest
 import org.joda.time.DateTime
 import org.joda.time.Instant
 import org.joda.time.LocalDate
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -48,11 +46,6 @@ class ContactDiaryDataRetentionCalculationTest : BaseTest() {
         every { timeStamper.nowUTC } returns Instant.parse("2020-08-20T23:00:00.000Z")
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance() = ContactDiaryRetentionCalculation(
         timeStamper = timeStamper,
         repository = contactDiaryRepository,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/retention/ContactDiaryWorkBuilderTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/retention/ContactDiaryWorkBuilderTest.kt
index 8122dc1ec477993b202e3833d0c8cfc1e5fe9bab..1ae7c79598c59e84dbd76a5c0685ad4f9faf5043 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/retention/ContactDiaryWorkBuilderTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/retention/ContactDiaryWorkBuilderTest.kt
@@ -2,8 +2,6 @@ package de.rki.coronawarnapp.contactdiary.retention
 
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -15,11 +13,6 @@ class ContactDiaryWorkBuilderTest : BaseTest() {
         MockKAnnotations.init(this)
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     @Test
     fun `periodic work test`() {
         val periodicWork = ContactDiaryWorkBuilder().buildPeriodicWork()
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/retention/ContactDiaryWorkSchedulerTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/retention/ContactDiaryWorkSchedulerTest.kt
index bf9f2150e4b7907b5ae7320ad9d8c16ea8e3bfad..0bd5a76f4b1ce2e29ef686508a2f714af9e86984 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/retention/ContactDiaryWorkSchedulerTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/retention/ContactDiaryWorkSchedulerTest.kt
@@ -5,11 +5,9 @@ import androidx.work.Operation
 import androidx.work.PeriodicWorkRequest
 import androidx.work.WorkManager
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.verifySequence
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -34,11 +32,6 @@ class ContactDiaryWorkSchedulerTest : BaseTest() {
         } returns operation
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createScheduler() = ContactDiaryWorkScheduler(
         workManager = workManager,
         workBuilder = workBuilder
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/AnalyticsTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/AnalyticsTest.kt
index 8e0a287eea637195612554a584d13361ebb4e88c..a1b9812796d018fa5e09f415571e7fc4e87f6741 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/AnalyticsTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/AnalyticsTest.kt
@@ -21,7 +21,6 @@ import de.rki.coronawarnapp.util.TimeStamper
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.every
@@ -35,7 +34,6 @@ import kotlinx.coroutines.delay
 import kotlinx.coroutines.test.runBlockingTest
 import org.joda.time.Days
 import org.joda.time.Instant
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -82,11 +80,6 @@ class AnalyticsTest : BaseTest() {
         coEvery { dataDonationAnalyticsServer.uploadAnalyticsData(any()) } just Runs
     }
 
-    @AfterEach
-    fun tearDown() {
-        clearAllMocks()
-    }
-
     private fun createInstance(modules: Set<DonorModule> = setOf(exposureRiskMetadataDonor)) = spyk(
         Analytics(
             dataDonationAnalyticsServer = dataDonationAnalyticsServer,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/common/DistrictsTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/common/DistrictsTest.kt
index 92f921a58194c988fd66b9c74aa920c4493177df..159d478d85b3507040cfc23be02642158b6edd86 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/common/DistrictsTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/common/DistrictsTest.kt
@@ -7,9 +7,7 @@ import com.google.gson.Gson
 import de.rki.coronawarnapp.server.protocols.internal.ppdd.PpaData
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import kotlinx.coroutines.test.runBlockingTest
-import org.junit.After
 import org.junit.Before
 import org.junit.Test
 import org.junit.runner.RunWith
@@ -27,11 +25,6 @@ class DistrictsTest : BaseTest() {
         MockKAnnotations.init(this)
     }
 
-    @After
-    fun tearDown() {
-        clearAllMocks()
-    }
-
     val context: Context
         get() = ApplicationProvider.getApplicationContext()
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/modules/ExposureRiskMetadataDonorTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/modules/ExposureRiskMetadataDonorTest.kt
index e035de7690afb38099a650787a634fd2d71d566b..8e65fb16cf165c58a2429ccf987cde6fba68609d 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/modules/ExposureRiskMetadataDonorTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/modules/ExposureRiskMetadataDonorTest.kt
@@ -11,13 +11,11 @@ import de.rki.coronawarnapp.server.protocols.internal.ppdd.PpaData
 import de.rki.coronawarnapp.util.TimeAndDateExtensions.seconds
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockk
 import kotlinx.coroutines.flow.flowOf
 import org.joda.time.Instant
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -42,11 +40,6 @@ class ExposureRiskMetadataDonorTest : BaseTest() {
         every { lowAggregatedRiskResult.mostRecentDateWithHighRisk } returns baseDate
     }
 
-    @AfterEach
-    fun tearDown() {
-        clearAllMocks()
-    }
-
     private fun createRiskLevelResult(
         aggregatedRiskResult: AggregatedRiskResult?,
         failureReason: RiskLevelResult.FailureReason?,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/modules/clientmetadata/ClientMetadataDonorTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/modules/clientmetadata/ClientMetadataDonorTest.kt
index 7ab9baac100d97da81b068a3cd71d9d625e2f50e..d138fd418f6b82c28667e3cde3b2ba9a09871817 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/modules/clientmetadata/ClientMetadataDonorTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/modules/clientmetadata/ClientMetadataDonorTest.kt
@@ -9,14 +9,12 @@ import de.rki.coronawarnapp.server.protocols.internal.ppdd.PpaData
 import de.rki.coronawarnapp.util.ApiLevel
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockk
 import io.mockk.mockkObject
 import kotlinx.coroutines.flow.flowOf
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -51,11 +49,6 @@ class ClientMetadataDonorTest : BaseTest() {
         coEvery { enfClient.getENFClientVersion() } returns enfVersion
     }
 
-    @AfterEach
-    fun tearDown() {
-        clearAllMocks()
-    }
-
     private fun createInstance() = ClientMetadataDonor(
         apiLevel = apiLevel,
         appConfigProvider = appConfigProvider,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/server/DataDonationAnalyticsApiV1Test.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/server/DataDonationAnalyticsApiV1Test.kt
index 7aa3703f0b698b2ec619fb0e5af5e9105c18387b..4ad0a1d39939ce6030534824324236876f3d3ec0 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/server/DataDonationAnalyticsApiV1Test.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/server/DataDonationAnalyticsApiV1Test.kt
@@ -7,7 +7,6 @@ import de.rki.coronawarnapp.server.protocols.internal.ppdd.PpaDataRequestAndroid
 import de.rki.coronawarnapp.server.protocols.internal.ppdd.PpacAndroid
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import kotlinx.coroutines.runBlocking
 import okhttp3.mockwebserver.MockResponse
 import okhttp3.mockwebserver.MockWebServer
@@ -33,7 +32,6 @@ class DataDonationAnalyticsApiV1Test : BaseTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         webServer.shutdown()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/server/DataDonationAnalyticsServerTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/server/DataDonationAnalyticsServerTest.kt
index 6010d15341d75818586056a86a9944e1b36d1890..3ba9ea692a198716debf8974de4779edc5436dba 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/server/DataDonationAnalyticsServerTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/server/DataDonationAnalyticsServerTest.kt
@@ -6,7 +6,6 @@ import de.rki.coronawarnapp.server.protocols.internal.ppdd.PpaDataRequestAndroid
 import de.rki.coronawarnapp.server.protocols.internal.ppdd.PpacAndroid
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.every
@@ -47,7 +46,6 @@ class DataDonationAnalyticsServerTest : BaseTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         webServer.shutdown()
         testDir.deleteRecursively()
     }
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/ui/AnalyticsSettingsTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/ui/AnalyticsSettingsTest.kt
index cecf1aedd7ff9f5033ec681b16848eba392f3ff7..efd12e5c4db0349c24abdb0874b4be883eb6a90e 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/ui/AnalyticsSettingsTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/ui/AnalyticsSettingsTest.kt
@@ -5,10 +5,8 @@ import de.rki.coronawarnapp.datadonation.analytics.storage.AnalyticsSettings
 import de.rki.coronawarnapp.server.protocols.internal.ppdd.PpaData
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -26,11 +24,6 @@ class AnalyticsSettingsTest : BaseTest() {
         every { context.getSharedPreferences("analytics_localdata", Context.MODE_PRIVATE) } returns preferences
     }
 
-    @AfterEach
-    fun tearDown() {
-        clearAllMocks()
-    }
-
     fun createInstance() = AnalyticsSettings(
         context = context
     )
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/ui/input/AnalyticsUserInputViewModelTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/ui/input/AnalyticsUserInputViewModelTest.kt
index 2577804443cbab315430a1e11c32c068acdabecb..2dddc1558106d463abedc050243f8312b3fda310 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/ui/input/AnalyticsUserInputViewModelTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/analytics/ui/input/AnalyticsUserInputViewModelTest.kt
@@ -8,13 +8,11 @@ import de.rki.coronawarnapp.server.protocols.internal.ppdd.PpaData.PPAAgeGroup
 import de.rki.coronawarnapp.server.protocols.internal.ppdd.PpaData.PPAFederalState
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockk
 import kotlinx.coroutines.CoroutineScope
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import org.junit.jupiter.api.extension.ExtendWith
@@ -48,11 +46,6 @@ class AnalyticsUserInputViewModelTest : BaseTest() {
         coEvery { districtsSource.loadDistricts() } returns emptyList()
     }
 
-    @AfterEach
-    fun tearDown() {
-        clearAllMocks()
-    }
-
     fun createInstance(
         inputType: InputType,
         scope: CoroutineScope
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/safetynet/AttestationContainerTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/safetynet/AttestationContainerTest.kt
index c631543b7dd465d385b66fb91ecbad1280204990..e5e424f5a18b54d05766f22529f5402d302aad09 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/safetynet/AttestationContainerTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/safetynet/AttestationContainerTest.kt
@@ -7,8 +7,6 @@ import io.kotest.assertions.throwables.shouldNotThrowAny
 import io.kotest.assertions.throwables.shouldThrow
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -20,11 +18,6 @@ class AttestationContainerTest : BaseTest() {
         MockKAnnotations.init(this)
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun create(rawJson: String) = AttestationContainer(
         ourSalt = ByteArray(16),
         report = SafetyNetClientWrapper.Report(
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/safetynet/CWASafetyNetTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/safetynet/CWASafetyNetTest.kt
index 9b04b9a50707d5d219c25e3f941be2bd0b5bcea7..45debcbe03e1a8677e5a02cbeb8a92856c899910 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/safetynet/CWASafetyNetTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/safetynet/CWASafetyNetTest.kt
@@ -18,7 +18,6 @@ import io.kotest.assertions.throwables.shouldNotThrowAny
 import io.kotest.assertions.throwables.shouldThrow
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.every
@@ -29,7 +28,6 @@ import kotlinx.coroutines.test.runBlockingTest
 import okio.ByteString.Companion.decodeBase64
 import org.joda.time.Duration
 import org.joda.time.Instant
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -89,11 +87,6 @@ class CWASafetyNetTest : BaseTest() {
         every { testSettings.skipSafetyNetTimeCheck } returns mockFlowPreference(false)
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance() = CWASafetyNet(
         context = context,
         client = safetyNetClientWrapper,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/safetynet/SafetyNetClientWrapperTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/safetynet/SafetyNetClientWrapperTest.kt
index 707950e24843cceaa4a085088aa593da6e8c4961..02fca82d191a04e0192e3e75724cd83b4198936a 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/safetynet/SafetyNetClientWrapperTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/safetynet/SafetyNetClientWrapperTest.kt
@@ -12,7 +12,6 @@ import io.kotest.matchers.shouldBe
 import io.kotest.matchers.types.instanceOf
 import io.mockk.Called
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.verify
@@ -20,7 +19,6 @@ import kotlinx.coroutines.TimeoutCancellationException
 import kotlinx.coroutines.async
 import kotlinx.coroutines.test.runBlockingTest
 import okio.ByteString.Companion.decodeBase64
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -43,11 +41,6 @@ class SafetyNetClientWrapperTest : BaseTest() {
         every { report.jwsResult } returns JWS_BASE64
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance() = SafetyNetClientWrapper(
         safetyNetClient,
         environmentSetup
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/storage/OTPRepositoryTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/storage/OTPRepositoryTest.kt
index 63d916e3d870042c220ad1c6cfe0e38ee34f58c1..08a05cafd8fbc171104bac308e62b1c05838ab89 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/storage/OTPRepositoryTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/storage/OTPRepositoryTest.kt
@@ -8,11 +8,9 @@ import de.rki.coronawarnapp.datadonation.survey.SurveySettings
 import io.kotest.matchers.shouldBe
 import io.kotest.matchers.shouldNotBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import org.joda.time.Instant
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -29,11 +27,6 @@ class OTPRepositoryTest : BaseTest() {
         MockKAnnotations.init(this)
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     @Test
     fun `last otp is read from preferences`() {
         val uuid = UUID.fromString("e103c755-0975-4588-a639-d0cd1ba421a0")
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/survey/SurveySettingsTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/survey/SurveySettingsTest.kt
index 6fd1b7161a4109a3cc916257aa5cac7da5627207..cb10d10b7f78facd05264c47238e51a71e76050b 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/survey/SurveySettingsTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/survey/SurveySettingsTest.kt
@@ -8,11 +8,9 @@ import de.rki.coronawarnapp.util.serialization.SerializationModule
 import io.kotest.matchers.shouldBe
 import io.kotest.matchers.shouldNotBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import org.joda.time.Instant
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -34,11 +32,6 @@ class SurveySettingsTest : BaseTest() {
         every { context.getSharedPreferences("survey_localdata", Context.MODE_PRIVATE) } returns preferences
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     @Test
     fun `load and deserialize otp json`() {
         val instance = SurveySettings(context, baseGson)
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/survey/SurveyUrlProviderTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/survey/SurveyUrlProviderTest.kt
index e1b94f13532190b642d93a7b161ce1775f79cea1..c12cda95a5ffb7fb0bde62c30659c60d29a96095 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/survey/SurveyUrlProviderTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/survey/SurveyUrlProviderTest.kt
@@ -4,12 +4,10 @@ import de.rki.coronawarnapp.appconfig.AppConfigProvider
 import io.kotest.assertions.throwables.shouldThrow
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.impl.annotations.MockK
 import kotlinx.coroutines.test.runBlockingTest
 import okhttp3.HttpUrl.Companion.toHttpUrl
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import java.util.UUID
@@ -24,11 +22,6 @@ internal class SurveyUrlProviderTest {
         coEvery { appConfigProvider.getAppConfig().survey.otpQueryParameterName } returns "queryParamNameOtp"
     }
 
-    @AfterEach
-    fun tearDown() {
-        clearAllMocks()
-    }
-
     private fun createInstance() = SurveyUrlProvider(
         appConfigProvider
     )
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/survey/server/SurveyApiV1Test.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/survey/server/SurveyApiV1Test.kt
index da75574ae2ee38a9616da321020f1a8ccdc85661..4dbb9a864e1e0f5082dbabcdfdfe584ba5b2c12f 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/survey/server/SurveyApiV1Test.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/survey/server/SurveyApiV1Test.kt
@@ -9,7 +9,6 @@ import de.rki.coronawarnapp.server.protocols.internal.ppdd.PpacAndroid
 import io.kotest.assertions.throwables.shouldThrowAny
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import kotlinx.coroutines.runBlocking
 import okhttp3.mockwebserver.MockResponse
 import okhttp3.mockwebserver.MockWebServer
@@ -37,7 +36,6 @@ class SurveyApiV1Test : BaseTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         webServer.shutdown()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/survey/server/SurveyServerTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/survey/server/SurveyServerTest.kt
index 2c771547afe50c5df249d25110b0b95ccdd649a6..244df491e9149460c18bc548339b4c7f3cd306b1 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/survey/server/SurveyServerTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/datadonation/survey/server/SurveyServerTest.kt
@@ -10,14 +10,12 @@ import de.rki.coronawarnapp.server.protocols.internal.ppdd.PpacAndroid
 import io.kotest.assertions.throwables.shouldThrow
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import kotlinx.coroutines.runBlocking
 import okio.ByteString.Companion.decodeBase64
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -37,11 +35,6 @@ class SurveyServerTest : BaseTest() {
         every { attestationResult.accessControlProtoBuf } returns build
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     @Test
     fun `valid otp`() = runBlocking {
         val server = SurveyServer(surveyApi = { surveyApi }, TestDispatcherProvider())
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/deadman/DeadmanNotificationOneTimeWorkerTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/deadman/DeadmanNotificationOneTimeWorkerTest.kt
index 3455d8b824e70954665f16e270e3caec8b09ce60..86c740b0658abf682ad451a6b46eb9df47ba3249 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/deadman/DeadmanNotificationOneTimeWorkerTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/deadman/DeadmanNotificationOneTimeWorkerTest.kt
@@ -5,13 +5,11 @@ import androidx.work.WorkerParameters
 import de.rki.coronawarnapp.worker.BackgroundConstants
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coVerify
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.impl.annotations.RelaxedMockK
 import kotlinx.coroutines.test.runBlockingTest
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -27,11 +25,6 @@ class DeadmanNotificationOneTimeWorkerTest : BaseTest() {
         MockKAnnotations.init(this)
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createWorker() = DeadmanNotificationOneTimeWorker(
         context = context,
         workerParams = workerParams,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/deadman/DeadmanNotificationPeriodicWorkerTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/deadman/DeadmanNotificationPeriodicWorkerTest.kt
index bc53f70fe193dcdf601b01cfd131231f57c6f6d1..0e3fb42fa983bac0d3d171d89e9760b2cf92fa28 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/deadman/DeadmanNotificationPeriodicWorkerTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/deadman/DeadmanNotificationPeriodicWorkerTest.kt
@@ -5,13 +5,11 @@ import androidx.work.WorkerParameters
 import de.rki.coronawarnapp.worker.BackgroundConstants
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coVerify
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.impl.annotations.RelaxedMockK
 import kotlinx.coroutines.test.runBlockingTest
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -27,11 +25,6 @@ class DeadmanNotificationPeriodicWorkerTest : BaseTest() {
         MockKAnnotations.init(this)
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createWorker() = DeadmanNotificationPeriodicWorker(
         context = context,
         workerParams = workerParams,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/deadman/DeadmanNotificationSchedulerTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/deadman/DeadmanNotificationSchedulerTest.kt
index dbc88ecd17c1b26a8084003cf46884b913f5f856..27cb96a8fa562b02fb40c6561e53bdfe3397c7bf 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/deadman/DeadmanNotificationSchedulerTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/deadman/DeadmanNotificationSchedulerTest.kt
@@ -7,14 +7,12 @@ import androidx.work.Operation
 import androidx.work.PeriodicWorkRequest
 import androidx.work.WorkManager
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.verify
 import io.mockk.verifySequence
 import kotlinx.coroutines.test.runBlockingTest
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -50,11 +48,6 @@ class DeadmanNotificationSchedulerTest : BaseTest() {
         } returns operation
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createScheduler() = DeadmanNotificationScheduler(
         timeCalculation = timeCalculation,
         workManager = workManager,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/deadman/DeadmanNotificationSenderTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/deadman/DeadmanNotificationSenderTest.kt
index afd8f0cd37ab40bb9b4b3c6bc60bea725b95c72f..9da60b2abd8089199453317475c466dec6837578 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/deadman/DeadmanNotificationSenderTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/deadman/DeadmanNotificationSenderTest.kt
@@ -5,9 +5,7 @@ import de.rki.coronawarnapp.notification.NotificationHelper
 import de.rki.coronawarnapp.util.device.ForegroundState
 import io.kotest.assertions.throwables.shouldNotThrowAny
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.impl.annotations.MockK
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -23,11 +21,6 @@ class DeadmanNotificationSenderTest : BaseTest() {
         MockKAnnotations.init(this)
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createSender() = DeadmanNotificationSender(
         context = context,
         foregroundState = foregroundState,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/deadman/DeadmanNotificationTimeCalculationTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/deadman/DeadmanNotificationTimeCalculationTest.kt
index a446d6e317bf97f5cd42e8d234447c8bfc651bb9..f83e9638910e3534e3ccbd7f9549a569615b5803 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/deadman/DeadmanNotificationTimeCalculationTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/deadman/DeadmanNotificationTimeCalculationTest.kt
@@ -5,14 +5,12 @@ import de.rki.coronawarnapp.nearby.modules.detectiontracker.TrackedExposureDetec
 import de.rki.coronawarnapp.util.TimeStamper
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.verify
 import kotlinx.coroutines.flow.flowOf
 import kotlinx.coroutines.test.runBlockingTest
 import org.joda.time.Instant
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -30,11 +28,6 @@ class DeadmanNotificationTimeCalculationTest : BaseTest() {
         every { enfClient.lastSuccessfulTrackedExposureDetection() } returns flowOf(mockExposureDetection)
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createTimeCalculator() = DeadmanNotificationTimeCalculation(
         timeStamper = timeStamper,
         enfClient = enfClient
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/deadman/DeadmanNotificationWorkBuilderTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/deadman/DeadmanNotificationWorkBuilderTest.kt
index d7ca037ee3c5ea6416020ae6dd9c7a035e8c71b6..ab0908d25ecbd98d7a2205fff2b3d882438bd680 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/deadman/DeadmanNotificationWorkBuilderTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/deadman/DeadmanNotificationWorkBuilderTest.kt
@@ -3,8 +3,6 @@ package de.rki.coronawarnapp.deadman
 import androidx.work.BackoffPolicy
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -16,11 +14,6 @@ class DeadmanNotificationWorkBuilderTest : BaseTest() {
         MockKAnnotations.init(this)
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     @Test
     fun `onetime work test`() {
         testOneTimeWork(10L)
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/DownloadDiagnosisKeysSettingsTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/DownloadDiagnosisKeysSettingsTest.kt
index 44f67e089885700329b608a9d448f36ce2b8609f..3e03c747455383b9107962365ddff89db8dff83a 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/DownloadDiagnosisKeysSettingsTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/DownloadDiagnosisKeysSettingsTest.kt
@@ -9,11 +9,9 @@ import de.rki.coronawarnapp.environment.BuildConfigWrap
 import de.rki.coronawarnapp.util.serialization.SerializationModule
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockkObject
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -34,11 +32,6 @@ class DownloadDiagnosisKeysSettingsTest : BaseTest() {
         mockkObject(BuildConfigWrap)
     }
 
-    @AfterEach
-    fun tearDown() {
-        clearAllMocks()
-    }
-
     fun createInstance() = DownloadDiagnosisKeysSettings(
         context = context,
         gson = baseGson
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/download/BaseKeyPackageSyncToolTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/download/BaseKeyPackageSyncToolTest.kt
index 1113f850fdbccf9aa39ddf50cdb728decc09e76c..dffa96ec0adf34dbe033aa70933acd313b79d031 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/download/BaseKeyPackageSyncToolTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/download/BaseKeyPackageSyncToolTest.kt
@@ -9,7 +9,6 @@ import de.rki.coronawarnapp.storage.DeviceStorage
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.every
@@ -49,7 +48,6 @@ class BaseKeyPackageSyncToolTest : BaseIOTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         testDir.deleteRecursively()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/download/CommonSyncToolTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/download/CommonSyncToolTest.kt
index d0631b5e21fa6dda6dbe9dbdebc233b371df44d3..29b079f8ecc87ec5a3ef5ac93f880db3a5bd9058 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/download/CommonSyncToolTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/download/CommonSyncToolTest.kt
@@ -11,7 +11,6 @@ import de.rki.coronawarnapp.storage.DeviceStorage
 import de.rki.coronawarnapp.util.TimeStamper
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
@@ -99,7 +98,6 @@ abstract class CommonSyncToolTest : BaseIOTest() {
 
     @AfterEach
     open fun teardown() {
-        clearAllMocks()
         testDir.deleteRecursively()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/download/DownloadDiagnosisKeysTaskTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/download/DownloadDiagnosisKeysTaskTest.kt
index df2e2ce3dae0471911328808e994e452581ab29a..6e4b58f4d948b2a8937bf192edfa96af3c03e410 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/download/DownloadDiagnosisKeysTaskTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/download/DownloadDiagnosisKeysTaskTest.kt
@@ -12,7 +12,6 @@ import de.rki.coronawarnapp.storage.LocalData
 import de.rki.coronawarnapp.util.TimeStamper
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.coVerifySequence
@@ -25,7 +24,6 @@ import kotlinx.coroutines.flow.flowOf
 import kotlinx.coroutines.test.runBlockingTest
 import org.joda.time.Duration
 import org.joda.time.Instant
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -97,11 +95,6 @@ class DownloadDiagnosisKeysTaskTest : BaseTest() {
         }
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     fun createInstance() = DownloadDiagnosisKeysTask(
         enfClient = enfClient,
         environmentSetup = environmentSetup,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/download/KeyDownloadToolTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/download/KeyDownloadToolTest.kt
index a5d3b18682e4b3bbc471ccfc7380870002c7ed72..2e298c1046e4e24e77502e6d194404e0180cd480 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/download/KeyDownloadToolTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/download/KeyDownloadToolTest.kt
@@ -12,7 +12,6 @@ import io.kotest.assertions.throwables.shouldThrow
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.every
@@ -75,7 +74,6 @@ class KeyDownloadToolTest : BaseIOTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         testDir.deleteRecursively()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/download/KeyPackageSyncToolTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/download/KeyPackageSyncToolTest.kt
index 18a42f38981624f677ba2feefab59801f98bb30c..d9f99111c32864a4748d0726443379133c068b0c 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/download/KeyPackageSyncToolTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/download/KeyPackageSyncToolTest.kt
@@ -10,7 +10,6 @@ import de.rki.coronawarnapp.util.preferences.FlowPreference
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerifySequence
 import io.mockk.every
@@ -91,7 +90,6 @@ class KeyPackageSyncToolTest : BaseIOTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         testDir.deleteRecursively()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/server/DiagnosisKeyServerTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/server/DiagnosisKeyServerTest.kt
index fe045e4257bc6e4f954080b052a5bb027dc05642..b8bcea0d30d0ddaafc01e549687ba02501e9cdc6 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/server/DiagnosisKeyServerTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/server/DiagnosisKeyServerTest.kt
@@ -3,7 +3,6 @@ package de.rki.coronawarnapp.diagnosiskeys.server
 import dagger.Lazy
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.impl.annotations.MockK
@@ -36,7 +35,6 @@ class DiagnosisKeyServerTest : BaseIOTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         testDir.deleteRecursively()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/storage/KeyCacheRepositoryTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/storage/KeyCacheRepositoryTest.kt
index 2b1b205ee3cf4cf210243710d8d0cb3c200a3b71..9382e10b76f6e0728f334632240cfa600a94c459 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/storage/KeyCacheRepositoryTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/storage/KeyCacheRepositoryTest.kt
@@ -5,7 +5,6 @@ import de.rki.coronawarnapp.diagnosiskeys.server.LocationCode
 import de.rki.coronawarnapp.util.TimeStamper
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.every
@@ -56,7 +55,6 @@ class KeyCacheRepositoryTest : BaseIOTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         testDir.deleteRecursively()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/storage/legacy/LegacyKeyCacheMigrationTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/storage/legacy/LegacyKeyCacheMigrationTest.kt
index e1a33d271802f2e3c2ea47f4999ddb71666a6271..dcb966efcb0ac6e38f20c4c4fb0c80a8eb2b42b7 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/storage/legacy/LegacyKeyCacheMigrationTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/diagnosiskeys/storage/legacy/LegacyKeyCacheMigrationTest.kt
@@ -7,7 +7,6 @@ import de.rki.coronawarnapp.util.HashExtensions.hashToMD5
 import de.rki.coronawarnapp.util.TimeStamper
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.every
@@ -51,7 +50,6 @@ class LegacyKeyCacheMigrationTest : BaseIOTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         testDir.deleteRecursively()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/environment/EnvironmentSetupTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/environment/EnvironmentSetupTest.kt
index bbc54b9bc56291063eb689696b475c8f7b4e98b2..d3eb6d4aed8530a325264a5c608bd4e91fc4c2ca 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/environment/EnvironmentSetupTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/environment/EnvironmentSetupTest.kt
@@ -7,11 +7,9 @@ import de.rki.coronawarnapp.util.serialization.SerializationModule
 import io.kotest.assertions.throwables.shouldThrow
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockkObject
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -38,11 +36,6 @@ class EnvironmentSetupTest : BaseTest() {
         } returns mockPreferences
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createEnvSetup() = EnvironmentSetup(
         context = context,
         gson = SerializationModule().baseGson()
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/http/playbook/DefaultPlaybookTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/http/playbook/DefaultPlaybookTest.kt
index 9e20b64292773c7eed2d104709fbe7a3cd438bad..f201b17a6ca1491684327a49d84ccbe5c096bc1c 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/http/playbook/DefaultPlaybookTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/http/playbook/DefaultPlaybookTest.kt
@@ -12,13 +12,11 @@ import io.kotest.assertions.throwables.shouldThrow
 import io.kotest.matchers.shouldBe
 import io.kotest.matchers.types.shouldBeInstanceOf
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerifySequence
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockk
 import kotlinx.coroutines.runBlocking
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -42,11 +40,6 @@ class DefaultPlaybookTest : BaseTest() {
         coEvery { submissionServer.submitKeysToServerFake() } returns mockk()
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createPlaybook() = DefaultPlaybook(
         verificationServer = verificationServer,
         submissionServer = submissionServer
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/main/MainActivityViewModelTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/main/MainActivityViewModelTest.kt
index 6fb7cf9737f5433564462c87b09bf8127c79fc90..1e15c104b00d5c4d273af764f67e0b857bc9e9f0 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/main/MainActivityViewModelTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/main/MainActivityViewModelTest.kt
@@ -8,11 +8,9 @@ import de.rki.coronawarnapp.util.CWADebug
 import de.rki.coronawarnapp.util.device.BackgroundModeStatus
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockkObject
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import org.junit.jupiter.api.extension.ExtendWith
@@ -39,11 +37,6 @@ class MainActivityViewModelTest : BaseTest() {
         every { environmentSetup.currentEnvironment } returns EnvironmentSetup.Type.WRU
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance(): MainActivityViewModel = MainActivityViewModel(
         dispatcherProvider = TestDispatcherProvider(),
         environmentSetup = environmentSetup,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/main/home/HomeFragmentViewModelTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/main/home/HomeFragmentViewModelTest.kt
index 0ffe699cec58e0430ac21977fba37fa706189f81..ca7c68ec638ac93377e58ba8e49ed4616a4236da 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/main/home/HomeFragmentViewModelTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/main/home/HomeFragmentViewModelTest.kt
@@ -2,8 +2,8 @@ package de.rki.coronawarnapp.main.home
 
 import android.content.Context
 import de.rki.coronawarnapp.appconfig.AppConfigProvider
-import de.rki.coronawarnapp.environment.BuildConfigWrap
 import de.rki.coronawarnapp.deadman.DeadmanNotificationScheduler
+import de.rki.coronawarnapp.environment.BuildConfigWrap
 import de.rki.coronawarnapp.main.CWASettings
 import de.rki.coronawarnapp.notification.ShareTestResultNotificationService
 import de.rki.coronawarnapp.risk.TimeVariables
@@ -27,7 +27,6 @@ import de.rki.coronawarnapp.util.security.EncryptionErrorResetTool
 import de.rki.coronawarnapp.util.shortcuts.AppShortcutsHelper
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.every
@@ -39,7 +38,6 @@ import kotlinx.coroutines.flow.emptyFlow
 import kotlinx.coroutines.flow.flow
 import kotlinx.coroutines.flow.flowOf
 import kotlinx.coroutines.runBlocking
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import org.junit.jupiter.api.extension.ExtendWith
@@ -85,11 +83,6 @@ class HomeFragmentViewModelTest : BaseTest() {
         coEvery { statisticsProvider.current } returns emptyFlow()
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance(): HomeFragmentViewModel = HomeFragmentViewModel(
         dispatcherProvider = TestDispatcherProvider(),
         errorResetTool = errorResetTool,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/ENFClientTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/ENFClientTest.kt
index 871fef17e78b7c7babf426bb3ab56652b1222f3d..244a4e2666dc899b6a00892532ce35c6f7e6333b 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/ENFClientTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/ENFClientTest.kt
@@ -14,7 +14,6 @@ import de.rki.coronawarnapp.nearby.modules.version.ENFVersion
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.coVerifySequence
@@ -28,7 +27,6 @@ import kotlinx.coroutines.flow.flowOf
 import kotlinx.coroutines.flow.toList
 import kotlinx.coroutines.runBlocking
 import org.joda.time.Instant
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -53,11 +51,6 @@ class ENFClientTest : BaseTest() {
         every { exposureDetectionTracker.trackNewExposureDetection(any()) } just Runs
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createClient() = ENFClient(
         googleENFClient = googleENFClient,
         diagnosisKeyProvider = diagnosisKeyProvider,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/detectiontracker/DefaultExposureDetectionTrackerTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/detectiontracker/DefaultExposureDetectionTrackerTest.kt
index 823cee90f26d89f9abf72762878b116fead30ea1..ac05c1a13af89e5b79022f34f64850b98fb286fc 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/detectiontracker/DefaultExposureDetectionTrackerTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/detectiontracker/DefaultExposureDetectionTrackerTest.kt
@@ -9,7 +9,6 @@ import io.mockk.Called
 import io.mockk.MockKAnnotations
 import io.mockk.Ordering
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.every
@@ -22,7 +21,6 @@ import kotlinx.coroutines.flow.flowOf
 import kotlinx.coroutines.test.runBlockingTest
 import org.joda.time.Duration
 import org.joda.time.Instant
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -49,11 +47,6 @@ class DefaultExposureDetectionTrackerTest : BaseTest() {
         every { appConfigData.overallDetectionTimeout } returns Duration.standardMinutes(15)
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance(scope: CoroutineScope) = DefaultExposureDetectionTracker(
         scope = scope,
         dispatcherProvider = TestDispatcherProvider(),
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/detectiontracker/ExposureDetectionTrackerStorageTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/detectiontracker/ExposureDetectionTrackerStorageTest.kt
index a8557130830adcc771cc40661a9570849627a20d..0468586635bbf007837aaeb64daefacec9a88c3e 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/detectiontracker/ExposureDetectionTrackerStorageTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/detectiontracker/ExposureDetectionTrackerStorageTest.kt
@@ -6,7 +6,6 @@ import de.rki.coronawarnapp.util.serialization.SerializationModule
 import de.rki.coronawarnapp.util.serialization.fromJson
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import kotlinx.coroutines.test.runBlockingTest
@@ -79,7 +78,6 @@ class ExposureDetectionTrackerStorageTest : BaseIOTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         testDir.deleteRecursively()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/detectiontracker/TrackedExposureDetectionTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/detectiontracker/TrackedExposureDetectionTest.kt
index d30014e3ca84e5d42ca202c4f4468c9ddf5025d7..e0ecd8151ea73bbf1468b39778576042a9f43d84 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/detectiontracker/TrackedExposureDetectionTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/detectiontracker/TrackedExposureDetectionTest.kt
@@ -2,9 +2,7 @@ package de.rki.coronawarnapp.nearby.modules.detectiontracker
 
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import org.joda.time.Instant
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -16,11 +14,6 @@ class TrackedExposureDetectionTest : BaseTest() {
         MockKAnnotations.init(this)
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     @Test
     fun `isCalculating flag depends on finishedAt`() {
         val initial = TrackedExposureDetection(
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/diagnosiskeyprovider/DefaultDiagnosisKeyProviderTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/diagnosiskeyprovider/DefaultDiagnosisKeyProviderTest.kt
index 034c9d9e36c38cd3c0de667fcc78aa61fc4335c1..82f99876f412817e96cae6c7ce475717c16e5f06 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/diagnosiskeyprovider/DefaultDiagnosisKeyProviderTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/diagnosiskeyprovider/DefaultDiagnosisKeyProviderTest.kt
@@ -9,7 +9,6 @@ import io.kotest.matchers.shouldBe
 import io.mockk.Called
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.coVerifySequence
@@ -18,7 +17,6 @@ import io.mockk.just
 import io.mockk.mockk
 import kotlinx.coroutines.runBlocking
 import kotlinx.coroutines.test.runBlockingTest
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import org.junit.jupiter.api.assertThrows
@@ -49,11 +47,6 @@ class DefaultDiagnosisKeyProviderTest : BaseTest() {
         coEvery { enfVersion.requireMinimumVersion(any()) } returns Unit
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createProvider() = DefaultDiagnosisKeyProvider(
         enfVersion = enfVersion,
         submissionQuota = submissionQuota,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/diagnosiskeyprovider/SubmissionQuotaTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/diagnosiskeyprovider/SubmissionQuotaTest.kt
index 52c90fc86ad19a59195445262bde726331554c80..c6838610a7babe6eff94ce92b294d36ec93a73dc 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/diagnosiskeyprovider/SubmissionQuotaTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/diagnosiskeyprovider/SubmissionQuotaTest.kt
@@ -4,7 +4,6 @@ import de.rki.coronawarnapp.nearby.ENFClientLocalData
 import de.rki.coronawarnapp.util.TimeStamper
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coVerify
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
@@ -12,7 +11,6 @@ import io.mockk.verify
 import kotlinx.coroutines.runBlocking
 import org.joda.time.Duration
 import org.joda.time.Instant
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -48,11 +46,6 @@ class SubmissionQuotaTest : BaseTest() {
         every { timeStamper.nowUTC } returns Instant.parse("2020-08-01T23:00:00.000Z")
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createQuota() = SubmissionQuota(
         enfData = enfData,
         timeStamper = timeStamper
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/diagnosiskeysdatamapper/DefaultDiagnosisKeysDataMapperTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/diagnosiskeysdatamapper/DefaultDiagnosisKeysDataMapperTest.kt
index 188056cc3e4bc6e74515a34cc305ee1b268e1907..ffc63b2bb5c132d40a812a9f4d4f7cbea949864d 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/diagnosiskeysdatamapper/DefaultDiagnosisKeysDataMapperTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/diagnosiskeysdatamapper/DefaultDiagnosisKeysDataMapperTest.kt
@@ -7,11 +7,9 @@ import com.google.android.gms.nearby.exposurenotification.ReportType
 import de.rki.coronawarnapp.nearby.modules.diagnosiskeysdatamapper.DefaultDiagnosisKeysDataMapper.Companion.hasChanged
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.impl.annotations.MockK
 import io.mockk.verify
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -26,11 +24,6 @@ class DefaultDiagnosisKeysDataMapperTest : BaseTest() {
         MockKAnnotations.init(this)
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createMapper() = DefaultDiagnosisKeysDataMapper(
         client = googleENFClient
     )
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/tekhistory/DefaultTEKHistoryProviderTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/tekhistory/DefaultTEKHistoryProviderTest.kt
index 9d4aa696bf426187d313f2d46a45c2ae9a90c1f6..3202a9622b856686646335c54ddb2552484385d2 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/tekhistory/DefaultTEKHistoryProviderTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/tekhistory/DefaultTEKHistoryProviderTest.kt
@@ -17,7 +17,6 @@ import io.kotest.matchers.types.instanceOf
 import io.mockk.Called
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
@@ -29,7 +28,6 @@ import io.mockk.verifyOrder
 import kotlinx.coroutines.TimeoutCancellationException
 import kotlinx.coroutines.async
 import kotlinx.coroutines.test.runBlockingTest
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -98,11 +96,6 @@ class DefaultTEKHistoryProviderTest : BaseTest() {
         every { client.requestPreAuthorizedTemporaryExposureKeyRelease() } answers { MockGMSTask.forValue(null) }
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance() = DefaultTEKHistoryProvider(
         client = client,
         enfVersion = enfVersion,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/tracing/DefaultTracingStatusTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/tracing/DefaultTracingStatusTest.kt
index 055c7212716093af3b127b12a8dc9546e42a52d3..a72581ca824c0513f308f8c3833727cb91d604b3 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/tracing/DefaultTracingStatusTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/tracing/DefaultTracingStatusTest.kt
@@ -4,7 +4,6 @@ import com.google.android.gms.nearby.exposurenotification.ExposureNotificationCl
 import io.kotest.matchers.shouldBe
 import io.mockk.Called
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.verify
@@ -13,7 +12,6 @@ import kotlinx.coroutines.delay
 import kotlinx.coroutines.flow.first
 import kotlinx.coroutines.flow.take
 import kotlinx.coroutines.flow.toList
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -32,11 +30,6 @@ class DefaultTracingStatusTest : BaseTest() {
         every { client.isEnabled } answers { MockGMSTask.forValue(true) }
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance(scope: CoroutineScope): DefaultTracingStatus = DefaultTracingStatus(
         client = client,
         scope = scope
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/version/DefaultENFVersionTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/version/DefaultENFVersionTest.kt
index 4eefa12543998090c7a0c4c510e0fc6f8b22e16d..1f0772086b5438d1ad205200718c03ff3f2a2b45 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/version/DefaultENFVersionTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/modules/version/DefaultENFVersionTest.kt
@@ -9,12 +9,10 @@ import io.kotest.assertions.throwables.shouldNotThrowAny
 import io.kotest.assertions.throwables.shouldThrow
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import kotlinx.coroutines.ExperimentalCoroutinesApi
 import kotlinx.coroutines.test.runBlockingTest
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -30,11 +28,6 @@ internal class DefaultENFVersionTest : BaseTest() {
         MockKAnnotations.init(this)
     }
 
-    @AfterEach
-    fun tearDown() {
-        clearAllMocks()
-    }
-
     fun createInstance() = DefaultENFVersion(
         client = client
     )
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/windows/ExposureWindowsCalculationTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/windows/ExposureWindowsCalculationTest.kt
index e56375ebb81f0aa772df5885b9ff5a8436088c19..0e88002d6c34e088b097b392a753296fd458b982 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/windows/ExposureWindowsCalculationTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/nearby/windows/ExposureWindowsCalculationTest.kt
@@ -25,7 +25,6 @@ import io.kotest.matchers.ints.shouldBeGreaterThan
 import io.kotest.matchers.shouldBe
 import io.kotest.matchers.shouldNotBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
@@ -35,7 +34,6 @@ import kotlinx.coroutines.runBlocking
 import org.joda.time.DateTimeConstants
 import org.joda.time.Duration
 import org.joda.time.Instant
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -71,11 +69,6 @@ class ExposureWindowsCalculationTest : BaseTest() {
         every { timeStamper.nowUTC } returns Instant.now()
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun debugLog(s: String, toShow: LogLevel = LogLevel.ALL) {
         if (logLevel < toShow)
             return
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/notification/TestResultAvailableNotificationServiceTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/notification/TestResultAvailableNotificationServiceTest.kt
index 91747a3dab31ec5ad02a41062c03e3641aa3b360..2a50eb7dbe82515e9f01165e50d1a1314fb99dcb 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/notification/TestResultAvailableNotificationServiceTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/notification/TestResultAvailableNotificationServiceTest.kt
@@ -12,7 +12,6 @@ import de.rki.coronawarnapp.util.formatter.TestResult
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
@@ -22,12 +21,12 @@ import io.mockk.verify
 import io.mockk.verifyOrder
 import kotlinx.coroutines.flow.flow
 import kotlinx.coroutines.test.runBlockingTest
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
+import testhelpers.BaseTest
 import javax.inject.Provider
 
-class TestResultAvailableNotificationServiceTest {
+class TestResultAvailableNotificationServiceTest : BaseTest() {
 
     @MockK(relaxed = true) lateinit var context: Context
     @MockK lateinit var foregroundState: ForegroundState
@@ -51,11 +50,6 @@ class TestResultAvailableNotificationServiceTest {
         every { LocalData.isNotificationsTestEnabled } returns true
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     fun createInstance() = TestResultAvailableNotificationService(
         context = context,
         foregroundState = foregroundState,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/receiver/ExposureStateUpdateReceiverTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/receiver/ExposureStateUpdateReceiverTest.kt
index 8294b345482db09178e896662bf04d62084e450c..f7470d34262d57966ff1c69d5dd3d588713a9681 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/receiver/ExposureStateUpdateReceiverTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/receiver/ExposureStateUpdateReceiverTest.kt
@@ -13,7 +13,6 @@ import de.rki.coronawarnapp.nearby.modules.detectiontracker.TrackedExposureDetec
 import de.rki.coronawarnapp.util.di.AppInjector
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.just
@@ -21,7 +20,6 @@ import io.mockk.mockk
 import io.mockk.mockkObject
 import io.mockk.verifySequence
 import kotlinx.coroutines.test.TestCoroutineScope
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -71,11 +69,6 @@ class ExposureStateUpdateReceiverTest : BaseTest() {
         every { exposureDetectionTracker.finishExposureDetection(any(), any()) } just Runs
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     @Test
     fun `updated state intent`() {
         every { intent.action } returns ExposureNotificationClient.ACTION_EXPOSURE_STATE_UPDATED
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/risk/RiskLevelChangeDetectorTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/risk/RiskLevelChangeDetectorTest.kt
index e52889264f69a786dafdb546b03fbfbed7cc5f7f..9ec5698f0d5b0529d2aff62a4fea3b64333d9c6b 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/risk/RiskLevelChangeDetectorTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/risk/RiskLevelChangeDetectorTest.kt
@@ -17,7 +17,6 @@ import io.kotest.matchers.shouldBe
 import io.mockk.Called
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerifySequence
 import io.mockk.every
@@ -28,7 +27,6 @@ import kotlinx.coroutines.CoroutineScope
 import kotlinx.coroutines.flow.flowOf
 import kotlinx.coroutines.test.runBlockingTest
 import org.joda.time.Instant
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -59,11 +57,6 @@ class RiskLevelChangeDetectorTest : BaseTest() {
         coEvery { surveys.resetSurvey(Surveys.Type.HIGH_RISK_ENCOUNTER) } just Runs
     }
 
-    @AfterEach
-    fun tearDown() {
-        clearAllMocks()
-    }
-
     private fun createRiskLevel(
         riskState: RiskState,
         calculatedAt: Instant = Instant.EPOCH
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/risk/RiskLevelTaskTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/risk/RiskLevelTaskTest.kt
index 2bd74acf5f2972b2660c73963e6ed35f02b5ca37..90681c6f37c0ab123d868c01a49116bfbc1890a1 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/risk/RiskLevelTaskTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/risk/RiskLevelTaskTest.kt
@@ -16,8 +16,8 @@ import de.rki.coronawarnapp.storage.LocalData
 import de.rki.coronawarnapp.task.Task
 import de.rki.coronawarnapp.task.TaskCancellationException
 import de.rki.coronawarnapp.util.TimeStamper
-import io.kotest.matchers.shouldBe
 import de.rki.coronawarnapp.util.device.BackgroundModeStatus
+import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
 import io.mockk.coEvery
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/risk/TimeVariablesTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/risk/TimeVariablesTest.kt
index 63d994fc6f370673354be7e87266fb3cdd594ad8..6d63bb5c88f981c0887a41f52afb2a220f8ba9c6 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/risk/TimeVariablesTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/risk/TimeVariablesTest.kt
@@ -6,8 +6,9 @@ import io.mockk.every
 import io.mockk.mockkObject
 import org.junit.Assert
 import org.junit.Test
+import testhelpers.BaseTest
 
-class TimeVariablesTest {
+class TimeVariablesTest : BaseTest() {
 
     @Test
     fun getDeactivationTracingMeasureThresholdTimeRange() {
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/risk/storage/BaseRiskLevelStorageTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/risk/storage/BaseRiskLevelStorageTest.kt
index 1447b8c324728688fac6d66c90b68d09cac1bba5..5e52b89da44898fd5a597fe4086b42bbaece898b 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/risk/storage/BaseRiskLevelStorageTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/risk/storage/BaseRiskLevelStorageTest.kt
@@ -20,7 +20,6 @@ import io.kotest.matchers.shouldNotBe
 import io.mockk.Called
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.every
@@ -35,7 +34,6 @@ import kotlinx.coroutines.flow.first
 import kotlinx.coroutines.flow.flowOf
 import kotlinx.coroutines.test.TestCoroutineScope
 import kotlinx.coroutines.test.runBlockingTest
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -74,11 +72,6 @@ class BaseRiskLevelStorageTest : BaseTest() {
         coEvery { aggregatedRiskPerDateResultDao.insertRisk(any()) } just Runs
     }
 
-    @AfterEach
-    fun tearDown() {
-        clearAllMocks()
-    }
-
     private fun createInstance(
         scope: CoroutineScope = TestCoroutineScope(),
         storedResultLimit: Int = 10,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/risk/storage/legacy/RiskLevelResultMigratorTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/risk/storage/legacy/RiskLevelResultMigratorTest.kt
index 3b95ea47cd3b7e0de90976cd3eb853be85c48d65..a122a3eb7803e4c21102283422944c4535625294 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/risk/storage/legacy/RiskLevelResultMigratorTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/risk/storage/legacy/RiskLevelResultMigratorTest.kt
@@ -6,12 +6,10 @@ import de.rki.coronawarnapp.risk.RiskState
 import de.rki.coronawarnapp.util.TimeStamper
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import kotlinx.coroutines.runBlocking
 import org.joda.time.Instant
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -30,11 +28,6 @@ class RiskLevelResultMigratorTest : BaseTest() {
         every { timeStamper.nowUTC } returns Instant.EPOCH.plus(1337)
     }
 
-    @AfterEach
-    fun tearDown() {
-        clearAllMocks()
-    }
-
     fun createInstance() = RiskLevelResultMigrator(
         timeStamper = timeStamper,
         encryptedPreferences = { mockPreferences },
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/service/submission/ScanResultTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/service/submission/ScanResultTest.kt
index 5669835c338bbe4d15683b6a62bcff189e66ed36..44bf60cc1340c0eaa3bfc20fd0484a0d7ce8ffd6 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/service/submission/ScanResultTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/service/submission/ScanResultTest.kt
@@ -7,8 +7,9 @@ import io.mockk.impl.annotations.MockK
 import io.mockk.mockkObject
 import org.junit.Before
 import org.junit.Test
+import testhelpers.BaseTest
 
-class ScanResultTest {
+class ScanResultTest : BaseTest() {
     private val guidUpperCase = "123456-12345678-1234-4DA7-B166-B86D85475064"
     private val guidLowerCase = "123456-12345678-1234-4da7-b166-b86d85475064"
     private val guidMixedCase = "123456-12345678-1234-4dA7-b166-B86d85475064"
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/service/submission/SubmissionServiceTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/service/submission/SubmissionServiceTest.kt
index e56a9d2e0cc587c44462086143c161c7a904e5f8..e58c535688d11c39bbb8504d9c379c220060a544 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/service/submission/SubmissionServiceTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/service/submission/SubmissionServiceTest.kt
@@ -7,18 +7,17 @@ import de.rki.coronawarnapp.util.formatter.TestResult
 import de.rki.coronawarnapp.verification.server.VerificationKeyType
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockkObject
 import kotlinx.coroutines.runBlocking
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
+import testhelpers.BaseTest
 
-class SubmissionServiceTest {
+class SubmissionServiceTest : BaseTest() {
 
     private val tan = "123456-12345678-1234-4DA7-B166-B86D85475064"
     private val guid = "123456-12345678-1234-4DA7-B166-B86D85475064"
@@ -39,11 +38,6 @@ class SubmissionServiceTest {
         submissionService = SubmissionService(mockPlaybook)
     }
 
-    @AfterEach
-    fun cleanUp() {
-        clearAllMocks()
-    }
-
     @Test
     fun registrationWithGUIDSucceeds() {
         coEvery {
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/statistics/StatisticsModuleTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/statistics/StatisticsModuleTest.kt
index 393a62e60ed3da9cff0af8ef0490c3e082124a6f..38ed7e98e1f482417b71ccba4ab8ee52f58fae3c 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/statistics/StatisticsModuleTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/statistics/StatisticsModuleTest.kt
@@ -4,7 +4,6 @@ import android.content.Context
 import io.kotest.assertions.throwables.shouldNotThrowAny
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import org.junit.jupiter.api.AfterEach
@@ -30,7 +29,6 @@ class StatisticsModuleTest : BaseIOTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         testDir.deleteRecursively()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/statistics/source/StatisticsAPIV1Test.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/statistics/source/StatisticsAPIV1Test.kt
index 62a262fa455d77f730648819dfd6996e4e81847d..516d86134f6a609ddfa458a27c57f961478bb49a 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/statistics/source/StatisticsAPIV1Test.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/statistics/source/StatisticsAPIV1Test.kt
@@ -5,7 +5,6 @@ import de.rki.coronawarnapp.http.HttpModule
 import de.rki.coronawarnapp.statistics.StatisticsModule
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import kotlinx.coroutines.runBlocking
 import okhttp3.ConnectionSpec
 import okhttp3.mockwebserver.MockResponse
@@ -36,7 +35,6 @@ class StatisticsAPIV1Test : BaseIOTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         webServer.shutdown()
         testDir.deleteRecursively()
     }
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/statistics/source/StatisticsParserTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/statistics/source/StatisticsParserTest.kt
index 1a176c5509e16b675de68181f3210bbfeb34fc3f..ad42ff4e535225bab9f440a607654cbd836b070b 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/statistics/source/StatisticsParserTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/statistics/source/StatisticsParserTest.kt
@@ -10,9 +10,7 @@ import de.rki.coronawarnapp.statistics.SevenDayRValue
 import de.rki.coronawarnapp.statistics.StatisticsData
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import org.joda.time.Instant
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -24,11 +22,6 @@ class StatisticsParserTest : BaseTest() {
         MockKAnnotations.init(this)
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance() = StatisticsParser()
 
     @Test
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/statistics/source/StatisticsProviderTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/statistics/source/StatisticsProviderTest.kt
index 78498114ab1ca2a2a273ffd4f0cd20e97b0a4f46..b69690a48cd256dfbb251e05122f587bcbe75292 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/statistics/source/StatisticsProviderTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/statistics/source/StatisticsProviderTest.kt
@@ -5,7 +5,6 @@ import de.rki.coronawarnapp.util.device.ForegroundState
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.coVerifySequence
@@ -16,7 +15,6 @@ import io.mockk.mockk
 import io.mockk.verify
 import kotlinx.coroutines.CoroutineScope
 import kotlinx.coroutines.flow.MutableStateFlow
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -55,11 +53,6 @@ class StatisticsProviderTest : BaseTest() {
         }
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     fun createInstance(scope: CoroutineScope) = StatisticsProvider(
         server = server,
         scope = scope,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/statistics/source/StatisticsServerTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/statistics/source/StatisticsServerTest.kt
index 5a13d25527a2431b34a94c658e5f3057481cb2e4..a9ce4ebd834fc08dfb195959dee000db8fa31f23 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/statistics/source/StatisticsServerTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/statistics/source/StatisticsServerTest.kt
@@ -5,7 +5,6 @@ import io.kotest.assertions.throwables.shouldThrow
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
@@ -15,7 +14,6 @@ import kotlinx.coroutines.test.runBlockingTest
 import okhttp3.Cache
 import okhttp3.ResponseBody.Companion.toResponseBody
 import okio.ByteString.Companion.decodeHex
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import retrofit2.Response
@@ -36,11 +34,6 @@ class StatisticsServerTest : BaseIOTest() {
         every { cache.evictAll() } just Runs
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance() = StatisticsServer(
         api = { api },
         verificationKeys = verificationKeys,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/statistics/util/StatisticsNumberValueFormatterTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/statistics/util/StatisticsNumberValueFormatterTest.kt
index 31b9585c06d5ee38af3bd3636788b7c66636a17e..fb10d8e0c3ef92952ba844d4cc4d778665354ae6 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/statistics/util/StatisticsNumberValueFormatterTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/statistics/util/StatisticsNumberValueFormatterTest.kt
@@ -8,17 +8,16 @@ import io.mockk.MockKAnnotations
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockkStatic
-import io.mockk.unmockkAll
-import org.junit.jupiter.api.AfterAll
 import org.junit.jupiter.api.BeforeAll
 import org.junit.jupiter.api.TestInstance
 import org.junit.jupiter.params.ParameterizedTest
 import org.junit.jupiter.params.provider.Arguments
 import org.junit.jupiter.params.provider.MethodSource
+import testhelpers.BaseTest
 import java.util.Locale
 
 @TestInstance(TestInstance.Lifecycle.PER_CLASS)
-internal class StatisticsNumberValueFormatterTest {
+internal class StatisticsNumberValueFormatterTest : BaseTest() {
 
     @MockK
     private lateinit var context: Context
@@ -78,9 +77,4 @@ internal class StatisticsNumberValueFormatterTest {
             Arguments.of(12_654_321, 0, Locale.UK, "12.7 Mio.")
         )
     }
-
-    @AfterAll
-    fun cleanUp() {
-        unmockkAll()
-    }
 }
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/storage/DeviceStorageTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/storage/DeviceStorageTest.kt
index 2b26304d3fe1abf473c6f11e84b4e591e70b55fe..b1735e823828caa3b082f5b8337ae232f55faa17 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/storage/DeviceStorageTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/storage/DeviceStorageTest.kt
@@ -10,7 +10,6 @@ import de.rki.coronawarnapp.util.storage.StatsFsProvider
 import io.kotest.assertions.throwables.shouldThrow
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockk
@@ -71,8 +70,6 @@ class DeviceStorageTest : BaseIOTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
-
         privateDataDir.deleteRecursively()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/storage/SubmissionRepositoryTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/storage/SubmissionRepositoryTest.kt
index 86714461a175a263ba40179de7fb75bb3c4193b8..cd1f01845abb25bdb5a2c12a4e7a07d27731a23d 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/storage/SubmissionRepositoryTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/storage/SubmissionRepositoryTest.kt
@@ -34,9 +34,10 @@ import kotlinx.coroutines.test.runBlockingTest
 import org.joda.time.Instant
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
+import testhelpers.BaseTest
 import testhelpers.preferences.mockFlowPreference
 
-class SubmissionRepositoryTest {
+class SubmissionRepositoryTest : BaseTest() {
 
     @MockK lateinit var submissionSettings: SubmissionSettings
     @MockK lateinit var submissionService: SubmissionService
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/storage/TestSettingsTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/storage/TestSettingsTest.kt
index 75dd982d0f4a0bc20c580e3bdc0bd08bf693e334..6f204565ca8c218ee7fad67d3bbe819b85e478ce 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/storage/TestSettingsTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/storage/TestSettingsTest.kt
@@ -4,11 +4,9 @@ import android.content.Context
 import com.google.gson.Gson
 import de.rki.coronawarnapp.util.CWADebug
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockkObject
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import testhelpers.BaseTest
 import testhelpers.preferences.MockSharedPreferences
@@ -31,11 +29,6 @@ class TestSettingsTest : BaseTest() {
         } returns mockPreferences
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun buildInstance(): TestSettings = TestSettings(
         context = context,
         gson = gson
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/storage/tracing/TracingIntervalRepositoryTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/storage/tracing/TracingIntervalRepositoryTest.kt
index 08b01eca2c4421c12fe6e05715d8c5ac2780db04..1729c44fd9d7709f00532742c92cddc83828540c 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/storage/tracing/TracingIntervalRepositoryTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/storage/tracing/TracingIntervalRepositoryTest.kt
@@ -6,17 +6,16 @@ import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.impl.annotations.MockK
 import io.mockk.just
-import io.mockk.unmockkAll
 import kotlinx.coroutines.runBlocking
-import org.junit.After
 import org.junit.Before
 import org.junit.Test
+import testhelpers.BaseTest
 import java.util.Date
 
 /**
  * TracingIntervalRepository test.
  */
-class TracingIntervalRepositoryTest {
+class TracingIntervalRepositoryTest : BaseTest() {
 
     @MockK
     private lateinit var dao: TracingIntervalDao
@@ -62,9 +61,4 @@ class TracingIntervalRepositoryTest {
             }
         }
     }
-
-    @After
-    fun cleanUp() {
-        unmockkAll()
-    }
 }
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/SubmissionModuleTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/SubmissionModuleTest.kt
index ba8b4b91b1e824534587068ed8408cca176f9a64..35c1c87a525a8920fdbfd8c0196dd63e3a3345c1 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/SubmissionModuleTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/SubmissionModuleTest.kt
@@ -4,7 +4,6 @@ import android.content.Context
 import io.kotest.assertions.throwables.shouldNotThrowAny
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.verify
@@ -36,7 +35,6 @@ class SubmissionModuleTest : BaseIOTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         testDir.deleteRecursively()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/auto/AutoSubmissionTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/auto/AutoSubmissionTest.kt
index ee3988f0ede1a1fd7cdb883d4944cea07c4fbb92..3d848862a6e7189cec89fb95f6df3dfb3829e32d 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/auto/AutoSubmissionTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/auto/AutoSubmissionTest.kt
@@ -14,7 +14,6 @@ import de.rki.coronawarnapp.util.TimeStamper
 import de.rki.coronawarnapp.util.preferences.FlowPreference
 import io.mockk.Called
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerifySequence
 import io.mockk.every
@@ -27,7 +26,6 @@ import io.mockk.verifySequence
 import kotlinx.coroutines.flow.emptyFlow
 import kotlinx.coroutines.test.runBlockingTest
 import org.joda.time.Instant
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -64,11 +62,6 @@ class AutoSubmissionTest : BaseTest() {
         mockkStatic("de.rki.coronawarnapp.task.TaskControllerExtensionsKt")
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance() = AutoSubmission(
         timeStamper = timeStamper,
         submissionSettings = submissionSettings,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/auto/SubmissionWorkerTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/auto/SubmissionWorkerTest.kt
index 19c83a55b8c7aa4992cde93585ecfc364fb7e03e..844f15598df956a6d580b5bf3ab9ea2f2393c166 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/auto/SubmissionWorkerTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/auto/SubmissionWorkerTest.kt
@@ -12,7 +12,6 @@ import de.rki.coronawarnapp.task.common.DefaultTaskRequest
 import de.rki.coronawarnapp.task.submitBlocking
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.every
@@ -21,7 +20,6 @@ import io.mockk.impl.annotations.RelaxedMockK
 import io.mockk.mockkStatic
 import io.mockk.slot
 import kotlinx.coroutines.test.runBlockingTest
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -42,11 +40,6 @@ class SubmissionWorkerTest : BaseTest() {
         coEvery { taskController.submitBlocking(any()) } returns taskResult
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createWorker() = SubmissionWorker(
         context = context,
         workerParams = workerParams,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/server/SubmissionApiV1Test.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/server/SubmissionApiV1Test.kt
index 7b946bb8fe9978c6867143502623f1a104ecf3d5..ad13a3c1f7e3125752611446b9a6294ad7ed8aa6 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/server/SubmissionApiV1Test.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/server/SubmissionApiV1Test.kt
@@ -7,7 +7,6 @@ import de.rki.coronawarnapp.server.protocols.internal.SubmissionPayloadOuterClas
 import de.rki.coronawarnapp.submission.SubmissionModule
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import kotlinx.coroutines.runBlocking
@@ -46,7 +45,6 @@ class SubmissionApiV1Test : BaseTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         webServer.shutdown()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/server/SubmissionServerTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/server/SubmissionServerTest.kt
index 34c503439706b6f29cef40ca89fc152ca1fee668..6f2aa826cf99c8400a462f9b9c580b33004aeef5 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/server/SubmissionServerTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/server/SubmissionServerTest.kt
@@ -9,7 +9,6 @@ import de.rki.coronawarnapp.submission.SubmissionModule
 import de.rki.coronawarnapp.util.headerSizeIgnoringContentLength
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.every
@@ -50,7 +49,6 @@ class SubmissionServerTest : BaseTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         webServer.shutdown()
         testDir.deleteRecursively()
     }
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/testresult/pending/SubmissionTestResultPendingViewModelTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/testresult/pending/SubmissionTestResultPendingViewModelTest.kt
index 0a75261abf4332067b01099d1c0ee30bf93b4a81..7898f97ead95c935255b9b58703bfb809607c1fc 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/testresult/pending/SubmissionTestResultPendingViewModelTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/testresult/pending/SubmissionTestResultPendingViewModelTest.kt
@@ -8,14 +8,12 @@ import de.rki.coronawarnapp.util.DeviceUIState
 import de.rki.coronawarnapp.util.NetworkRequestWrapper
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import kotlinx.coroutines.CoroutineScope
 import kotlinx.coroutines.flow.MutableStateFlow
 import kotlinx.coroutines.flow.emptyFlow
 import kotlinx.coroutines.test.TestCoroutineScope
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import org.junit.jupiter.api.extension.ExtendWith
@@ -40,11 +38,6 @@ class SubmissionTestResultPendingViewModelTest : BaseTest() {
         }
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     fun createInstance(scope: CoroutineScope = TestCoroutineScope()) = SubmissionTestResultPendingViewModel(
         dispatcherProvider = scope.asDispatcherProvider(),
         shareTestResultNotificationService = shareTestResultNotificationService,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/task/TaskControllerTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/task/TaskControllerTest.kt
index 9aec6e4ec37ca222cbe3d78ed21b2a4593f5b470..22595f0c3df4cbee7984b097e5528d19d122db34 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/task/TaskControllerTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/task/TaskControllerTest.kt
@@ -21,7 +21,6 @@ import io.kotest.matchers.shouldNotBe
 import io.kotest.matchers.types.instanceOf
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.coVerifySequence
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
@@ -87,7 +86,6 @@ class TaskControllerTest : BaseIOTest() {
     @AfterEach
     fun teardown() {
         taskFactoryMap.clear()
-        clearAllMocks()
         testDir.deleteRecursively()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/task/TaskStateTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/task/TaskStateTest.kt
index ebd17b87f9151a9bf36774c8fa27a2304403d8b3..4413edc7c575411b2b6e655cba437dd6caacf070 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/task/TaskStateTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/task/TaskStateTest.kt
@@ -3,11 +3,9 @@ package de.rki.coronawarnapp.task
 import de.rki.coronawarnapp.task.internal.InternalTaskState
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockk
 import kotlinx.coroutines.Deferred
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -21,11 +19,6 @@ class TaskStateTest : BaseTest() {
         MockKAnnotations.init(this)
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     @Test
     fun `pending state`() {
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/GeneralTracingStatusTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/GeneralTracingStatusTest.kt
index 284789ce0bdd07669ada62f99c424bebcd3619c4..2cf5685ffdb010d4ac73851430d17663e72328cd 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/GeneralTracingStatusTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/GeneralTracingStatusTest.kt
@@ -5,13 +5,11 @@ import de.rki.coronawarnapp.util.bluetooth.BluetoothProvider
 import de.rki.coronawarnapp.util.location.LocationProvider
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import kotlinx.coroutines.flow.MutableStateFlow
 import kotlinx.coroutines.flow.first
 import kotlinx.coroutines.test.runBlockingTest
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import org.junit.jupiter.api.extension.ExtendWith
@@ -42,11 +40,6 @@ class GeneralTracingStatusTest : BaseTest() {
         every { enfClient.isLocationLessScanningSupported } returns isLocationLessScanningSupported
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance(): GeneralTracingStatus = GeneralTracingStatus(
         bluetoothProvider = bluetoothProvider,
         locationProvider = locationProvider,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/states/IncreasedRiskTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/states/IncreasedRiskTest.kt
index 14d885d7e2156452b2d102e41efcbb8e6e8d9bce..778e6557324ec9cc2a2ed11b3a52cf1ed0eac8f9 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/states/IncreasedRiskTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/states/IncreasedRiskTest.kt
@@ -5,12 +5,10 @@ import de.rki.coronawarnapp.R
 import de.rki.coronawarnapp.risk.RiskState
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.slot
 import org.joda.time.Instant
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 
@@ -23,11 +21,6 @@ internal class IncreasedRiskTest {
         MockKAnnotations.init(this)
     }
 
-    @AfterEach
-    fun tearDown() {
-        clearAllMocks()
-    }
-
     @Test
     fun `getRiskContactLast() should return null when lastEncounterAt == null`() {
         val risk = defaultRisk.copy(lastEncounterAt = null)
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/states/LowRiskTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/states/LowRiskTest.kt
index 98dc1549e59b148bb2277f6ce0232aa9fdbb5f28..4b997aa7ca54d03af10bbfa7e8c1b8c88259a085 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/states/LowRiskTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/states/LowRiskTest.kt
@@ -5,11 +5,9 @@ import de.rki.coronawarnapp.R
 import de.rki.coronawarnapp.risk.RiskState
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import org.joda.time.Instant
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 
@@ -28,11 +26,6 @@ internal class LowRiskTest {
         } returns "String not relevant for this test"
     }
 
-    @AfterEach
-    fun tearDown() {
-        clearAllMocks()
-    }
-
     private val defaultRisk = LowRisk(
         riskState = RiskState.LOW_RISK,
         isInDetailsMode = false,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/ui/details/TracingDetailsItemProviderTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/ui/details/TracingDetailsItemProviderTest.kt
index bbf76e937b6bf93d8f3c936fee77a55f8a8063ab..b8a3664aa153d7d719aea63507ece24479a5f4d6 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/ui/details/TracingDetailsItemProviderTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/ui/details/TracingDetailsItemProviderTest.kt
@@ -21,14 +21,12 @@ import de.rki.coronawarnapp.tracing.ui.details.items.survey.UserSurveyBox
 import io.kotest.matchers.ints.shouldBeGreaterThan
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockk
 import kotlinx.coroutines.flow.flowOf
 import kotlinx.coroutines.test.runBlockingTest
 import org.joda.time.Instant
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -51,11 +49,6 @@ class TracingDetailsItemProviderTest : BaseTest() {
         every { context.resources } returns resources
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance() = TracingDetailsItemProvider(
         tracingStatus = tracingStatus,
         tracingRepository = tracingRepository,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/ui/details/TracingDetailsStateTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/ui/details/TracingDetailsStateTest.kt
index 8c215d7f86e82cd77377cc2dfbba0bc818c32e79..ced9a44a536fdaddbbdc2ff5432a48a28aecbfbc 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/ui/details/TracingDetailsStateTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/ui/details/TracingDetailsStateTest.kt
@@ -9,11 +9,9 @@ import de.rki.coronawarnapp.risk.RiskState.LOW_RISK
 import de.rki.coronawarnapp.tracing.GeneralTracingStatus
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockk
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -30,11 +28,6 @@ class TracingDetailsStateTest : BaseTest() {
         every { context.resources } returns resources
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance(
         tracingStatus: GeneralTracingStatus.Status = mockk(),
         riskState: RiskState,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/ui/homecards/SubmissionStateProviderTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/ui/homecards/SubmissionStateProviderTest.kt
index 941f2f6d26cf2cdcc430bd4634c6100d6553078f..15decd484cd425591face7df7a9faf9995bed521 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/ui/homecards/SubmissionStateProviderTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/ui/homecards/SubmissionStateProviderTest.kt
@@ -9,7 +9,6 @@ import de.rki.coronawarnapp.util.DeviceUIState
 import de.rki.coronawarnapp.util.NetworkRequestWrapper
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockkObject
@@ -17,7 +16,6 @@ import io.mockk.verifySequence
 import kotlinx.coroutines.flow.first
 import kotlinx.coroutines.flow.flow
 import kotlinx.coroutines.test.runBlockingTest
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import org.junit.jupiter.api.extension.ExtendWith
@@ -45,11 +43,6 @@ class SubmissionStateProviderTest : BaseTest() {
         every { LocalData.registrationToken() } returns null
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance() = SubmissionStateProvider(submissionRepository)
 
     @Test
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/ui/settings/TracingSettingsStateTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/ui/settings/TracingSettingsStateTest.kt
index 61f9e453c8650a14cab6ece81fb9e71077605e82..9c4280d160392da5a01dea4f653a57279c733e2e 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/ui/settings/TracingSettingsStateTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/ui/settings/TracingSettingsStateTest.kt
@@ -6,10 +6,8 @@ import de.rki.coronawarnapp.tracing.GeneralTracingStatus
 import de.rki.coronawarnapp.util.ContextExtensions.getDrawableCompat
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.impl.annotations.MockK
 import io.mockk.verify
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -23,11 +21,6 @@ class TracingSettingsStateTest : BaseTest() {
         MockKAnnotations.init(this)
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     @Test
     fun `state mapping`() {
         GeneralTracingStatus.Status.TRACING_ACTIVE.toTracingSettingsState() shouldBe TracingSettingsState.TracingActive
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/ui/statusbar/TracingHeaderStateTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/ui/statusbar/TracingHeaderStateTest.kt
index 5e6f1e043092b1c620a05a53b030191822013822..b124465301c0a98583f0fe389c0721393561d0c8 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/ui/statusbar/TracingHeaderStateTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/tracing/ui/statusbar/TracingHeaderStateTest.kt
@@ -10,10 +10,8 @@ import de.rki.coronawarnapp.tracing.ui.statusbar.TracingHeaderState.TracingInAct
 import de.rki.coronawarnapp.util.ContextExtensions.getColorCompat
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.impl.annotations.MockK
 import io.mockk.verify
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -27,11 +25,6 @@ class TracingHeaderStateTest : BaseTest() {
         MockKAnnotations.init(this)
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     @Test
     fun `state mapping`() {
         Status.TRACING_ACTIVE.toHeaderState() shouldBe TracingActive
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/calendar/CalendarCalculationTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/calendar/CalendarCalculationTest.kt
index a77e3a903406084c1f9ed18f8157cedc1b1108a1..3c4acf7c8def82352414485ce99a4d0738c29f4f 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/calendar/CalendarCalculationTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/calendar/CalendarCalculationTest.kt
@@ -5,12 +5,10 @@ import android.content.res.Configuration
 import android.content.res.Resources
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import org.joda.time.DateTime
 import org.joda.time.format.DateTimeFormat
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -35,11 +33,6 @@ class CalendarCalculationTest : BaseTest() {
         }
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     fun createInstance() = CalendarCalculation(context)
 
     @Test
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/launcher/LauncherActivityViewModelTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/launcher/LauncherActivityViewModelTest.kt
index 930986dbe941afee2117dae7a527aed1fc0afb96..14df18a27d310a3266724880134bfb279cee3f18 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/launcher/LauncherActivityViewModelTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/launcher/LauncherActivityViewModelTest.kt
@@ -16,12 +16,13 @@ import kotlinx.coroutines.test.runBlockingTest
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import org.junit.jupiter.api.extension.ExtendWith
+import testhelpers.BaseTest
 import testhelpers.TestDispatcherProvider
 import testhelpers.extensions.InstantExecutorExtension
 import testhelpers.preferences.mockFlowPreference
 
 @ExtendWith(InstantExecutorExtension::class)
-class LauncherActivityViewModelTest {
+class LauncherActivityViewModelTest : BaseTest() {
 
     @MockK lateinit var updateChecker: UpdateChecker
     @MockK lateinit var cwaSettings: CWASettings
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/onboarding/EasyLanguageLinkTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/onboarding/EasyLanguageLinkTest.kt
index 66fef2f3bc9ed2e47fa8ac2720a4c5bca1a5e371..d29a4c1a1d5d4a49735ca7ce683097d676df5d7b 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/onboarding/EasyLanguageLinkTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/onboarding/EasyLanguageLinkTest.kt
@@ -3,8 +3,6 @@ package de.rki.coronawarnapp.ui.onboarding
 import io.kotest.matchers.shouldBe
 import io.mockk.every
 import io.mockk.mockkObject
-import io.mockk.unmockkAll
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -17,11 +15,6 @@ class EasyLanguageLinkTest : BaseTest() {
         mockkObject(Locale.getDefault())
     }
 
-    @AfterEach
-    fun teardown() {
-        unmockkAll()
-    }
-
     @Test
     fun showLinkForGerman() {
         every { Locale.getDefault().language } returns "de"
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/notification/NotificationSettingsFragmentViewModelTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/notification/NotificationSettingsFragmentViewModelTest.kt
index 031ff0e1d3dcbfb2836a1be87e754d4d3061380a..b3f35db80b1bddfa7ab0a5102ad786e86302506f 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/notification/NotificationSettingsFragmentViewModelTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/notification/NotificationSettingsFragmentViewModelTest.kt
@@ -6,12 +6,10 @@ import de.rki.coronawarnapp.ui.settings.notifications.NotificationSettingsFragme
 import de.rki.coronawarnapp.ui.settings.notifications.NotificationSettingsState
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.verify
 import kotlinx.coroutines.flow.flow
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import org.junit.jupiter.api.extension.ExtendWith
@@ -36,11 +34,6 @@ class NotificationSettingsFragmentViewModelTest : BaseTest() {
         every { notificationSettings.isNotificationsTestEnabled } returns flow { emit(true) }
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance(): NotificationSettingsFragmentViewModel =
         NotificationSettingsFragmentViewModel(
             dispatcherProvider = TestDispatcherProvider(),
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/notification/NotificationSettingsStateTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/notification/NotificationSettingsStateTest.kt
index 0e1222d587c397957898758b31e65e8757ce0b4f..fa2bf9ceb2990a4e9a3c272cd5aec5a1748666ff 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/notification/NotificationSettingsStateTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/notification/NotificationSettingsStateTest.kt
@@ -7,13 +7,11 @@ import de.rki.coronawarnapp.util.ContextExtensions
 import de.rki.coronawarnapp.util.ContextExtensions.getDrawableCompat
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockk
 import io.mockk.mockkObject
 import io.mockk.verify
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -33,11 +31,6 @@ class NotificationSettingsStateTest : BaseTest() {
         }
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance(
         isNotificationsEnabled: Boolean = true,
         isNotificationsRiskEnabled: Boolean = true,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/notification/NotificationsSettingsTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/notification/NotificationsSettingsTest.kt
index b28ebbb630037450403b9420c9f3fa065bc1f950..3bd5a7811a0ab9771756341527dd20c07f0f8b6f 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/notification/NotificationsSettingsTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/notification/NotificationsSettingsTest.kt
@@ -7,7 +7,6 @@ import de.rki.coronawarnapp.util.device.ForegroundState
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
@@ -18,7 +17,6 @@ import io.mockk.verifySequence
 import kotlinx.coroutines.flow.first
 import kotlinx.coroutines.flow.flow
 import kotlinx.coroutines.test.runBlockingTest
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -45,11 +43,6 @@ class NotificationsSettingsTest : BaseTest() {
         coEvery { foregroundState.isInForeground } returns flow { emit(true) }
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance() = NotificationSettings(
         foregroundState = foregroundState,
         notificationManagerCompat = notificationManagerCompat
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/start/SettingsBackgroundStateTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/start/SettingsBackgroundStateTest.kt
index 2a461f487fdf7d39edb6fab0ed9c468f399aef47..99ce0f9487fef5defb7ba3db077d5654b7d17e71 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/start/SettingsBackgroundStateTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/start/SettingsBackgroundStateTest.kt
@@ -5,10 +5,8 @@ import de.rki.coronawarnapp.R
 import de.rki.coronawarnapp.util.ContextExtensions.getColorCompat
 import de.rki.coronawarnapp.util.ContextExtensions.getDrawableCompat
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.impl.annotations.MockK
 import io.mockk.verify
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -22,11 +20,6 @@ class SettingsBackgroundStateTest : BaseTest() {
         MockKAnnotations.init(this)
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance(isEnabled: Boolean) = SettingsBackgroundState(
         isEnabled = isEnabled
     )
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/start/SettingsFragmentViewModelTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/start/SettingsFragmentViewModelTest.kt
index b419689200317fe41258f165c185b5c41ea2fb04..6b86ddd6921459414fe52fddb86800cd2747d76c 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/start/SettingsFragmentViewModelTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/start/SettingsFragmentViewModelTest.kt
@@ -7,13 +7,11 @@ import de.rki.coronawarnapp.ui.settings.notifications.NotificationSettings
 import de.rki.coronawarnapp.util.device.BackgroundModeStatus
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.verify
 import kotlinx.coroutines.flow.flow
 import kotlinx.coroutines.flow.flowOf
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import org.junit.jupiter.api.extension.ExtendWith
@@ -44,11 +42,6 @@ class SettingsFragmentViewModelTest : BaseTest() {
         every { analytics.isAnalyticsEnabledFlow() } returns flow { emit(true) }
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance(): SettingsFragmentViewModel = SettingsFragmentViewModel(
         dispatcherProvider = TestDispatcherProvider(),
         tracingStatus = tracingStatus,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/start/SettingsNotificationStateTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/start/SettingsNotificationStateTest.kt
index 69dcba26c940eabe5921a4efab80b66534373ad7..9398261e27c6220346b278c32078b1c7d41a7749 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/start/SettingsNotificationStateTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/start/SettingsNotificationStateTest.kt
@@ -7,14 +7,12 @@ import de.rki.coronawarnapp.util.ContextExtensions.getColorCompat
 import de.rki.coronawarnapp.util.ContextExtensions.getDrawableCompat
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockk
 import io.mockk.mockkObject
 import io.mockk.verify
 import kotlinx.coroutines.test.runBlockingTest
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -32,11 +30,6 @@ class SettingsNotificationStateTest : BaseTest() {
         every { context.getDrawableCompat(any()) } returns mockk()
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     @Test
     fun `enabled state`() {
         SettingsNotificationState(
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/start/SettingsTracingStateTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/start/SettingsTracingStateTest.kt
index 74c061f1428bb085ba96f02419e51979644e3a8e..3605b67d7cdc38f15732e30c0df9ca3fc35cb85e 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/start/SettingsTracingStateTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/settings/start/SettingsTracingStateTest.kt
@@ -7,10 +7,8 @@ import de.rki.coronawarnapp.util.ContextExtensions.getColorCompat
 import de.rki.coronawarnapp.util.ContextExtensions.getDrawableCompat
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.impl.annotations.MockK
 import io.mockk.verify
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -24,11 +22,6 @@ class SettingsTracingStateTest : BaseTest() {
         MockKAnnotations.init(this)
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     @Test
     fun `state mapping`() {
         GeneralTracingStatus.Status.TRACING_ACTIVE.toSettingsTracingState() shouldBe SettingsTracingState.TracingActive
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/submission/symptoms/calendar/SubmissionSymptomCalendarViewModelTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/submission/symptoms/calendar/SubmissionSymptomCalendarViewModelTest.kt
index 1a07365dca30a267deacd0b950e0bcdd59b8cd85..05498c26cd671904a1907733501eb9f9c218d45d 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/submission/symptoms/calendar/SubmissionSymptomCalendarViewModelTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/submission/symptoms/calendar/SubmissionSymptomCalendarViewModelTest.kt
@@ -7,7 +7,6 @@ import de.rki.coronawarnapp.util.preferences.FlowPreference
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerifySequence
 import io.mockk.every
@@ -17,7 +16,6 @@ import io.mockk.verify
 import kotlinx.coroutines.flow.MutableStateFlow
 import kotlinx.coroutines.flow.flowOf
 import org.joda.time.LocalDate
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import org.junit.jupiter.api.extension.ExtendWith
@@ -45,11 +43,6 @@ class SubmissionSymptomCalendarViewModelTest : BaseTest() {
         every { submissionRepository.currentSymptoms } returns currentSymptoms
     }
 
-    @AfterEach
-    fun tearDown() {
-        clearAllMocks()
-    }
-
     private fun createViewModel(indication: Symptoms.Indication = Symptoms.Indication.POSITIVE) =
         SubmissionSymptomCalendarViewModel(
             symptomIndication = indication,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/submission/symptoms/introduction/SubmissionSymptomIntroductionViewModelTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/submission/symptoms/introduction/SubmissionSymptomIntroductionViewModelTest.kt
index fb0e07521d0bd4474cae1040fbd02b29df7f2eca..f067783b3477bc21e9bf2bfad233924ee2f3016f 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/submission/symptoms/introduction/SubmissionSymptomIntroductionViewModelTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/submission/symptoms/introduction/SubmissionSymptomIntroductionViewModelTest.kt
@@ -6,7 +6,6 @@ import de.rki.coronawarnapp.submission.auto.AutoSubmission
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.coVerifySequence
@@ -16,7 +15,6 @@ import io.mockk.just
 import io.mockk.verify
 import kotlinx.coroutines.flow.MutableStateFlow
 import kotlinx.coroutines.flow.flowOf
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import org.junit.jupiter.api.extension.ExtendWith
@@ -41,11 +39,6 @@ class SubmissionSymptomIntroductionViewModelTest : BaseTest() {
         every { submissionRepository.currentSymptoms } returns currentSymptoms
     }
 
-    @AfterEach
-    fun tearDown() {
-        clearAllMocks()
-    }
-
     private fun createViewModel() = SubmissionSymptomIntroductionViewModel(
         dispatcherProvider = TestDispatcherProvider(),
         submissionRepository = submissionRepository,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/submission/testavailable/SubmissionTestResultAvailableViewModelTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/submission/testavailable/SubmissionTestResultAvailableViewModelTest.kt
index 9be0ec3c971e726d87ea1543eec2490805a56dd1..d6e16b3112e83ec35603db00d2ab694844e3ba21 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/submission/testavailable/SubmissionTestResultAvailableViewModelTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/submission/testavailable/SubmissionTestResultAvailableViewModelTest.kt
@@ -8,14 +8,12 @@ import de.rki.coronawarnapp.ui.submission.resultavailable.SubmissionTestResultAv
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.just
 import io.mockk.verify
 import kotlinx.coroutines.flow.MutableStateFlow
 import kotlinx.coroutines.flow.flowOf
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import org.junit.jupiter.api.extension.ExtendWith
@@ -51,11 +49,6 @@ class SubmissionTestResultAvailableViewModelTest : BaseTest() {
         autoSubmission = autoSubmission
     )
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     @Test
     fun `consent repository changed`() {
         val consentMutable = MutableStateFlow(false)
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/submission/warnothers/SubmissionResultPositiveOtherWarningNoConsentViewModelTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/submission/warnothers/SubmissionResultPositiveOtherWarningNoConsentViewModelTest.kt
index d87ada61d16654e5a2e13d3dba3d9bab0034644b..eb91b4fafd41603c8c62dd43b8f3d65fdb411589 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/submission/warnothers/SubmissionResultPositiveOtherWarningNoConsentViewModelTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/submission/warnothers/SubmissionResultPositiveOtherWarningNoConsentViewModelTest.kt
@@ -7,7 +7,6 @@ import de.rki.coronawarnapp.submission.auto.AutoSubmission
 import de.rki.coronawarnapp.submission.data.tekhistory.TEKHistoryUpdater
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.just
@@ -15,7 +14,6 @@ import io.mockk.verify
 import kotlinx.coroutines.flow.MutableStateFlow
 import kotlinx.coroutines.flow.emptyFlow
 import kotlinx.coroutines.flow.flowOf
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import org.junit.jupiter.api.extension.ExtendWith
@@ -55,11 +53,6 @@ class SubmissionResultPositiveOtherWarningNoConsentViewModelTest : BaseTest() {
         submissionRepository = submissionRepository
     )
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     @Test
     fun `consent is stored and tek history updated`() {
         val consentMutable = MutableStateFlow(false)
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/submission/yourconsent/SubmissionYourConsentViewModelTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/submission/yourconsent/SubmissionYourConsentViewModelTest.kt
index d5a70f44c58d3020649dfa8ee117caa5833bc1a6..30797a6da0077966f6444c60504b416bb256dabc 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/submission/yourconsent/SubmissionYourConsentViewModelTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/ui/submission/yourconsent/SubmissionYourConsentViewModelTest.kt
@@ -6,7 +6,6 @@ import de.rki.coronawarnapp.ui.Country
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
@@ -14,7 +13,6 @@ import io.mockk.just
 import io.mockk.verify
 import kotlinx.coroutines.flow.MutableStateFlow
 import kotlinx.coroutines.flow.flowOf
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import org.junit.jupiter.api.extension.ExtendWith
@@ -46,11 +44,6 @@ class SubmissionYourConsentViewModelTest : BaseTest() {
         dispatcherProvider = TestDispatcherProvider()
     )
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     @Test
     fun `country list`() {
         val viewModel = createViewModel()
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/update/UpdateCheckerTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/update/UpdateCheckerTest.kt
index e4fe8adbb57d7cf4352a9888ac5266223cddd68b..6ae3f903d234156b07ac9c16e54074c9d2b985b5 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/update/UpdateCheckerTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/update/UpdateCheckerTest.kt
@@ -7,14 +7,12 @@ import de.rki.coronawarnapp.environment.BuildConfigWrap
 import io.kotest.matchers.shouldBe
 import io.kotest.matchers.shouldNotBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerifySequence
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockkObject
 import kotlinx.coroutines.test.runBlockingTest
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -32,11 +30,6 @@ class UpdateCheckerTest : BaseTest() {
         coEvery { appConfigProvider.getAppConfig() } returns configData
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     fun createInstance() = UpdateChecker(
         appConfigProvider = appConfigProvider
     )
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/BackgroundModeStatusTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/BackgroundModeStatusTest.kt
index 781aade5a8187b318d53628a10391555d3a2c309..a0d64f4a7483c71ac648fafef76ef664e7fd2eb6 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/BackgroundModeStatusTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/BackgroundModeStatusTest.kt
@@ -8,7 +8,6 @@ import de.rki.coronawarnapp.util.device.PowerManagement
 import io.kotest.matchers.shouldBe
 import io.mockk.Called
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockkObject
@@ -17,7 +16,6 @@ import kotlinx.coroutines.CoroutineScope
 import kotlinx.coroutines.delay
 import kotlinx.coroutines.flow.first
 import kotlinx.coroutines.flow.flowOf
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -42,11 +40,6 @@ class BackgroundModeStatusTest : BaseTest() {
         every { foregroundState.isInForeground } returns flowOf(true)
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance(scope: CoroutineScope): BackgroundModeStatus = BackgroundModeStatus(
         activityManager = activityManager,
         appScope = scope,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/CameraPermissionHelperTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/CameraPermissionHelperTest.kt
index 57fdbc694143e53341365e5ed99d7e6ce7645bd3..ffbad272ca0d20b888a498600bd68505257bf7e8 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/CameraPermissionHelperTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/CameraPermissionHelperTest.kt
@@ -7,14 +7,13 @@ import io.mockk.MockKAnnotations
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockkObject
-import io.mockk.unmockkAll
 import org.hamcrest.CoreMatchers
 import org.hamcrest.MatcherAssert
-import org.junit.After
 import org.junit.Before
 import org.junit.Test
+import testhelpers.BaseTest
 
-class CameraPermissionHelperTest {
+class CameraPermissionHelperTest : BaseTest() {
 
     @MockK
     private lateinit var context: Context
@@ -43,9 +42,4 @@ class CameraPermissionHelperTest {
         val result = hasCameraPermission(context)
         MatcherAssert.assertThat(result, CoreMatchers.`is`(false))
     }
-
-    @After
-    fun cleanUp() {
-        unmockkAll()
-    }
 }
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/ConnectivityHelperTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/ConnectivityHelperTest.kt
index d3c345ce89e38b87145fbed25511cbdb42a52688..9ae6f964d1ff026daacd2e7b708cb630d06eac94 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/ConnectivityHelperTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/ConnectivityHelperTest.kt
@@ -11,16 +11,15 @@ import io.mockk.mockk
 import io.mockk.mockkConstructor
 import io.mockk.mockkObject
 import io.mockk.mockkStatic
-import io.mockk.unmockkAll
-import org.junit.After
 import org.junit.Assert.assertEquals
 import org.junit.Before
 import org.junit.Test
+import testhelpers.BaseTest
 
 /**
  * ConnectivityHelper test.
  */
-class ConnectivityHelperTest {
+class ConnectivityHelperTest : BaseTest() {
 
     @MockK private lateinit var context: Context
 
@@ -76,9 +75,4 @@ class ConnectivityHelperTest {
         ConnectivityHelper.unregisterNetworkStatusCallback(context, callback)
         assertEquals(registered, false)
     }
-
-    @After
-    fun cleanUp() {
-        unmockkAll()
-    }
 }
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/DataBindingAdaptersTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/DataBindingAdaptersTest.kt
index ef75a50d41ecb235fac8d6ebb2288293096b0a1a..281486f466a1f16b3134e04d2f1e21a678610458 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/DataBindingAdaptersTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/DataBindingAdaptersTest.kt
@@ -18,8 +18,9 @@ import io.mockk.verify
 import io.mockk.verifySequence
 import org.junit.Before
 import org.junit.Test
+import testhelpers.BaseTest
 
-class DataBindingAdaptersTest {
+class DataBindingAdaptersTest : BaseTest() {
 
     @MockK
     private lateinit var context: Context
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/ExternalActionHelperTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/ExternalActionHelperTest.kt
index 0ca6efe8ca0da64c57dfd852a2253cd8427774ee..45c6063ee6fb5b7482bca133cc421971c854083b 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/ExternalActionHelperTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/ExternalActionHelperTest.kt
@@ -11,13 +11,12 @@ import io.mockk.impl.annotations.MockK
 import io.mockk.just
 import io.mockk.mockk
 import io.mockk.mockkObject
-import io.mockk.unmockkAll
 import io.mockk.verify
-import org.junit.After
 import org.junit.Before
 import org.junit.Test
+import testhelpers.BaseTest
 
-class ExternalActionHelperTest {
+class ExternalActionHelperTest : BaseTest() {
 
     @MockK
     private lateinit var context: Context
@@ -78,9 +77,4 @@ class ExternalActionHelperTest {
         ExternalActionHelper.shareText(fragment = fragment, text = "text", title = "title")
         verify(exactly = 1) { fragment.startActivity(any()) }
     }
-
-    @After
-    fun cleanUp() {
-        unmockkAll()
-    }
 }
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/HashExtensionsTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/HashExtensionsTest.kt
index 3384063bf964993859ccb719cdf16ffe23aa32d1..d91bad45b2a60c557c8927c80e29e83bc546a83c 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/HashExtensionsTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/HashExtensionsTest.kt
@@ -5,7 +5,6 @@ import de.rki.coronawarnapp.util.HashExtensions.toMD5
 import de.rki.coronawarnapp.util.HashExtensions.toSHA1
 import de.rki.coronawarnapp.util.HashExtensions.toSHA256
 import io.kotest.matchers.shouldBe
-import io.mockk.clearAllMocks
 import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
@@ -25,8 +24,6 @@ class HashExtensionsTest : BaseIOTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
-
         testDir.deleteRecursively()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/RetryMechanismTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/RetryMechanismTest.kt
index c0697e18d92b3fc8b9ca33f0b5be90f73db5b857..dae2845e53114785f8ef12b0f05c5d1ca5514ff1 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/RetryMechanismTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/RetryMechanismTest.kt
@@ -8,11 +8,9 @@ import io.kotest.matchers.shouldBe
 import io.kotest.matchers.shouldNotBe
 import io.kotest.matchers.types.instanceOf
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.verify
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -29,11 +27,6 @@ class RetryMechanismTest : BaseTest() {
         }
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     @Test
     fun `simple retry`() {
         val attempts = mutableListOf<RetryMechanism.Attempt>()
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/TimeAndDateExtensionsTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/TimeAndDateExtensionsTest.kt
index bffa97b6513e12370c53a3d0900235720cdcbd93..50960f2caaa5002c8e562a899c870b9a39317534 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/TimeAndDateExtensionsTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/TimeAndDateExtensionsTest.kt
@@ -8,14 +8,12 @@ import de.rki.coronawarnapp.util.TimeAndDateExtensions.seconds
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
 import io.mockk.mockkObject
-import io.mockk.unmockkAll
 import org.hamcrest.CoreMatchers
 import org.hamcrest.MatcherAssert
 import org.joda.time.DateTime
 import org.joda.time.DateTimeZone
 import org.joda.time.Instant
 import org.joda.time.LocalDate
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -33,11 +31,6 @@ class TimeAndDateExtensionsTest : BaseTest() {
         mockkObject(CoronaWarnApplication)
     }
 
-    @AfterEach
-    fun cleanUp() {
-        unmockkAll()
-    }
-
     @Test
     fun getCurrentHourUTCTest() {
         val result = getCurrentHourUTC()
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/bluetooth/BluetoothProviderTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/bluetooth/BluetoothProviderTest.kt
index 8ada1306d5ce7f70a887e762d6cba3b4e9122bea..aed289c430e22e3e280774cdc5996b8bd483e399 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/bluetooth/BluetoothProviderTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/bluetooth/BluetoothProviderTest.kt
@@ -8,7 +8,6 @@ import android.content.IntentFilter
 import io.kotest.matchers.shouldBe
 import io.mockk.Called
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockk
@@ -19,7 +18,6 @@ import kotlinx.coroutines.CoroutineScope
 import kotlinx.coroutines.flow.first
 import kotlinx.coroutines.test.TestCoroutineScope
 import kotlinx.coroutines.test.runBlockingTest
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -47,11 +45,6 @@ class BluetoothProviderTest : BaseTest() {
         every { bluetoothAdapter.isEnabled } returns true
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance(
         scope: CoroutineScope = appScope,
         adapter: BluetoothAdapter? = bluetoothAdapter
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/device/ForegroundStateTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/device/ForegroundStateTest.kt
index cbb714147ba97de16341eca6400c3a0363b63ea6..93c8bd66687815404b5aca25369ad885ec7219cb 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/device/ForegroundStateTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/device/ForegroundStateTest.kt
@@ -5,11 +5,9 @@ import androidx.lifecycle.LifecycleOwner
 import androidx.lifecycle.LifecycleRegistry
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import kotlinx.coroutines.test.runBlockingTest
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import org.junit.jupiter.api.extension.ExtendWith
@@ -30,11 +28,6 @@ class ForegroundStateTest : BaseTest() {
         every { lifecycleOwner.lifecycle } returns lifecycle
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     fun createInstance() = ForegroundState(
         processLifecycleOwner = lifecycleOwner
     )
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/formatter/FormatterHelperTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/formatter/FormatterHelperTest.kt
index 96c471a63c55606f9dff4ca322b6de8b0d895457..adf4e0bbb76f5702a1b9467590dd64e0d8315679 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/formatter/FormatterHelperTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/formatter/FormatterHelperTest.kt
@@ -10,14 +10,13 @@ import io.mockk.MockKAnnotations
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockkObject
-import io.mockk.unmockkAll
 import org.hamcrest.CoreMatchers.`is`
 import org.hamcrest.MatcherAssert.assertThat
-import org.junit.After
 import org.junit.Before
 import org.junit.Test
+import testhelpers.BaseTest
 
-class FormatterHelperTest {
+class FormatterHelperTest : BaseTest() {
 
     @MockK
     private lateinit var context: Context
@@ -109,9 +108,4 @@ class FormatterHelperTest {
         // Check formatColor when value false
         formatColorBase(bValue = false, iColor = 2)
     }
-
-    @After
-    fun cleanUp() {
-        unmockkAll()
-    }
 }
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/formatter/FormatterStatisticsHelperTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/formatter/FormatterStatisticsHelperTest.kt
index 671a8abcec048f9bc2f4238fbf92ebde72505ae0..32de838776c99e74a17e6837df6e5165e24a7b8f 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/formatter/FormatterStatisticsHelperTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/formatter/FormatterStatisticsHelperTest.kt
@@ -13,15 +13,14 @@ import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockkStatic
 import io.mockk.slot
-import io.mockk.unmockkAll
 import org.joda.time.DateTime
 import org.joda.time.Instant
-import org.junit.After
 import org.junit.Before
 import org.junit.Test
+import testhelpers.BaseTest
 import java.util.Locale
 
-class FormatterStatisticsHelperTest {
+class FormatterStatisticsHelperTest : BaseTest() {
 
     @MockK
     private lateinit var context: Context
@@ -90,11 +89,6 @@ class FormatterStatisticsHelperTest {
         ).getPrimaryLabel(context) shouldBe "Until 13.01.2021"
     }
 
-    @After
-    fun cleanUp() {
-        unmockkAll()
-    }
-
     companion object {
         private const val TODAY = "Today"
         private const val CURRENT = "Current"
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/formatter/FormatterSubmissionHelperTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/formatter/FormatterSubmissionHelperTest.kt
index 320a4683509e3c54bd361490de1c1f90b1e2e8a9..ec822d947365799b5a2a69c65924eb56d926e457 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/formatter/FormatterSubmissionHelperTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/formatter/FormatterSubmissionHelperTest.kt
@@ -20,14 +20,13 @@ import io.mockk.mockk
 import io.mockk.mockkConstructor
 import io.mockk.mockkObject
 import io.mockk.mockkStatic
-import io.mockk.unmockkAll
 import org.hamcrest.CoreMatchers.`is`
 import org.hamcrest.MatcherAssert.assertThat
-import org.junit.After
 import org.junit.Before
 import org.junit.Test
+import testhelpers.BaseTest
 
-class FormatterSubmissionHelperTest {
+class FormatterSubmissionHelperTest : BaseTest() {
 
     @MockK
     private lateinit var context: Context
@@ -318,9 +317,4 @@ class FormatterSubmissionHelperTest {
         formatTestResultBase(oUiState = NetworkRequestWrapper.RequestSuccessful(DeviceUIState.SUBMITTED_INITIAL))
         formatTestResultBase(oUiState = NetworkRequestWrapper.RequestSuccessful(DeviceUIState.UNPAIRED))
     }
-
-    @After
-    fun cleanUp() {
-        unmockkAll()
-    }
 }
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/location/LocationProviderTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/location/LocationProviderTest.kt
index ed98e17e10c3b91e4583ef838336ec1815d8cd2c..58083a7d96034237090b820d7254897122105e50 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/location/LocationProviderTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/location/LocationProviderTest.kt
@@ -9,7 +9,6 @@ import android.location.LocationManager
 import io.kotest.matchers.shouldBe
 import io.mockk.Called
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockk
@@ -20,7 +19,6 @@ import kotlinx.coroutines.CoroutineScope
 import kotlinx.coroutines.flow.first
 import kotlinx.coroutines.test.TestCoroutineScope
 import kotlinx.coroutines.test.runBlockingTest
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -48,11 +46,6 @@ class LocationProviderTest : BaseTest() {
         every { context.getSystemService(Context.LOCATION_SERVICE) } returns locationManager
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance(
         scope: CoroutineScope = appScope
     ): LocationProvider = LocationProvider(
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/network/NetworkStateProviderTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/network/NetworkStateProviderTest.kt
index 2a9e92c6cc8e8a0aa21be016d28a400ea1165798..1da581b212d1f112f481e722d4fb442a0caa30bb 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/network/NetworkStateProviderTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/network/NetworkStateProviderTest.kt
@@ -12,7 +12,6 @@ import io.kotest.matchers.shouldBe
 import io.mockk.Called
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.just
@@ -22,7 +21,6 @@ import io.mockk.verifySequence
 import kotlinx.coroutines.CoroutineScope
 import kotlinx.coroutines.flow.first
 import kotlinx.coroutines.test.TestCoroutineScope
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -75,11 +73,6 @@ class NetworkStateProviderTest : BaseTest() {
         every { testSettings.fakeMeteredConnection } returns mockFlowPreference(false)
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createInstance(scope: CoroutineScope) = NetworkStateProvider(
         context = context,
         appScope = scope,
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/security/EncryptedPreferencesFactoryTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/security/EncryptedPreferencesFactoryTest.kt
index a2c7fd375dada6f1af5880ae0b114d0373a4ea77..dc37e11dfe7312d08cf5ae20eb12c9d8a6c1a77a 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/security/EncryptedPreferencesFactoryTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/security/EncryptedPreferencesFactoryTest.kt
@@ -4,10 +4,8 @@ import android.content.Context
 import io.kotest.assertions.throwables.shouldNotThrowAny
 import io.mockk.Called
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.impl.annotations.MockK
 import io.mockk.verify
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -20,11 +18,6 @@ class EncryptedPreferencesFactoryTest : BaseTest() {
         MockKAnnotations.init(this)
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     @Test
     fun `sideeffect free init`() {
         shouldNotThrowAny {
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/security/EncryptionResetToolTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/security/EncryptionResetToolTest.kt
index 0a08f7fe52ef4ae5ea81d87b74b88479bd2d9fa3..9b16e6e67db00a92b49e033383d6bc472ef13338 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/security/EncryptionResetToolTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/security/EncryptionResetToolTest.kt
@@ -6,7 +6,6 @@ import de.rki.coronawarnapp.exception.CwaSecurityException
 import de.rki.coronawarnapp.util.TimeStamper
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import org.joda.time.Instant
@@ -52,8 +51,6 @@ class EncryptionResetToolTest : BaseIOTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
-
         testDir.deleteRecursively()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/security/SecurityHelperTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/security/SecurityHelperTest.kt
index 8aefbcda323d2de64c1d8ec4456c7395371b8301..cb3ce3fdd240f7fd67e74f109957c3b789355709 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/security/SecurityHelperTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/security/SecurityHelperTest.kt
@@ -5,13 +5,11 @@ import de.rki.coronawarnapp.util.di.ApplicationComponent
 import io.kotest.assertions.throwables.shouldThrow
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.mockk
 import io.mockk.verify
 import io.mockk.verifySequence
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -34,11 +32,6 @@ class SecurityHelperTest : BaseTest() {
         every { appComponent.encryptedPreferencesFactory } returns preferenceFactory
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     @Test
     fun `error free case is sideeffect free`() {
         val sharedPreferences: SharedPreferences = mockk()
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/worker/CWAWorkerFactoryTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/worker/CWAWorkerFactoryTest.kt
index 434d2229793fd9fbb36d78e58a71eb77d1256be3..4fdcc480084e1ab05272eeff493aa49a5880a4ca 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/worker/CWAWorkerFactoryTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/worker/CWAWorkerFactoryTest.kt
@@ -8,10 +8,8 @@ import de.rki.coronawarnapp.worker.DiagnosisKeyRetrievalOneTimeWorker
 import io.kotest.matchers.shouldBe
 import io.kotest.matchers.shouldNotBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -35,11 +33,6 @@ class CWAWorkerFactoryTest : BaseTest() {
         workerFactories[DiagnosisKeyRetrievalOneTimeWorker::class.java] = Provider { ourFactory }
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     fun createInstance() = CWAWorkerFactory(
         workerFactories
     )
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/verification/VerificationModuleTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/verification/VerificationModuleTest.kt
index 8ea767b587f35699e874af1e05f6b29094f5a493..32eb9f446b80536621b2770298a932f9e8f932ff 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/verification/VerificationModuleTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/verification/VerificationModuleTest.kt
@@ -4,7 +4,6 @@ import android.content.Context
 import io.kotest.assertions.throwables.shouldNotThrowAny
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.verify
@@ -35,7 +34,6 @@ class VerificationModuleTest : BaseIOTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         testDir.deleteRecursively()
     }
 
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/verification/server/VerificationApiV1Test.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/verification/server/VerificationApiV1Test.kt
index 3fe5a0c47a1f30a09a681788c97646221d91821e..74f8ea11fe2cdd3f9d43aa91ee3368c7fc707065 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/verification/server/VerificationApiV1Test.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/verification/server/VerificationApiV1Test.kt
@@ -5,7 +5,6 @@ import de.rki.coronawarnapp.http.HttpModule
 import de.rki.coronawarnapp.verification.VerificationModule
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import kotlinx.coroutines.runBlocking
@@ -43,7 +42,6 @@ class VerificationApiV1Test : BaseIOTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         webServer.shutdown()
         testDir.deleteRecursively()
     }
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/verification/server/VerificationServerTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/verification/server/VerificationServerTest.kt
index cc6754b839a79f9d534c75a95b1cdd4d21f03451..20fa57386a359a277ae4f2ee6f4dd88e69828a9b 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/verification/server/VerificationServerTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/verification/server/VerificationServerTest.kt
@@ -6,7 +6,6 @@ import de.rki.coronawarnapp.util.headerSizeIgnoringContentLength
 import de.rki.coronawarnapp.verification.VerificationModule
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.every
@@ -47,7 +46,6 @@ class VerificationServerTest : BaseIOTest() {
 
     @AfterEach
     fun teardown() {
-        clearAllMocks()
         webServer.shutdown()
         testDir.deleteRecursively()
     }
diff --git a/Corona-Warn-App/src/test/java/testhelpers/BaseTest.kt b/Corona-Warn-App/src/test/java/testhelpers/BaseTest.kt
new file mode 100644
index 0000000000000000000000000000000000000000..3eaa6c4c82ca6dd006bcabdd2300744613ed9421
--- /dev/null
+++ b/Corona-Warn-App/src/test/java/testhelpers/BaseTest.kt
@@ -0,0 +1,27 @@
+package testhelpers
+
+import io.mockk.unmockkAll
+import org.junit.jupiter.api.AfterAll
+import testhelpers.logging.JUnitTree
+import timber.log.Timber
+
+abstract class BaseTest {
+
+    init {
+        Timber.uprootAll()
+        Timber.plant(JUnitTree())
+        testClassName = this.javaClass.simpleName
+    }
+
+    companion object {
+        private var testClassName: String? = null
+
+        @JvmStatic
+        @AfterAll
+        fun onTestClassFinished() {
+            unmockkAll()
+            Timber.tag(testClassName).v("onTestClassFinished()")
+            Timber.uprootAll()
+        }
+    }
+}
diff --git a/Corona-Warn-App/src/testDevice/java/de/rki/coronawarnapp/nearby/modules/exposurewindow/ExposureWindowProviderTest.kt b/Corona-Warn-App/src/testDevice/java/de/rki/coronawarnapp/nearby/modules/exposurewindow/ExposureWindowProviderTest.kt
index 9d495c8c22e32f7ad4fcaa7548c38ac13ebda676..663e4d8eb6c66cf1315ba2217c4c26a9681f8e8c 100644
--- a/Corona-Warn-App/src/testDevice/java/de/rki/coronawarnapp/nearby/modules/exposurewindow/ExposureWindowProviderTest.kt
+++ b/Corona-Warn-App/src/testDevice/java/de/rki/coronawarnapp/nearby/modules/exposurewindow/ExposureWindowProviderTest.kt
@@ -4,10 +4,8 @@ import com.google.android.gms.nearby.exposurenotification.ExposureNotificationCl
 import de.rki.coronawarnapp.util.CWADebug
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.impl.annotations.MockK
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -26,11 +24,6 @@ class ExposureWindowProviderTest : BaseTest() {
         coEvery { googleENFClient.exposureWindows } returns MockGMSTask.forValue(emptyList())
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createProvider() = DefaultExposureWindowProvider(
         client = googleENFClient
     )
diff --git a/Corona-Warn-App/src/testDevice/java/de/rki/coronawarnapp/test/risk/storage/DefaultRiskLevelStorageTest.kt b/Corona-Warn-App/src/testDevice/java/de/rki/coronawarnapp/test/risk/storage/DefaultRiskLevelStorageTest.kt
index f03b3bfa7a1e7d6d9be81d3e6c1d13840099afd4..d0dffa6dfc7573022255661d0abeb6652c7a32b4 100644
--- a/Corona-Warn-App/src/testDevice/java/de/rki/coronawarnapp/test/risk/storage/DefaultRiskLevelStorageTest.kt
+++ b/Corona-Warn-App/src/testDevice/java/de/rki/coronawarnapp/test/risk/storage/DefaultRiskLevelStorageTest.kt
@@ -11,7 +11,6 @@ import de.rki.coronawarnapp.server.protocols.internal.v2.RiskCalculationParamete
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.every
@@ -23,7 +22,6 @@ import kotlinx.coroutines.flow.flowOf
 import kotlinx.coroutines.test.TestCoroutineScope
 import kotlinx.coroutines.test.runBlockingTest
 import org.joda.time.Instant
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import testhelpers.BaseTest
@@ -91,11 +89,6 @@ class DefaultRiskLevelStorageTest : BaseTest() {
         coEvery { exposureWindowTables.deleteByRiskResultId(any()) } returns 1
     }
 
-    @AfterEach
-    fun tearDown() {
-        clearAllMocks()
-    }
-
     private fun createInstance(
         scope: CoroutineScope = TestCoroutineScope()
     ) = DefaultRiskLevelStorage(
diff --git a/Corona-Warn-App/src/testDeviceForTesters/java/de/rki/coronawarnapp/nearby/modules/exposurewindow/ExposureWindowProviderTest.kt b/Corona-Warn-App/src/testDeviceForTesters/java/de/rki/coronawarnapp/nearby/modules/exposurewindow/ExposureWindowProviderTest.kt
index f9b77f2560de2a6f1a7d0e0f84642cd3a9085468..07e494877fd267974e30c263bdc21d783d7267c2 100644
--- a/Corona-Warn-App/src/testDeviceForTesters/java/de/rki/coronawarnapp/nearby/modules/exposurewindow/ExposureWindowProviderTest.kt
+++ b/Corona-Warn-App/src/testDeviceForTesters/java/de/rki/coronawarnapp/nearby/modules/exposurewindow/ExposureWindowProviderTest.kt
@@ -5,17 +5,15 @@ import de.rki.coronawarnapp.storage.TestSettings
 import de.rki.coronawarnapp.util.CWADebug
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.impl.annotations.MockK
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
-import testhelpers.BaseTest
+import testhelpers.BaseTestInstrumentation
 import testhelpers.gms.MockGMSTask
 import java.io.File
 
-class ExposureWindowProviderTest : BaseTest() {
+class ExposureWindowProviderTest : BaseTestInstrumentation() {
     @MockK lateinit var googleENFClient: ExposureNotificationClient
     @MockK lateinit var testSettings: TestSettings
     @MockK lateinit var fakeExposureWindowProvider: FakeExposureWindowProvider
@@ -29,11 +27,6 @@ class ExposureWindowProviderTest : BaseTest() {
         coEvery { googleENFClient.exposureWindows } returns MockGMSTask.forValue(emptyList())
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createProvider() = DefaultExposureWindowProvider(
         client = googleENFClient,
         testSettings = testSettings,
diff --git a/Corona-Warn-App/src/testDeviceForTesters/java/de/rki/coronawarnapp/test/api/ui/TestForApiFragmentViewModelTest.kt b/Corona-Warn-App/src/testDeviceForTesters/java/de/rki/coronawarnapp/test/api/ui/TestForApiFragmentViewModelTest.kt
index f78db7fb609e26accf5ec64bcb9dae722a0e7b5c..6ba4b649fc9407effae7afd673e9b929a513e69a 100644
--- a/Corona-Warn-App/src/testDeviceForTesters/java/de/rki/coronawarnapp/test/api/ui/TestForApiFragmentViewModelTest.kt
+++ b/Corona-Warn-App/src/testDeviceForTesters/java/de/rki/coronawarnapp/test/api/ui/TestForApiFragmentViewModelTest.kt
@@ -4,17 +4,15 @@ import android.content.Context
 import de.rki.coronawarnapp.environment.EnvironmentSetup
 import de.rki.coronawarnapp.task.TaskController
 import io.mockk.MockKAnnotations
-import io.mockk.clearAllMocks
 import io.mockk.impl.annotations.MockK
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.extension.ExtendWith
-import testhelpers.BaseTest
+import testhelpers.BaseTestInstrumentation
 import testhelpers.extensions.CoroutinesTestExtension
 import testhelpers.extensions.InstantExecutorExtension
 
 @ExtendWith(InstantExecutorExtension::class, CoroutinesTestExtension::class)
-class TestForApiFragmentViewModelTest : BaseTest() {
+class TestForApiFragmentViewModelTest : BaseTestInstrumentation() {
 
     @MockK private lateinit var context: Context
     @MockK lateinit var taskController: TaskController
@@ -25,9 +23,4 @@ class TestForApiFragmentViewModelTest : BaseTest() {
     fun setup() {
         MockKAnnotations.init(this)
     }
-
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
 }
diff --git a/Corona-Warn-App/src/testDeviceForTesters/java/de/rki/coronawarnapp/test/debugoptions/ui/DebugOptionsFragmentViewModelTest.kt b/Corona-Warn-App/src/testDeviceForTesters/java/de/rki/coronawarnapp/test/debugoptions/ui/DebugOptionsFragmentViewModelTest.kt
index e511f7bdb08327311abd5b460c9aa22a63deb008..7666b705e092c26da33a45c1f5fe515fa268c3c7 100644
--- a/Corona-Warn-App/src/testDeviceForTesters/java/de/rki/coronawarnapp/test/debugoptions/ui/DebugOptionsFragmentViewModelTest.kt
+++ b/Corona-Warn-App/src/testDeviceForTesters/java/de/rki/coronawarnapp/test/debugoptions/ui/DebugOptionsFragmentViewModelTest.kt
@@ -6,24 +6,22 @@ import de.rki.coronawarnapp.environment.EnvironmentSetup
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.every
 import io.mockk.impl.annotations.MockK
 import io.mockk.just
 import io.mockk.mockk
 import io.mockk.verify
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
 import org.junit.jupiter.api.extension.ExtendWith
-import testhelpers.BaseTest
+import testhelpers.BaseTestInstrumentation
 import testhelpers.TestDispatcherProvider
 import testhelpers.extensions.CoroutinesTestExtension
 import testhelpers.extensions.InstantExecutorExtension
 import testhelpers.flakyTest
 
 @ExtendWith(InstantExecutorExtension::class, CoroutinesTestExtension::class)
-class DebugOptionsFragmentViewModelTest : BaseTest() {
+class DebugOptionsFragmentViewModelTest : BaseTestInstrumentation() {
 
     @MockK private lateinit var environmentSetup: EnvironmentSetup
     @MockK private lateinit var context: Context
@@ -50,11 +48,6 @@ class DebugOptionsFragmentViewModelTest : BaseTest() {
         }
     }
 
-    @AfterEach
-    fun teardown() {
-        clearAllMocks()
-    }
-
     private fun createViewModel(): DebugOptionsFragmentViewModel = DebugOptionsFragmentViewModel(
         envSetup = environmentSetup,
         dispatcherProvider = TestDispatcherProvider()
diff --git a/Corona-Warn-App/src/testDeviceForTesters/java/de/rki/coronawarnapp/test/risk/storage/DefaultRiskLevelStorageTest.kt b/Corona-Warn-App/src/testDeviceForTesters/java/de/rki/coronawarnapp/test/risk/storage/DefaultRiskLevelStorageTest.kt
index c2b430f3436012e5ba5cc331e306aca4a9b2676d..308b12ed372971e6e7b48147735fd9bdb267c059 100644
--- a/Corona-Warn-App/src/testDeviceForTesters/java/de/rki/coronawarnapp/test/risk/storage/DefaultRiskLevelStorageTest.kt
+++ b/Corona-Warn-App/src/testDeviceForTesters/java/de/rki/coronawarnapp/test/risk/storage/DefaultRiskLevelStorageTest.kt
@@ -11,7 +11,6 @@ import de.rki.coronawarnapp.server.protocols.internal.v2.RiskCalculationParamete
 import io.kotest.matchers.shouldBe
 import io.mockk.MockKAnnotations
 import io.mockk.Runs
-import io.mockk.clearAllMocks
 import io.mockk.coEvery
 import io.mockk.coVerify
 import io.mockk.every
@@ -22,12 +21,11 @@ import kotlinx.coroutines.flow.flowOf
 import kotlinx.coroutines.test.TestCoroutineScope
 import kotlinx.coroutines.test.runBlockingTest
 import org.joda.time.Instant
-import org.junit.jupiter.api.AfterEach
 import org.junit.jupiter.api.BeforeEach
 import org.junit.jupiter.api.Test
-import testhelpers.BaseTest
+import testhelpers.BaseTestInstrumentation
 
-class DefaultRiskLevelStorageTest : BaseTest() {
+class DefaultRiskLevelStorageTest : BaseTestInstrumentation() {
 
     @MockK lateinit var databaseFactory: RiskResultDatabase.Factory
     @MockK lateinit var database: RiskResultDatabase
@@ -90,11 +88,6 @@ class DefaultRiskLevelStorageTest : BaseTest() {
         coEvery { exposureWindowTables.deleteByRiskResultId(any()) } returns 1
     }
 
-    @AfterEach
-    fun tearDown() {
-        clearAllMocks()
-    }
-
     private fun createInstance() = DefaultRiskLevelStorage(
         scope = TestCoroutineScope(),
         riskResultDatabaseFactory = databaseFactory,
diff --git a/Corona-Warn-App/src/testShared/java/testhelpers/BaseTest.kt b/Corona-Warn-App/src/testShared/java/testhelpers/BaseTest.kt
deleted file mode 100644
index 8dbaf6bff0b72e636829165f2f7629b11a2aa331..0000000000000000000000000000000000000000
--- a/Corona-Warn-App/src/testShared/java/testhelpers/BaseTest.kt
+++ /dev/null
@@ -1,12 +0,0 @@
-package testhelpers
-
-import testhelpers.logging.JUnitTree
-import timber.log.Timber
-
-abstract class BaseTest {
-
-    init {
-        Timber.uprootAll()
-        Timber.plant(JUnitTree())
-    }
-}
diff --git a/Corona-Warn-App/src/testShared/java/testhelpers/BaseTestInstrumentation.kt b/Corona-Warn-App/src/testShared/java/testhelpers/BaseTestInstrumentation.kt
new file mode 100644
index 0000000000000000000000000000000000000000..92f6170cf93acce2825bb792397c8ac854e75d16
--- /dev/null
+++ b/Corona-Warn-App/src/testShared/java/testhelpers/BaseTestInstrumentation.kt
@@ -0,0 +1,27 @@
+package testhelpers
+
+import io.mockk.unmockkAll
+import org.junit.AfterClass
+import testhelpers.logging.JUnitTree
+import timber.log.Timber
+
+abstract class BaseTestInstrumentation {
+
+    init {
+        Timber.uprootAll()
+        Timber.plant(JUnitTree())
+        testClassName = this.javaClass.simpleName
+    }
+
+    companion object {
+        private var testClassName: String? = null
+
+        @JvmStatic
+        @AfterClass
+        fun onTestClassFinished() {
+            unmockkAll()
+            Timber.tag(testClassName).v("onTestClassFinished()")
+            Timber.uprootAll()
+        }
+    }
+}