diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/bugreporting/BugReporter.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/bugreporting/BugReporter.kt
index d3ae63b5936f0cb30d67f227d1640aef9603d987..d67d523d971bad04dbaa4f18d84230aa5e002a6d 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/bugreporting/BugReporter.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/bugreporting/BugReporter.kt
@@ -1,5 +1,6 @@
 package de.rki.coronawarnapp.bugreporting
 
+import de.rki.coronawarnapp.util.CWADebug
 import de.rki.coronawarnapp.util.di.AppInjector
 
 interface BugReporter {
@@ -7,6 +8,7 @@ interface BugReporter {
 }
 
 fun Throwable.reportProblem(tag: String? = null, info: String? = null) {
+    if (CWADebug.isAUnitTest) return
     val reporter = AppInjector.component.bugReporter
     reporter.report(this, tag, info)
 }
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/exception/reporting/ExceptionReporter.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/exception/reporting/ExceptionReporter.kt
index 8f602075d2af674dfa4b9853c9d9c22428e36777..06a6455a5d21d2d9a03b2cfd8c7c48dd5607cd51 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/exception/reporting/ExceptionReporter.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/exception/reporting/ExceptionReporter.kt
@@ -10,6 +10,7 @@ import de.rki.coronawarnapp.exception.ExceptionCategory
 import de.rki.coronawarnapp.exception.reporting.ReportingConstants.STATUS_CODE_GOOGLE_API_FAIL
 import de.rki.coronawarnapp.exception.reporting.ReportingConstants.STATUS_CODE_GOOGLE_UPDATE_NEEDED
 import de.rki.coronawarnapp.exception.reporting.ReportingConstants.STATUS_CODE_REACHED_REQUEST_LIMIT
+import de.rki.coronawarnapp.util.CWADebug
 import de.rki.coronawarnapp.util.tryFormattedError
 import java.io.PrintWriter
 import java.io.StringWriter
@@ -22,6 +23,8 @@ fun Throwable.report(
     prefix: String?,
     suffix: String?
 ) {
+    if (CWADebug.isAUnitTest) return
+
     reportProblem(tag = prefix, info = suffix)
     val context = CoronaWarnApplication.getAppContext()
 
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/task/TaskController.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/task/TaskController.kt
index 77e22394784193a235c6a0793ebedf78d2ff5231..46b3964b9c81961b732ac03c8c5bdb4758b52211 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/task/TaskController.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/task/TaskController.kt
@@ -1,6 +1,9 @@
 package de.rki.coronawarnapp.task
 
 import androidx.annotation.VisibleForTesting
+import de.rki.coronawarnapp.bugreporting.reportProblem
+import de.rki.coronawarnapp.exception.ExceptionCategory
+import de.rki.coronawarnapp.exception.reporting.report
 import de.rki.coronawarnapp.task.TaskFactory.Config.CollisionBehavior
 import de.rki.coronawarnapp.task.internal.InternalTaskState
 import de.rki.coronawarnapp.util.TimeStamper
@@ -147,6 +150,8 @@ class TaskController @Inject constructor(
                     state.job.getCompleted()
                 } else {
                     Timber.tag(TAG).e(error, "Task failed: %s", state)
+                    error.report(ExceptionCategory.INTERNAL)
+                    error.reportProblem(tag = state.request.type.simpleName)
                     null
                 }
 
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/transaction/TransactionCoroutineScope.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/task/internal/DefaultTaskCoroutineScope.kt
similarity index 75%
rename from Corona-Warn-App/src/main/java/de/rki/coronawarnapp/transaction/TransactionCoroutineScope.kt
rename to Corona-Warn-App/src/main/java/de/rki/coronawarnapp/task/internal/DefaultTaskCoroutineScope.kt
index 0e27712b8af6d356585d87e67c6576dec91421ff..c10a3c04117bfa1fb76c1cf3da536a8b8684ffab 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/transaction/TransactionCoroutineScope.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/task/internal/DefaultTaskCoroutineScope.kt
@@ -1,4 +1,4 @@
-package de.rki.coronawarnapp.transaction
+package de.rki.coronawarnapp.task.internal
 
 import kotlinx.coroutines.CoroutineScope
 import kotlinx.coroutines.Dispatchers
@@ -8,6 +8,6 @@ import javax.inject.Singleton
 import kotlin.coroutines.CoroutineContext
 
 @Singleton
-class TransactionCoroutineScope @Inject constructor() : CoroutineScope {
+class DefaultTaskCoroutineScope @Inject constructor() : CoroutineScope {
     override val coroutineContext: CoroutineContext = SupervisorJob() + Dispatchers.Default
 }
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/task/internal/TaskModule.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/task/internal/TaskModule.kt
index c94f6beb9e882a0cf1cd9c44374ba40637fa4333..f0169422b448ae4e1153a12fda48c7ff21f89b6d 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/task/internal/TaskModule.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/task/internal/TaskModule.kt
@@ -4,7 +4,6 @@ import dagger.Module
 import dagger.Provides
 import de.rki.coronawarnapp.task.TaskCoroutineScope
 import de.rki.coronawarnapp.task.example.QueueingTaskModule
-import de.rki.coronawarnapp.transaction.TransactionCoroutineScope
 import kotlinx.coroutines.CoroutineScope
 import javax.inject.Singleton
 
@@ -17,5 +16,5 @@ class TaskModule {
     @Provides
     @Singleton
     @TaskCoroutineScope
-    fun provideScope(scope: TransactionCoroutineScope): CoroutineScope = scope
+    fun provideScope(scope: DefaultTaskCoroutineScope): CoroutineScope = scope
 }
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/CWADebug.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/CWADebug.kt
index 8efb6c14888cb3fb0193da546f7ea5f9cf7566d4..cade97a58323736139c16c3898b04b26944a21fe 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/CWADebug.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/CWADebug.kt
@@ -31,4 +31,13 @@ object CWADebug {
         DEVICE("device"),
         DEVICE_FOR_TESTERS("deviceForTesters")
     }
+
+    val isAUnitTest: Boolean by lazy {
+        try {
+            Class.forName("testhelpers.IsAUnitTest")
+            true
+        } catch (e: Exception) {
+            false
+        }
+    }
 }
diff --git a/Corona-Warn-App/src/test/java/testhelpers/IsAUnitTest.kt b/Corona-Warn-App/src/test/java/testhelpers/IsAUnitTest.kt
new file mode 100644
index 0000000000000000000000000000000000000000..2af3e4cb78347fa7849576e9c3f36eac53fe3968
--- /dev/null
+++ b/Corona-Warn-App/src/test/java/testhelpers/IsAUnitTest.kt
@@ -0,0 +1,3 @@
+package testhelpers
+
+class IsAUnitTest