---
title: Swift Testing
framework: Swift Testing
role: collection
role_heading: Framework
platforms: [swift 6.0+, xcode 16.0+]
path: testing
---

# Swift Testing

Create and run tests for your Swift packages and Xcode projects.

## Overview

Overview

With Swift Testing you leverage powerful and expressive capabilities of the Swift programming language to develop tests with more confidence and less code. The library integrates seamlessly with Swift Package Manager testing workflow, supports flexible test organization, customizable metadata, and scalable test execution. Define test functions almost anywhere with a single attribute. Group related tests into hierarchies using Swift’s type system. Integrate seamlessly with Swift concurrency. Parameterize test functions across wide ranges of inputs. Enable tests dynamically depending on runtime conditions. Parallelize tests in-process. Categorize tests using tags. Associate bugs directly with the tests that verify their fixes or reproduce their problems. Related videos Meet Swift Testing Go further with Swift Testing

## Topics

### Essentials

- [Defining test functions](testing/definingtests.md)
- [Organizing test functions with suite types](testing/organizingtests.md)
- [Migrating a test from XCTest](testing/migratingfromxctest.md)
- [Test(_:_:)](testing/test(_:_:).md)
- [Test](testing/test.md)
- [Suite(_:_:)](testing/suite(_:_:).md)

### Test parameterization

- [Implementing parameterized tests](testing/parameterizedtesting.md)
- [Test(_:_:arguments:)](testing/test(_:_:arguments:)-8kn7a.md)
- [Test(_:_:arguments:_:)](testing/test(_:_:arguments:_:).md)
- [Test(_:_:arguments:)](testing/test(_:_:arguments:)-3rzok.md)
- [CustomTestArgumentEncodable](testing/customtestargumentencodable.md)
- [Test.Case](testing/test/case.md)

### Behavior validation

- [Expectations and confirmations](testing/expectations.md)
- [Known issues](testing/known-issues.md)

### Test customization

- [Traits](testing/traits.md)

### Value description and reflection

- [Describing and reflecting values](testing/describing-values.md)
- [CustomTestReflectable](testing/customtestreflectable.md)
- [CustomTestStringConvertible](testing/customteststringconvertible.md)

### Data collection

- [Attachments](testing/attachments.md)
