Flutter Gems is a curated list of 6700+ useful Dart & Flutter packages that are categorized based on functionality.
Top Flutter Testing packages
Last updated: January 26, 2025
There are many ways to test a Flutter app, but some common methods include:
- Unit testing: Unit tests focus on small pieces of code, or units, to ensure that they are working as expected.
- Widget testing: Widget tests (or component tests) focus on testing a single widget at a time. The goal of a widget testing is to verify that the widget's UI looks and interacts as expected.
- Integration testing: Itegration tests check how well units work together in an app.
- User testing: User tests simulate how real users would interact with the app given in form of a user interaction workflow.
Testing can either be done manually or using automated tools. The complete list of Dart and Flutter packages given below provide tools/frameworks to perform Testing, Mock Testing, Widget Testing, UI Testing, etc. and also publish Coverage reports.
coverage
👍 113 ⬇️ 5M
Dart 3 compatibleMaintenance Status: Good
Coverage data manipulation and formatting
platform
👍 105 ⬇️ 4.6M
Dart 3 compatibleMaintenance Status: Good
A pluggable, mockable platform information abstraction for Dart.
test
👍 576 ⬇️ 3.6M
Dart 3 compatibleMaintenance Status: Good
A full featured library for writing and running Dart tests across platforms.
process
👍 39 ⬇️ 3.1M
Dart 3 compatibleMaintenance Status: Good
A pluggable, mockable process invocation abstraction for Dart.
mocktail
👍 1.12K ⬇️ 2M
Dart 3 compatibleMaintenance Status: Good
A Dart mock library which simplifies mocking with null safety support and no manual mocks or code generation.
webdriver
👍 62 ⬇️ 2.5M
Dart 3 compatibleMaintenance Status: Good
Provides WebDriver bindings for Dart. Supports WebDriver JSON interface and W3C spec. Requires the use of WebDriver remote server.
fake_async
👍 109 ⬇️ 2.4M
Dart 3 compatibleMaintenance Status: Good
Fake asynchronous events such as timers and microtasks for deterministic testing.
mockito
👍 1.4K ⬇️ 983.4K
Dart 3 compatibleMaintenance Status: Good
A mock framework inspired by Mockito with APIs for Fakes, Mocks, behavior verification, and stubbing.
file_testing
👍 4 ⬇️ 2.1M
Dart 3 compatibleMaintenance Status: Good
Testing utilities for package:file.
faker
👍 853 ⬇️ 1.1M
Dart 3 compatibleMaintenance Status: Good
A library for generating fake data. faker is heavily inspired by the Python package faker and, the Ruby package ffaker.
matcher
👍 60 ⬇️ 1.6M
Dart 3 compatibleMaintenance Status: Good
Support for specifying test expectations via an extensible Matcher class. Also includes a number of built-in Matcher implementations for common cases.
global_assert
👍 6 ⬇️ 720.4K
Dart 3 compatibleMaintenance Status: Poor
A micro-library that makes it easy to do build-time assertions about constants so that misconfigured apps fail at build-time instead of failing at runtime.
patrol
👍 567 ⬇️ 89K
Dart 3 compatibleMaintenance Status: Good
Powerful Flutter-native UI testing framework overcoming limitations of existing Flutter testing tools.
build_test
👍 10 ⬇️ 304.8K
Dart 3 compatibleMaintenance Status: Good
Utilities for writing unit tests of Builders.
http_mock_adapter
👍 164 ⬇️ 145.8K
Dart 3 compatibleMaintenance Status: Average
A simple to use mocking package for Dio intended to be used in tests. It provides various types and methods to declaratively mock request-response communication.
test_descriptor
👍 3 ⬇️ 193.6K
Dart 3 compatibleMaintenance Status: Good
An API for defining and verifying files and directory structures.
![inspector Card Image](/media-cards/inspector.png)
inspector
👍 75 ⬇️ 130.1K
Dart 3 compatibleMaintenance Status: Average
A Flutter package for inspecting widgets. Useful for quick debugging or QA testing.
![pixel_perfect Card Image](/media-cards/pixel_perfect.png)
pixel_perfect
👍 220 ⬇️ 6K
Dart 3 compatibleMaintenance Status: Average
Development tool that helps you make your flutter application "pixel perfect"
alchemist
👍 162 ⬇️ 44.2K
Dart 3 compatibleMaintenance Status: Good
A support package that aims to make golden testing in Flutter easier and more streamlined.
network_image_mock
👍 59 ⬇️ 122.7K
Dart 3 compatibleMaintenance Status: Poor
Utility for providing mocked Image.network response in Flutter widget tests.
fake_cloud_firestore
👍 131 ⬇️ 49.1K
Dart 3 compatibleMaintenance Status: Good
Previously known as cloud_firestore_mocks. Fake implementation of Cloud Firestore. Use this package to unit test apps that use Cloud Firestore.
junitreport
👍 32 ⬇️ 131.3K
Dart 3 compatibleMaintenance Status: Poor
Generate JUnit XML reports from dart test runs. Transforms the output of dart or flutter tests to JUnit style XML
widgets_to_image
👍 169 ⬇️ 15.9K
Dart 3 compatibleMaintenance Status: Good
A simple package to convert any widgets into an image, everything in flutter is rendered pixel by pixel.
bdd_widget_test
👍 160 ⬇️ 21.3K
Dart 3 compatibleMaintenance Status: Good
A BDD-style widget testing library. Generates Flutter widget tests from *.feature files.
testreport
👍 3 ⬇️ 148K
Dart 3 compatibleMaintenance Status: Poor
This library can be used to process the results of dart tests. It processes data from the `json` output emitted by the dart test runner and provide an API to the test results.
react_testing_library
👍 4 ⬇️ 135.7K
Dart 3 compatibleMaintenance Status: Good
A Dart unit testing library for OverReact components that mimics the API of the JS react-testing-library
defer_pointer
👍 128 ⬇️ 28.6K
Dart 3 compatibleMaintenance Status: Poor
An alternative to Overlay which allows you to easily render and hit test a widget outside its parent bounds.
riverpod_test
👍 20 ⬇️ 113.4K
Dart 3 compatibleMaintenance Status: Good
A testing library which makes it easy to test providers. Built to be used with the riverpod package.
checks
👍 102 ⬇️ 41.9K
Dart 3 compatibleMaintenance Status: Good
A framework for checking values against expectations and building custom expectations.
patrol_finders
👍 40 ⬇️ 93.1K
Dart 3 compatibleMaintenance Status: Good
Streamlined, high-level API on top of flutter_test.
flutter_gherkin
👍 133 ⬇️ 9.4K
Dart 3 compatibleMaintenance Status: Poor
A Gherkin / Cucumber parser and test runner for Dart and Flutter
benchmark_harness
👍 62 ⬇️ 65.8K
Dart 3 compatibleMaintenance Status: Good
The official Dart project benchmark harness.
![convenient_test Card Image](/media-cards/convenient_test.png)
convenient_test
👍 136 ⬇️ 3.8K
Dart 3 compatibleMaintenance Status: Good
Write and debug tests easily, with full action history, time travel, screenshots, rapid re-execution, video records, interactivity, isolation and more
flutter_automation
👍 135 ⬇️ 518
Dart 3 compatibleMaintenance Status: Poor
A flutter package that provides various automation scripts to help you with your flutter project.
over_react_test
👍 1 ⬇️ 102.1K
Dart 3 compatibleMaintenance Status: Good
A library for testing OverReact components
firebase_auth_mocks
👍 98 ⬇️ 21.3K
Dart 3 compatibleMaintenance Status: Good
Fakes for Firebase Auth. Use this package with 'google_sign_in_mocks' to write unit tests involving Firebase Authentication.
mockingjay
👍 93 ⬇️ 23.6K
Dart 3 compatibleMaintenance Status: Good
A package that makes it easy to mock, test and verify navigation calls in Flutter.
mocktail_image_network
👍 59 ⬇️ 49.8K
Dart 3 compatibleMaintenance Status: Good
A Dart package which allows you to mock Image.network in your widget tests with confidence using the mocktail package.
test_html_builder
👍 1 ⬇️ 81.5K
Dart 3 compatibleMaintenance Status: Good
Builder that generates HTML files from templates for dart browser tests.
faker_dart
👍 93 ⬇️ 3.6K
Dart 3 compatibleMaintenance Status: Good
generate massive amounts of fake data in Dart & Flutter! A dart port of the famous faker.js
nock
👍 23 ⬇️ 59.7K
Dart 3 compatibleMaintenance Status: Average
HTTP requests mocking library for dart and flutter. Test your application in isolation.
gherkin
👍 39 ⬇️ 44.4K
Dart 3 compatibleMaintenance Status: Poor
A Gherkin parsers and runner for Dart which is very similar to Cucumber, it provides the base BDD functionality ready for use in platform specific implementations i.e. flutter/web
remove_from_coverage
👍 36 ⬇️ 46.4K
Dart 3 compatibleMaintenance Status: Poor
A command-line tool to customize the contents of a coverage lcov.info file.
round_spot
👍 88 ⬇️ 41
Dart 3 compatibleMaintenance Status: Poor
Customizable, easy to use heat map interface analysis library
spot
👍 73 ⬇️ 3.6K
Dart 3 compatibleMaintenance Status: Good
Flutter widget test toolkit - spot, act, validate. Better selectors, automatic screenshots, chainable.
test_cov_console
👍 31 ⬇️ 32.7K
Dart 3 compatibleMaintenance Status: Poor
Command line utility to read lcov.info and print the coverage report to console.
patrol_cli
👍 59 ⬇️ 9.2K
Dart 3 compatibleMaintenance Status: Good
Command-line tool for Patrol, a powerful Flutter-native UI testing framework.
very_good_test_runner
👍 23 ⬇️ 39K
Dart 3 compatibleMaintenance Status: Good
A test runner for Flutter and Dart created by Very Good Ventures
mock_exceptions
👍 4 ⬇️ 54.7K
Dart 3 compatibleMaintenance Status: Poor
Provides a mechanism to throw exceptions on certain calls. This is useful when working with a Fake and we still want to occasionally make it throw exceptions.
transparent_pointer
👍 51 ⬇️ 9.8K
Dart 3 compatibleMaintenance Status: Good
Provides TransparentPointer to control hit testing
cel
👍 5 ⬇️ 47.9K
Dart 3 compatibleMaintenance Status: Average
This project parses and evaluates Common Expression Language (CEL) programs against some inputs.
spec
👍 47 ⬇️ 11.4K
Dart 3 compatibleMaintenance Status: Average
A streamlined testing framework for Dart & Flutter.
benchmark
👍 30 ⬇️ 25.3K
Dart 3 compatibleMaintenance Status: Poor
A full featured library for writing and running Dart benchmarks.
source_gen_test
👍 13 ⬇️ 37.6K
Dart 3 compatibleMaintenance Status: Good
Test support for the source_gen package. Includes helpers to make it easy to validate both success and failure cases.
firebase_storage_mocks
👍 39 ⬇️ 11.5K
Dart 3 compatibleMaintenance Status: Good
Mocks for Firebase Storage. Use this package to write unit tests involving Firebase Storage.
appium_driver
👍 23 ⬇️ 24.1K
Dart 3 compatibleMaintenance Status: Good
An Appium binding for Dart. Support WebDriver W3C spec inheriting webdriver.dart.
![honey Card Image](/media-cards/honey.png)
honey
👍 46 ⬇️ 2.9K
Dart 3 compatibleMaintenance Status: Average
The sweet side of testing. An end to end testing framework for Flutter.
better_test_reporter
👍 6 ⬇️ 34.4K
Dart 3 compatibleMaintenance Status: Poor
A CLI for generating a junit xml report from dart test json output and libraries for parsing test json into dev-friendly models
multi_app_viewer
👍 45 ⬇️ 37
Dart 3 compatibleMaintenance Status: Good
Tool to view and navigate one app with different settings at the same time
glados
👍 38 ⬇️ 3.7K
Dart 3 compatibleMaintenance Status: Average
A simple testing framework that tries to break your properties.
google_sign_in_mocks
👍 34 ⬇️ 6.2K
Dart 3 compatibleMaintenance Status: Average
Mocks for Google Sign In. Use this package with `firebase_auth_mocks` to write unit tests involving Firebase Authentication.
nonce
👍 12 ⬇️ 24.1K
Dart 3 compatibleMaintenance Status: Poor
Nonce contains a static generator that generates random alphanumeric strings, and can be constructed as an object containing a generated string.
flutter_test_robots
👍 27 ⬇️ 11.2K
Dart 3 compatibleMaintenance Status: Good
Flutter test tools and extensions to simulate human-computer interactions
random_x
👍 39 ⬇️ 524
Dart 3 compatibleMaintenance Status: Poor
A Dart Library for all of your random needs you'll ever require in your projects.
cobertura
👍 6 ⬇️ 26.7K
Dart 3 compatibleMaintenance Status: Good
Converts LCOV to Cobertura format; the ideal format for GitHub and Azure DevOps.
flutter_auto_gui
👍 34 ⬇️ 31
Dart 3 compatibleMaintenance Status: Poor
A flutter plugin for desktop applications for controlling mouse and keyboard to automate interactions with other applications.
fluttium
👍 30 ⬇️ 275
Dart 3 compatibleMaintenance Status: Average
The core package for the Fluttium user flow testing framework
mock_data
👍 29 ⬇️ 767
Dart 3 compatibleMaintenance Status: Average
Generate random data using Dart. Can be used to create random strings, integers, names, colors, IPs, UUIDs, URLs and dates.
espresso
👍 25 ⬇️ 2.7K
Dart 3 compatibleMaintenance Status: Good
Java classes for testing Flutter apps using Espresso. Allows driving Flutter widgets from a native Espresso test.
modular_test
👍 12 ⬇️ 13.2K
Dart 3 compatibleMaintenance Status: Poor
Smart project structure with dependency injection and route management
bdd_framework
👍 23 ⬇️ 3.9K
Dart 3 compatibleMaintenance Status: Good
BDD framework for Dart/Flutter. Lets you create BDD tests in code, and gives you easy to read error messages when assertions fail. Exports to Gherkin/Cucumber feature files.
elementary_test
👍 25 ⬇️ 1.7K
Dart 3 compatibleMaintenance Status: Good
A testing library which makes it easy to test elementary used apps. Built to be used with the elementary architecture package.
![figma_frame_inspector Card Image](/media-cards/figma_frame_inspector.png)
figma_frame_inspector
👍 25 ⬇️ 91
Dart 3 compatibleMaintenance Status: Average
A Flutter plugin to verify how accurately the Figma frame was implemented in the app.
coverde
👍 25 ⬇️ 2
Dart 3 compatibleMaintenance Status: Average
A CLI for basic coverage trace files manipulation. Validate minimum coverage, filter trace files data by tested file paths and generate HTML coverage reports.
lorem_ipsum
👍 18 ⬇️ 5.6K
Dart 3 compatibleMaintenance Status: Average
It is a package to generate random text easily, quickly and dynamically.
ogurets
👍 24 ⬇️ 46
Dart 3 compatibleMaintenance Status: Poor
Gherkin/Cucumber implementation in dart, supporting classes and simple libraries, hooks, dependency injection, and all the things you would want in an easy to use format.
shouldly
👍 24 ⬇️ 25
Dart 3 compatibleMaintenance Status: Poor
A simple, extensible BDD assertion library which focuses on giving great error messages when the assertion fails.
testsweets
👍 23 ⬇️ 178
Dart 3 compatibleMaintenance Status: Good
A no-code test automation tool that turns any tester into an automation engineer
state_notifier_test
👍 21 ⬇️ 1.7K
Dart 3 compatibleMaintenance Status: Average
A testing library which makes it easy to test StateNotifier. Built to be used with the state_notifier, riverpod or flutter_riverpod packages.
lcov_dart
👍 1 ⬇️ 18.3K
Dart 3 compatibleMaintenance Status: Poor
Parse and format to LCOV your code coverage reports. The best way to share your code coverage stats.
![fluttium_cli Card Image](/media-cards/fluttium_cli.png)
fluttium_cli
👍 21 ⬇️ 286
Dart 3 compatibleMaintenance Status: Average
The CLI for Fluttium, a user flow testing framework for Flutter
random_name_generator
👍 18 ⬇️ 2.5K
Dart 3 compatibleMaintenance Status: Good
Dart package for the generation of Random Names, based on most common names
acyclic_steps
👍 18 ⬇️ 646
Dart 3 compatibleMaintenance Status: Average
An explicit acyclic step dependency framework with concurrent evaluation and dependency injection.
given_when_then
👍 14 ⬇️ 257
Dart 3 compatibleMaintenance Status: Poor
A Flutter package to enable code reuse while making tests more readable.
spec_cli
👍 9 ⬇️ 235
Dart 3 compatibleMaintenance Status: Average
CLI for Spec - a streamlined testing framework for Dart & Flutter.
fast_flutter_driver
👍 9 ⬇️ 49
Dart 3 compatibleMaintenance Status: Poor
Toolkit for running rapidly flutter driver tests on desktop.
dart_test_adapter
👍 7 ⬇️ 264
Dart 3 compatibleMaintenance Status: Poor
Provides a Dart API for interacting with 'dart test'/'flutter test' programatically
flutster
👍 7 ⬇️ 237
Dart 3 compatibleMaintenance Status: Good
Record your Flutter UI tests using this Widget on Android. Save the UI tests to play them again automatically.
fast_flutter_driver_tool
👍 7 ⬇️ 54
Dart 3 compatibleMaintenance Status: Poor
Toolkit for running rapidly flutter driver tests on desktop.
flame_test
👍 5 ⬇️ 1.3K
Dart 3 compatibleMaintenance Status: Good
A package with classes to help testing applications using Flame
ngtest
👍 3 ⬇️ 2K
Dart 3 compatibleMaintenance Status: Poor
Testing runner and library for AngularDart. This package is necessary to write component tests for AngularDart components.
conduit_test
👍 2 ⬇️ 583
Dart 3 compatibleMaintenance Status: Good
Utilities for writing automated tests for Conduit applications
stash_test
👍 0 ⬇️ 100
Dart 3 compatibleMaintenance Status: Good
Provides the testing support needed in order to implement extensions to the base stash package
state_queue_test
👍 0 ⬇️ 39
Dart 3 compatibleMaintenance Status: Poor
Testing utilities for 'StateQueue'
debug_friend
👍 58 ⬇️ 125
Maintenance Status: Good
Flutter debug helper widget with device info, common and custom actions.
test_coverage
👍 44 ⬇️ 79
Maintenance Status: Poor
Command line utility to run tests in Dart VM and collect coverage data.
approval_tests
👍 21 ⬇️ 202
Maintenance Status: Good
Approval Tests implementation in Dart. Inspired by ApprovalTests.
integration_test_preview
👍 10 ⬇️ 34
Maintenance Status: Good
Integration Test Preview has pre-configured methods that allow for faster test deployment for end to end (e2e) test coverage (using Android and iOS platform UIs).
page_object
👍 9 ⬇️ 149
Maintenance Status: Poor
A Flutter package to help with implementing the Page Object pattern in a Flutter app..