flutter-testing

Installation
SKILL.md

Flutter Testing Guide

Overview

Flutter testing follows a three-layer pyramid: Unit (fast, pure Dart logic) → Widget (UI component rendering) → Integration/E2E (full device flows). Each layer has distinct tooling and tradeoffs. Load the relevant reference based on what you need to test.

Process

Phase 1: Choose the Right Layer

Identify the testing tier before writing any code. Wrong tier = wasted effort.

  • 🧱 Testing Fundamentals — Decision tree for choosing unit/widget/integration, MVVM isolation patterns, and project structure.

Phase 2: Write Tests with Correct APIs

Apply AAA (Arrange-Act-Assert), proper pump usage, and matcher selection.

  • 🛠️ Core Testing — Unit test groups/setUp/tearDown, widget test pump patterns, integration test binding setup, and async troubleshooting (FakeAsync, runAsync, Timer leaks).

Phase 3: Mocking, Goldens, and E2E

Isolate external dependencies, lock UI visuals, and validate native OS interactions.

  • 🧪 Advanced Tools — Mocktail/Mockito, golden tests with cross-platform tolerance, Patrol 4.0 E2E (native permission dialogs, notifications), patrol_finders for widget tests.
Installs
17
GitHub Stars
7
First Seen
May 6, 2026