# Unit Testing (Flutter) > test package, expect, matchers, mocking, mockito, test coverage, TDD principles - 20 interview questions - Mid-Level - [Interview Questions: Flutter](https://sharpskill.dev/en/technologies/flutter/interview-questions.md) ## 1. Which Dart package provides the core functionality for writing unit tests? **Answer** The test package is the official Dart package for writing unit tests. It provides test(), group(), setUp(), tearDown() functions and matchers for assertions. This package is included in dev_dependencies of any Flutter project and forms the foundation of all Dart testing. ## 2. Which function should be used to group multiple related tests into a logical suite? **Answer** The group() function allows grouping related tests together, improving organization and readability. Each group can have its own setUp and tearDown, and groups can be nested to create a test hierarchy. This improves the structure and maintenance of test suites. ## 3. When is the setUp() function executed in a group of tests? **Answer** setUp() is executed before each individual test in the group. This allows initializing the necessary state for each test, ensuring that each test starts in a clean and independent state. For a one-time initialization before all tests, use setUpAll() instead. ## 17 more questions available - Which matcher should be used to verify that a value equals an expected value? - How to verify that an asynchronous function completes successfully in a test? Sign up for free: https://sharpskill.dev/en/login ## Other Flutter interview topics - [Dart Basics](https://sharpskill.dev/en/technologies/flutter/interview-questions/dart-basics.md): 25 questions, Junior - [Dart Language Essentials](https://sharpskill.dev/en/technologies/flutter/interview-questions/dart-language-essentials.md): 15 questions, Junior - [Flutter Fundamentals](https://sharpskill.dev/en/technologies/flutter/interview-questions/flutter-fundamentals.md): 18 questions, Junior - [Widget Lifecycle](https://sharpskill.dev/en/technologies/flutter/interview-questions/widget-lifecycle.md): 20 questions, Junior - [Local Storage](https://sharpskill.dev/en/technologies/flutter/interview-questions/local-storage.md): 20 questions, Junior - [Application Lifecycle](https://sharpskill.dev/en/technologies/flutter/interview-questions/app-lifecycle.md): 20 questions, Junior - [Layouts & Constraints](https://sharpskill.dev/en/technologies/flutter/interview-questions/layouts-constraints.md): 24 questions, Mid-Level - [ListView & GridView](https://sharpskill.dev/en/technologies/flutter/interview-questions/listview-gridview.md): 25 questions, Mid-Level - [Navigation & Routing](https://sharpskill.dev/en/technologies/flutter/interview-questions/navigation-routing.md): 22 questions, Mid-Level - [Basic State Management](https://sharpskill.dev/en/technologies/flutter/interview-questions/state-management-basics.md): 22 questions, Mid-Level - [Provider Pattern](https://sharpskill.dev/en/technologies/flutter/interview-questions/provider-pattern.md): 18 questions, Mid-Level - [Networking & HTTP](https://sharpskill.dev/en/technologies/flutter/interview-questions/networking-http.md): 20 questions, Mid-Level - [JSON Serialization](https://sharpskill.dev/en/technologies/flutter/interview-questions/json-serialization.md): 20 questions, Mid-Level - [Local Database](https://sharpskill.dev/en/technologies/flutter/interview-questions/local-database.md): 22 questions, Mid-Level - [Forms & Validation](https://sharpskill.dev/en/technologies/flutter/interview-questions/forms-validation.md): 20 questions, Mid-Level - [Animations](https://sharpskill.dev/en/technologies/flutter/interview-questions/animations.md): 20 questions, Mid-Level - [Firebase Integration](https://sharpskill.dev/en/technologies/flutter/interview-questions/firebase-integration.md): 18 questions, Mid-Level - [Widget Testing](https://sharpskill.dev/en/technologies/flutter/interview-questions/widget-testing.md): 18 questions, Mid-Level - [Build & Deployment](https://sharpskill.dev/en/technologies/flutter/interview-questions/build-deployment.md): 16 questions, Mid-Level - [Package Management](https://sharpskill.dev/en/technologies/flutter/interview-questions/package-management.md): 16 questions, Mid-Level - [Memory & Performance](https://sharpskill.dev/en/technologies/flutter/interview-questions/memory-performance.md): 22 questions, Senior - [Streams & RxDart](https://sharpskill.dev/en/technologies/flutter/interview-questions/streams-rxdart.md): 24 questions, Senior - [Advanced State Management](https://sharpskill.dev/en/technologies/flutter/interview-questions/advanced-state-management.md): 26 questions, Senior - [Flutter Design Patterns](https://sharpskill.dev/en/technologies/flutter/interview-questions/flutter-design-patterns.md): 24 questions, Senior - [Performance Optimization](https://sharpskill.dev/en/technologies/flutter/interview-questions/performance-optimization.md): 26 questions, Senior - [Platform Channels](https://sharpskill.dev/en/technologies/flutter/interview-questions/platform-channels.md): 20 questions, Senior - [Custom Painting](https://sharpskill.dev/en/technologies/flutter/interview-questions/custom-painting.md): 22 questions, Senior - [Flutter Application Architecture](https://sharpskill.dev/en/technologies/flutter/interview-questions/flutter-app-architecture.md): 22 questions, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/en/technologies/flutter/interview-questions/unit-testing