CodingWithMitch - UI Testing with Jetpack and AndroidX

CodingWithMitch - UI Testing with Jetpack and AndroidX

Register & Get access to index
WaJHmAF.png

Description
Course Objective:

Take your knowledge of UI testing to the next level by writing real UI tests for a demo app that uses:

  • Kotlin
  • Dagger2
  • Navigation Components
  • MVI Architecture (repository pattern)
  • A real network layer
  • Flows and Channels

We'll be using the newest testing tools from androidx including:
Target Audience:
Those who have some experience writing UI tests. In this course I'll be using the newest tools available so if you think your knowledge of UI testing is getting a bit dated, this will be the perfect course.
WARNING:
There is no database caching in this course. No Room Persistence Library.
Prerequisites:

  1. UI Testing for Beginners
  2. Introduction to MVI Architecture

What you'll learn:
  • Building Test FAKES for any class
    • Do not mistake this for mocks. That is something different.
  • Custom AndroidJUnitTestRunner
  • ActivityScenario
  • ActivityScenarioRule
  • Types of Mocking and test fakes:
    1. Dagger Components
    2. Dagger Modules
    3. Application class
    4. Fragment Factory
    5. Glide ImageLoader
    6. Retrofit network requests
  • Navigation Components:
    • Testing navigation (both fragments in isolation and end to end testing)
    • Navigation Testing Artifact
  • Glide (Setting images in test)
  • RecyclerView Testing:
    • Scrolling and list item verification
    • Clicking items to trigger event
  • Stubbing a Test Data Source (Network)
  • End-to-end tests with ActivityScenario
  • Isolation tests with FragmentScenario
  • Configuration changes (activity/fragment recreation)
  • Test assets for providing fake network data
  • Test Orchestrator:
    • Each test runs in its own Instrumentation instance (no/minimal shared state!)
Github repo: Source code
Author
TUTProfessor
Downloads
74
Views
1,171
First release
Last update
Rating
0.00 star(s) 0 ratings

More resources from TUTProfessor