dart-test-fundamentals▌
kevmoo/dash_skills · updated Apr 8, 2026
Use this skill when:
Dart Test Fundamentals
When to use this skill
Use this skill when:
- Writing new test files.
- structuring test suites with
group. - Configuring test execution via
dart_test.yaml. - Understanding test lifecycle methods.
Core Concepts
1. Test Structure (test and group)
-
test: The fundamental unit of testing.test('description', () { // assertions }); -
group: Used to organize tests into logical blocks.- Groups can be nested.
- Descriptions are concatenated (e.g., "Group Description Test Description").
- Helps scope
setUpandtearDowncalls. - Naming: Use
PascalCasefor groups that correspond to a class name (e.g.,group('MyClient', ...)). - Avoid Single Groups: Do not wrap all tests in a file with a single
groupcall if it's the only one.
-
Naming Tests:
- Avoid redundant "test" prefixes.
- Include the expected behavior or outcome in the description (e.g.,
'throws StateError'or'adds API key to URL'). - Descriptions should read well when concatenated with their group name.
-
Named Parameters Placement:
- For
testandgroupcalls, place named parameters (e.g.,testOn,timeout,skip) immediately after the description string, before the callback closure. This improves readability by keeping the test logic last.test('description', testOn: 'vm', () { // assertions });
- For
2. Lifecycle Methods (setUp, tearDown)
setUp: Runs before everytestin the currentgroup(and nested groups).tearDown: Runs after everytestin the currentgroup.setUpAll: Runs once before any test in the group.tearDownAll: Runs once after all tests in the group.
Best Practice:
- Use
setUpfor resetting state to ensure test isolation. - Avoid sharing mutable state between tests without resetting it.
3. Configuration (dart_test.yaml)
The dart_test.yaml file configures the test runner. Common configurations
include:
Platforms
Define where tests run (vm, chrome, node).
platforms:
- vm
- chrome
Tags
Categorize tests to run specific subsets.
tags:
integration:
timeout: 2x
Usage in code:
(['integration'])
import 'package:test/test.dart';
Running tags:
dart test --tags integration
Timeouts
Set default timeouts for tests.
timeouts:
2x # Double the default timeout
4. File Naming
- Test files must end in
_test.dartto be picked up by the test runner. - Place tests in the
test/directory.
Common commands
dart test: Run all tests.dart test test/path/to/file_test.dart: Run a specific file.dart test --name "substring": Run tests matching a description.
Related Skills
dart-test-fundamentals is the core skill for structuring and configuring
tests. For writing assertions within those tests, refer to:
dart-matcher-best-practices: Use this if the project sticks with the traditionalpackage:matcher(expectcalls).dart-checks-migration: Use this if the project is migrating to the modernpackage:checks(checkcalls).
Discussion
Product Hunt–style comments (not star reviews)- No comments yet — start the thread.
Ratings
4.6★★★★★38 reviews- ★★★★★Amina Zhang· Dec 20, 2024
We added dart-test-fundamentals from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.
- ★★★★★Ava Chen· Dec 16, 2024
dart-test-fundamentals has been reliable in day-to-day use. Documentation quality is above average for community skills.
- ★★★★★Ishan Gonzalez· Dec 16, 2024
Useful defaults in dart-test-fundamentals — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.
- ★★★★★Shikha Mishra· Dec 4, 2024
dart-test-fundamentals reduced setup friction for our internal harness; good balance of opinion and flexibility.
- ★★★★★Xiao Reddy· Nov 11, 2024
Solid pick for teams standardizing on skills: dart-test-fundamentals is focused, and the summary matches what you get after install.
- ★★★★★Amina Liu· Nov 7, 2024
dart-test-fundamentals fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
- ★★★★★Aditi Harris· Nov 7, 2024
dart-test-fundamentals is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.
- ★★★★★Alexander Desai· Oct 26, 2024
We added dart-test-fundamentals from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.
- ★★★★★Aditi Anderson· Oct 26, 2024
Keeps context tight: dart-test-fundamentals is the kind of skill you can hand to a new teammate without a long onboarding doc.
- ★★★★★Kofi Bhatia· Oct 2, 2024
dart-test-fundamentals has been reliable in day-to-day use. Documentation quality is above average for community skills.
showing 1-10 of 38