Flutter Gems is a curated list of 6700+ useful Dart & Flutter packages that are categorized based on functionality.

Discord Medium LinkedIn Twitter

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 compatible
Maintenance Status: Good

Coverage data manipulation and formatting

platform
👍 105   ⬇️ 4.6M
Dart 3 compatible
Maintenance Status: Good

A pluggable, mockable platform information abstraction for Dart.

test
👍 576   ⬇️ 3.6M
Dart 3 compatible
Maintenance Status: Good

A full featured library for writing and running Dart tests across platforms.

process
👍 39   ⬇️ 3.1M
Dart 3 compatible
Maintenance Status: Good

A pluggable, mockable process invocation abstraction for Dart.

mocktail
👍 1.12K   ⬇️ 2M
Dart 3 compatible
Maintenance 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 compatible
Maintenance 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 compatible
Maintenance Status: Good

Fake asynchronous events such as timers and microtasks for deterministic testing.

mockito
👍 1.4K   ⬇️ 983.4K
Dart 3 compatible
Maintenance Status: Good

A mock framework inspired by Mockito with APIs for Fakes, Mocks, behavior verification, and stubbing.

file_testing
👍 4   ⬇️ 2.1M
Dart 3 compatible
Maintenance Status: Good

Testing utilities for package:file.

faker
👍 853   ⬇️ 1.1M
Dart 3 compatible
Maintenance 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 compatible
Maintenance 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 compatible
Maintenance 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 compatible
Maintenance Status: Good

Powerful Flutter-native UI testing framework overcoming limitations of existing Flutter testing tools.

build_test
👍 10   ⬇️ 304.8K
Dart 3 compatible
Maintenance Status: Good

Utilities for writing unit tests of Builders.

http_mock_adapter
👍 164   ⬇️ 145.8K
Dart 3 compatible
Maintenance 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 compatible
Maintenance Status: Good

An API for defining and verifying files and directory structures.

inspector Card Image
inspector
👍 75   ⬇️ 130.1K
Dart 3 compatible
Maintenance Status: Average

A Flutter package for inspecting widgets. Useful for quick debugging or QA testing.

pixel_perfect Card Image
pixel_perfect
👍 220   ⬇️ 6K
Dart 3 compatible
Maintenance Status: Average

Development tool that helps you make your flutter application "pixel perfect"

alchemist
👍 162   ⬇️ 44.2K
Dart 3 compatible
Maintenance 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 compatible
Maintenance Status: Poor

Utility for providing mocked Image.network response in Flutter widget tests.

fake_cloud_firestore
👍 131   ⬇️ 49.1K
Dart 3 compatible
Maintenance 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 compatible
Maintenance 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 compatible
Maintenance 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 compatible
Maintenance Status: Good

A BDD-style widget testing library. Generates Flutter widget tests from *.feature files.

testreport
👍 3   ⬇️ 148K
Dart 3 compatible
Maintenance 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 compatible
Maintenance 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 compatible
Maintenance 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 compatible
Maintenance 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 compatible
Maintenance Status: Good

A framework for checking values against expectations and building custom expectations.

patrol_finders
👍 40   ⬇️ 93.1K
Dart 3 compatible
Maintenance Status: Good

Streamlined, high-level API on top of flutter_test.

flutter_gherkin
👍 133   ⬇️ 9.4K
Dart 3 compatible
Maintenance Status: Poor

A Gherkin / Cucumber parser and test runner for Dart and Flutter

benchmark_harness
👍 62   ⬇️ 65.8K
Dart 3 compatible
Maintenance Status: Good

The official Dart project benchmark harness.

convenient_test Card Image
convenient_test
👍 136   ⬇️ 3.8K
Dart 3 compatible
Maintenance 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 compatible
Maintenance 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 compatible
Maintenance Status: Good

A library for testing OverReact components

firebase_auth_mocks
👍 98   ⬇️ 21.3K
Dart 3 compatible
Maintenance 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 compatible
Maintenance 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 compatible
Maintenance 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 compatible
Maintenance Status: Good

Builder that generates HTML files from templates for dart browser tests.

faker_dart
👍 93   ⬇️ 3.6K
Dart 3 compatible
Maintenance 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 compatible
Maintenance Status: Average

HTTP requests mocking library for dart and flutter. Test your application in isolation.

gherkin
👍 39   ⬇️ 44.4K
Dart 3 compatible
Maintenance 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 compatible
Maintenance Status: Poor

A command-line tool to customize the contents of a coverage lcov.info file.

round_spot
👍 88   ⬇️ 41
Dart 3 compatible
Maintenance Status: Poor

Customizable, easy to use heat map interface analysis library

spot
👍 73   ⬇️ 3.6K
Dart 3 compatible
Maintenance Status: Good

Flutter widget test toolkit - spot, act, validate. Better selectors, automatic screenshots, chainable.

test_cov_console
👍 31   ⬇️ 32.7K
Dart 3 compatible
Maintenance Status: Poor

Command line utility to read lcov.info and print the coverage report to console.

patrol_cli
👍 59   ⬇️ 9.2K
Dart 3 compatible
Maintenance Status: Good

Command-line tool for Patrol, a powerful Flutter-native UI testing framework.

very_good_test_runner
👍 23   ⬇️ 39K
Dart 3 compatible
Maintenance Status: Good

A test runner for Flutter and Dart created by Very Good Ventures

mock_exceptions
👍 4   ⬇️ 54.7K
Dart 3 compatible
Maintenance 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 compatible
Maintenance Status: Good

Provides TransparentPointer to control hit testing

cel
👍 5   ⬇️ 47.9K
Dart 3 compatible
Maintenance Status: Average

This project parses and evaluates Common Expression Language (CEL) programs against some inputs.

