~/talk

The art of Flutter testing

Talkat Fluttercon USA 2024 · 2024-09-19..09-20· [testing]
slides:none on file

Tests are framed as tests lock down behavior not proofs of correctness, and chasing 100% coverage is a bad incentive; prefer a cost‑benefit approach. Use Dart tests for fast IO and business logic, widget tests with WidgetTester (use pump to advance one frame, pump vs pumpAndSettle matters), golden tests for pixel diffs (beware the ahem font squares, shadow simplification and cross‑platform golden mismatches), and integration tests that build an APK/IPA and run on device — trade speed for realism and watch CI flakiness.

AI-written summary · about

  1. 0:00Flutter testing myths
  2. 1:05Tests not about correctness
  3. 3:14Avoiding 100% coverage
  4. 7:58Testing incentives dangers
  5. 8:18Flutter testing tools overview
  6. 11:51Dart tests for logic and IO
  7. 12:11Widget tests and fake environment
  8. 13:57Typical widget test structure
  9. 14:20Pumping frames in tests
  10. 17:10Pump and settle risks
  11. 18:53Pump and settle best practices
  12. 20:37Using finders in tests
  13. 23:08Verifying widget properties
  14. 24:54Simulating gestures and input
  15. 27:43Virtual Flutter configuration
  16. 31:13Golden tests verify pixels
  17. 33:17Generating golden screenshots
  18. 35:41Cross-platform golden challenges
  19. 36:03Integration tests on devices
  20. 37:25Running integration tests
  21. 38:09Choosing test tools
  22. 40:15Flutter testing recap
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.