diff --git a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/main/home/HomeData.kt b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/main/home/HomeData.kt
index bd3f9bd2fa861d2d46e4ab15051607a6e7b6282f..97a76ddf8297d79305f7382d0a3576c5fd0e30e2 100644
--- a/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/main/home/HomeData.kt
+++ b/Corona-Warn-App/src/androidTest/java/de/rki/coronawarnapp/ui/main/home/HomeData.kt
@@ -33,12 +33,12 @@ import org.joda.time.Instant
 object HomeData {
 
     object Tracing {
-        val lowRiskItem = LowRiskCard.Item(
+        val LOW_RISK_ITEM = LowRiskCard.Item(
             state = LowRisk(
                 riskState = RiskState.LOW_RISK,
-                isInDetailsMode = true,
+                isInDetailsMode = false,
                 lastExposureDetectionTime = Instant.now(),
-                allowManualUpdate = true,
+                allowManualUpdate = false,
                 daysWithEncounters = 1,
                 activeTracingDays = 1
             ),
@@ -46,12 +46,12 @@ object HomeData {
             onUpdateClick = {}
         )
 
-        val increasedRiskItem = IncreasedRiskCard.Item(
+        val INCREASED_RISK_ITEM = IncreasedRiskCard.Item(
             state = IncreasedRisk(
                 riskState = RiskState.INCREASED_RISK,
-                isInDetailsMode = true,
+                isInDetailsMode = false,
                 lastExposureDetectionTime = Instant.now(),
-                allowManualUpdate = true,
+                allowManualUpdate = false,
                 daysWithEncounters = 1,
                 activeTracingDays = 1,
                 lastEncounterAt = Instant.now()
@@ -60,29 +60,29 @@ object HomeData {
             onUpdateClick = {}
         )
 
-        val tracingDisabledItem = TracingDisabledCard.Item(
+        val TRACING_DISABLED_ITEM = TracingDisabledCard.Item(
             state = TracingDisabled(
                 riskState = RiskState.LOW_RISK,
-                isInDetailsMode = true,
+                isInDetailsMode = false,
                 lastExposureDetectionTime = Instant.now()
             ),
             onCardClick = {},
             onEnableTracingClick = {}
         )
 
-        val tracingProgressItem = TracingProgressCard.Item(
+        val TRACING_PROGRESS_ITEM = TracingProgressCard.Item(
             state = TracingInProgress(
                 riskState = RiskState.LOW_RISK,
-                isInDetailsMode = true,
+                isInDetailsMode = false,
                 tracingProgress = TracingProgress.Downloading
             ),
             onCardClick = {}
         )
 
-        val tracingFailedItem = TracingFailedCard.Item(
+        val TRACING_FAILED_ITEM = TracingFailedCard.Item(
             state = TracingFailed(
                 riskState = RiskState.CALCULATION_FAILED,
-                isInDetailsMode = true,
+                isInDetailsMode = false,
                 lastExposureDetectionTime = Instant.now()
             ),
             onCardClick = {},
@@ -91,41 +91,41 @@ object HomeData {
     }
 
     object Submission {
-        val testUnregisteredItem = TestUnregisteredCard.Item(
+        val TEST_UNREGISTERED_ITEM = TestUnregisteredCard.Item(
             state = NoTest,
             onClickAction = {}
         )
 
-        val testFetchingItem = TestFetchingCard.Item(
+        val TEST_FETCHING_ITEM = TestFetchingCard.Item(
             state = FetchingResult
         )
 
-        val testPositiveItem = TestPositiveCard.Item(
+        val TEST_POSITIVE_ITEM = TestPositiveCard.Item(
             state = TestPositive,
             onClickAction = {}
         )
 
-        val testNegativeItem = TestNegativeCard.Item(
+        val TEST_NEGATIVE_ITEM = TestNegativeCard.Item(
             state = TestNegative,
             onClickAction = {}
         )
 
-        val testInvalidItem = TestInvalidCard.Item(
+        val TEST_INVALID_ITEM = TestInvalidCard.Item(
             state = TestInvalid,
             onDeleteTest = {}
         )
 
-        val testErrorItem = TestErrorCard.Item(
+        val TEST_ERROR_ITEM = TestErrorCard.Item(
             state = TestError,
             onDeleteTest = {}
         )
 
-        val testPendingItem = TestPendingCard.Item(
+        val TEST_PENDING_ITEM = TestPendingCard.Item(
             state = TestPending,
             onClickAction = {}
         )
 
-        val testSubmissionDoneItem = TestSubmissionDoneCard.Item(
+        val TEST_SUBMISSION_DONE_ITEM = TestSubmissionDoneCard.Item(
             state = SubmissionDone
         )
     }
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 98cfdb7a57391329c33bf6c7c6a634104b697b7e..2561cfe65e88ae92da079e91b7ad63a59af453ce 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
@@ -1,6 +1,7 @@
 package de.rki.coronawarnapp.ui.main.home
 
 import androidx.fragment.app.testing.launchFragment
+import androidx.lifecycle.LiveData
 import androidx.lifecycle.MutableLiveData
 import androidx.test.espresso.Espresso.onView
 import androidx.test.espresso.matcher.ViewMatchers.withId
@@ -13,15 +14,17 @@ import de.rki.coronawarnapp.main.CWASettings
 import de.rki.coronawarnapp.notification.TestResultNotificationService
 import de.rki.coronawarnapp.storage.TracingRepository
 import de.rki.coronawarnapp.submission.SubmissionRepository
-import de.rki.coronawarnapp.submission.ui.homecards.NoTest
 import de.rki.coronawarnapp.submission.ui.homecards.SubmissionStateProvider
-import de.rki.coronawarnapp.submission.ui.homecards.TestUnregisteredCard
+import de.rki.coronawarnapp.submission.ui.homecards.TestPositiveCard
+import de.rki.coronawarnapp.submission.ui.homecards.TestResultItem
+import de.rki.coronawarnapp.submission.ui.homecards.TestSubmissionDoneCard
 import de.rki.coronawarnapp.tracing.GeneralTracingStatus
 import de.rki.coronawarnapp.tracing.states.TracingStateProvider
 import de.rki.coronawarnapp.tracing.ui.homecards.TracingStateItem
 import de.rki.coronawarnapp.tracing.ui.statusbar.TracingHeaderState
 import de.rki.coronawarnapp.ui.main.home.items.DiaryCard
 import de.rki.coronawarnapp.ui.main.home.items.FAQCard
+import de.rki.coronawarnapp.ui.main.home.items.HomeItem
 import de.rki.coronawarnapp.util.security.EncryptionErrorResetTool
 import de.rki.coronawarnapp.util.ui.SingleLiveEvent
 import io.mockk.MockKAnnotations
@@ -43,6 +46,7 @@ import testhelpers.SystemUIDemoModeRule
 import testhelpers.TestDispatcherProvider
 import testhelpers.launchFragmentInContainer2
 import testhelpers.recyclerScrollTo
+import timber.log.Timber
 import tools.fastlane.screengrab.Screengrab
 import tools.fastlane.screengrab.locale.LocaleTestRule
 
@@ -103,14 +107,22 @@ class HomeFragmentTest : BaseUITest() {
     @Screenshot
     @Test
     fun capture_screenshot_low_risk() {
-        every { viewModel.homeItems } returns itemsLiveData(HomeData.Tracing.lowRiskItem)
+        every { viewModel.homeItems } returns itemsLiveData(
+            HomeData.Tracing.LOW_RISK_ITEM
+        )
+
         captureScreenshot()
+        onView(withId(R.id.recycler_view)).perform(recyclerScrollTo())
+        Thread.sleep(SCREENSHOT_DELAY_TIME)
+        Screengrab.screenshot(HomeFragment::class.simpleName.plus("2"))
     }
 
     @Screenshot
     @Test
     fun capture_screenshot_increased_risk() {
-        every { viewModel.homeItems } returns itemsLiveData(HomeData.Tracing.increasedRiskItem)
+        every { viewModel.homeItems } returns itemsLiveData(
+            HomeData.Tracing.INCREASED_RISK_ITEM
+        )
         captureScreenshot()
     }
 
@@ -118,14 +130,90 @@ class HomeFragmentTest : BaseUITest() {
     @Test
     fun capture_screenshot_tracing_disabled() {
         every { viewModel.tracingHeaderState } returns MutableLiveData(TracingHeaderState.TracingInActive)
-        every { viewModel.homeItems } returns itemsLiveData(HomeData.Tracing.tracingDisabledItem)
+        every { viewModel.homeItems } returns itemsLiveData(
+            HomeData.Tracing.TRACING_DISABLED_ITEM
+        )
         captureScreenshot()
     }
 
     @Screenshot
     @Test
     fun capture_screenshot_tracing_progress_downloading() {
-        every { viewModel.homeItems } returns itemsLiveData(HomeData.Tracing.tracingProgressItem)
+        every { viewModel.homeItems } returns itemsLiveData(
+            HomeData.Tracing.TRACING_PROGRESS_ITEM
+        )
+        captureScreenshot()
+    }
+
+    @Screenshot
+    @Test
+    fun capture_screenshot_tracing_failed() {
+        every { viewModel.homeItems } returns itemsLiveData(
+            HomeData.Tracing.TRACING_FAILED_ITEM
+        )
+        captureScreenshot()
+    }
+
+    @Screenshot
+    @Test
+    fun capture_screenshot_test_submission_done() {
+        every { viewModel.homeItems } returns itemsLiveData(
+            submissionTestResultItem = HomeData.Submission.TEST_SUBMISSION_DONE_ITEM
+        )
+        captureScreenshot()
+    }
+
+    @Screenshot
+    @Test
+    fun capture_screenshot_test_error() {
+        every { viewModel.homeItems } returns itemsLiveData(
+            submissionTestResultItem = HomeData.Submission.TEST_ERROR_ITEM
+        )
+        captureScreenshot()
+    }
+
+    @Screenshot
+    @Test
+    fun capture_screenshot_test_fetching() {
+        every { viewModel.homeItems } returns itemsLiveData(
+            submissionTestResultItem = HomeData.Submission.TEST_FETCHING_ITEM
+        )
+        captureScreenshot()
+    }
+
+    @Screenshot
+    @Test
+    fun capture_screenshot_test_invalid() {
+        every { viewModel.homeItems } returns itemsLiveData(
+            submissionTestResultItem = HomeData.Submission.TEST_INVALID_ITEM
+        )
+        captureScreenshot()
+    }
+
+    @Screenshot
+    @Test
+    fun capture_screenshot_test_negative() {
+        every { viewModel.homeItems } returns itemsLiveData(
+            submissionTestResultItem = HomeData.Submission.TEST_NEGATIVE_ITEM
+        )
+        captureScreenshot()
+    }
+
+    @Screenshot
+    @Test
+    fun capture_screenshot_test_positive() {
+        every { viewModel.homeItems } returns itemsLiveData(
+            submissionTestResultItem = HomeData.Submission.TEST_POSITIVE_ITEM
+        )
+        captureScreenshot()
+    }
+
+    @Screenshot
+    @Test
+    fun capture_screenshot_test_pending() {
+        every { viewModel.homeItems } returns itemsLiveData(
+            submissionTestResultItem = HomeData.Submission.TEST_PENDING_ITEM
+        )
         captureScreenshot()
     }
 
@@ -134,20 +222,26 @@ class HomeFragmentTest : BaseUITest() {
         launchFragmentInContainer2<HomeFragment>()
         Thread.sleep(SCREENSHOT_DELAY_TIME)
         Screengrab.screenshot(simpleName)
-
-        onView(withId(R.id.recycler_view)).perform(recyclerScrollTo())
-        Thread.sleep(SCREENSHOT_DELAY_TIME)
-        Screengrab.screenshot(simpleName.plus("2"))
     }
 
-    private fun itemsLiveData(tracingStateItem: TracingStateItem) =
+    private fun itemsLiveData(
+        tracingStateItem: TracingStateItem = HomeData.Tracing.LOW_RISK_ITEM,
+        submissionTestResultItem: TestResultItem = HomeData.Submission.TEST_UNREGISTERED_ITEM
+    ): LiveData<List<HomeItem>> =
         MutableLiveData(
-            listOf(
-                tracingStateItem,
-                TestUnregisteredCard.Item(NoTest, onClickAction = {}),
-                DiaryCard.Item(onClickAction = { }),
-                FAQCard.Item(onClickAction = { })
-            )
+            mutableListOf<HomeItem>().apply {
+                when (submissionTestResultItem) {
+                    is TestSubmissionDoneCard.Item,
+                    is TestPositiveCard.Item -> {
+                        Timber.d("Tracing item is not added, submission:$submissionTestResultItem")
+                    }
+                    else -> add(tracingStateItem)
+                }
+
+                add(submissionTestResultItem)
+                add(DiaryCard.Item {})
+                add(FAQCard.Item {})
+            }
         )
 
     private fun homeFragmentViewModelSpy() = spyk(