spec
👍 47   ⬇️ 11.4K
Dart 3 compatible
Maintenance Status: Average

A streamlined testing framework for Dart & Flutter.

benchmark
👍 30   ⬇️ 25.3K
Dart 3 compatible
Maintenance Status: Poor

A full featured library for writing and running Dart benchmarks.

source_gen_test
👍 13   ⬇️ 37.6K
Dart 3 compatible
Maintenance 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 compatible
Maintenance Status: Good

Mocks for Firebase Storage. Use this package to write unit tests involving Firebase Storage.

appium_driver
👍 23   ⬇️ 24.1K
Dart 3 compatible
Maintenance Status: Good

An Appium binding for Dart. Support WebDriver W3C spec inheriting webdriver.dart.

honey Card Image
honey
👍 46   ⬇️ 2.9K
Dart 3 compatible
Maintenance Status: Average

The sweet side of testing. An end to end testing framework for Flutter.

better_test_reporter
👍 6   ⬇️ 34.4K
Dart 3 compatible
Maintenance 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 compatible
Maintenance Status: Good

Tool to view and navigate one app with different settings at the same time

glados
👍 38   ⬇️ 3.7K
Dart 3 compatible
Maintenance Status: Average

A simple testing framework that tries to break your properties.

google_sign_in_mocks
👍 34   ⬇️ 6.2K
Dart 3 compatible
Maintenance 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 compatible
Maintenance 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 compatible
Maintenance Status: Good

Flutter test tools and extensions to simulate human-computer interactions

random_x
👍 39   ⬇️ 524
Dart 3 compatible
Maintenance Status: Poor

A Dart Library for all of your random needs you'll ever require in your projects.

cobertura
👍 6   ⬇️ 26.7K
Dart 3 compatible
Maintenance Status: Good

Converts LCOV to Cobertura format; the ideal format for GitHub and Azure DevOps.

flutter_auto_gui
👍 34   ⬇️ 31
Dart 3 compatible
Maintenance Status: Poor

A flutter plugin for desktop applications for controlling mouse and keyboard to automate interactions with other applications.

fluttium
👍 30   ⬇️ 275
Dart 3 compatible
Maintenance Status: Average

The core package for the Fluttium user flow testing framework

mock_data
👍 29   ⬇️ 767
Dart 3 compatible
Maintenance 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 compatible
Maintenance 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 compatible
Maintenance Status: Poor

Smart project structure with dependency injection and route management

bdd_framework
👍 23   ⬇️ 3.9K
Dart 3 compatible
Maintenance 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 compatible
Maintenance 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
figma_frame_inspector
👍 25   ⬇️ 91
Dart 3 compatible
Maintenance Status: Average

A Flutter plugin to verify how accurately the Figma frame was implemented in the app.

coverde
👍 25   ⬇️ 2
Dart 3 compatible
Maintenance 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 compatible
Maintenance Status: Average

It is a package to generate random text easily, quickly and dynamically.

ogurets
👍 24   ⬇️ 46
Dart 3 compatible
Maintenance 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 compatible
Maintenance Status: Poor

A simple, extensible BDD assertion library which focuses on giving great error messages when the assertion fails.

testsweets
👍 23   ⬇️ 178
Dart 3 compatible
Maintenance Status: Good

A no-code test automation tool that turns any tester into an automation engineer

state_notifier_test
👍 21   ⬇️ 1.7K
Dart 3 compatible
Maintenance 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 compatible
Maintenance Status: Poor

Parse and format to LCOV your code coverage reports. The best way to share your code coverage stats.

fluttium_cli Card Image
fluttium_cli
👍 21   ⬇️ 286
Dart 3 compatible
Maintenance Status: Average

The CLI for Fluttium, a user flow testing framework for Flutter

random_name_generator
👍 18   ⬇️ 2.5K
Dart 3 compatible
Maintenance Status: Good

Dart package for the generation of Random Names, based on most common names

acyclic_steps
👍 18   ⬇️ 646
Dart 3 compatible
Maintenance Status: Average

An explicit acyclic step dependency framework with concurrent evaluation and dependency injection.

given_when_then
👍 14   ⬇️ 257
Dart 3 compatible
Maintenance Status: Poor

A Flutter package to enable code reuse while making tests more readable.

spec_cli
👍 9   ⬇️ 235
Dart 3 compatible
Maintenance Status: Average

CLI for Spec - a streamlined testing framework for Dart & Flutter.

fast_flutter_driver
👍 9   ⬇️ 49
Dart 3 compatible
Maintenance Status: Poor

Toolkit for running rapidly flutter driver tests on desktop.

dart_test_adapter
👍 7   ⬇️ 264
Dart 3 compatible
Maintenance Status: Poor

Provides a Dart API for interacting with 'dart test'/'flutter test' programatically

flutster
👍 7   ⬇️ 237
Dart 3 compatible
Maintenance 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 compatible
Maintenance Status: Poor

Toolkit for running rapidly flutter driver tests on desktop.

flame_test
👍 5   ⬇️ 1.3K
Dart 3 compatible
Maintenance Status: Good

A package with classes to help testing applications using Flame

ngtest
👍 3   ⬇️ 2K
Dart 3 compatible
Maintenance 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 compatible
Maintenance Status: Good

Utilities for writing automated tests for Conduit applications

stash_test
👍 0   ⬇️ 100
Dart 3 compatible
Maintenance Status: Good

Provides the testing support needed in order to implement extensions to the base stash package

state_queue_test
👍 0   ⬇️ 39
Dart 3 compatible
Maintenance 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..

flutter_ume_kit_ui
👍 5   ⬇️ 95

Maintenance Status: Average

UI Kits for flutter_ume.