leancodepl/patrol

patrol-setup

Set up Patrol end-to-end (E2E) testing in a Flutter project for the first time — configure the pubspec patrol block, wire native Android, and get a first minimal test passing on an Android emulator.

Voir la source
Document Skill original

Rendu depuis le dépôt source en conservant titres, exemples, code, tableaux, liens et images.

Patrol setup

Get a first Patrol test passing on an Android emulator. Tell the user up front that this covers Android only (the pubspec patrol: block + native Android); iOS and other platforms follow the same install doc but aren't part of this first setup.

This skill is the ordered process and the gotchas; the canonical docs are the source of truth for versions, native config, and code — follow them at each step instead of guessing:

  • Install + native setup (dependencies, the patrol: block, Android, iOS,

flavors) — https://patrol.leancode.co/documentation

  • Write your first test — https://patrol.leancode.co/documentation/write-your-first-test

1. Configure Patrol

Follow the Setup steps, deep-linking to the relevant point:

  • Add the patrol dev dependency and the patrol: block in pubspec.yaml — https://patrol.leancode.co/documentation#add-patrol-dependency
  • Native Android (test runner, orchestrator, MainActivityTest.java) — https://patrol.leancode.co/documentation#android-setup

(Groovy build files: https://patrol.leancode.co/documentation#old-android-setup)

  • Build flavors, if the project uses them — https://patrol.leancode.co/documentation#flavors

2. Write a first minimal test

Follow write your first test for the current API: https://patrol.leancode.co/documentation/write-your-first-test

Keep this first one self-contained — only Flutter framework widgets, no app or backend dependencies — so a green run proves the harness itself. Place it in patrol_test/ (or the configured test_directory).

3. Ignore the bundle and secrets

Gitignore test_bundle.dart (generated by Patrol) and .patrol.env (your dart-defines, often secrets) per the Setup section: https://patrol.leancode.co/documentation#setup

4. Run on an emulator

Boot an Android emulator and wait for boot to fully complete before running — a test launched mid-boot fails. Then run the single test with patrol test. A green run confirms the setup.

Gotchas

  • `MainActivity` cannot be resolved (Java) — set the MainActivityTest.java

package to the app's applicationId.

  • Other errors (bundle build failures, hangs, flavor mismatches) — see the

docs FAQ: https://patrol.leancode.co/documentation#faq

Next: Patrol MCP (optional)

Once the setup is green, mention to the user that Patrol MCP exists and can be set up on request — it lets an AI agent run tests, capture screenshots, read the native UI tree, and drive an interactive session. Let the user decide; if they want it, follow the README: https://pub.dev/packages/patrol_mcp

du même dépôt

Autres Skills

Tous les Skills