Skip to content

GSoC 2025 project idea: Improved console output for Swift Testing #900

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Feb 10, 2025
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 24 additions & 0 deletions gsoc2025/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -277,7 +277,31 @@ The feature can possibly be implemented with [VS Code Walkthrough](https://code.
- Either [Adam Ward](https://github.com/award999) or [Paul Lemarquand](https://github.com/plemarquand) or [Matthew Bastien](https://github.com/matthewbastien)
- [Rishi Benegal](https://github.com/rbenegal)

### Improved console output for Swift Testing

**Project size**: 175 hours (medium)

**Estimated difficulty**: Intermediate

**Recommended skills**

- Basic proficiency in Swift.

**Description**

Enhance Swift Testing's reporting of test results to the console/terminal. Consider adding features like live progress reporting, nested output reflecting suite hierarchy, test metadata (display names, tags), parameterized test arguments, and more terminal colors. Perhaps include user-configurable options. If time allows, implement several alternatives and present them to the community (and the Testing Workgroup) for consideration. Factor code as portably as possible to support many platforms, and so it could be incorporated into a supervisory “harness” process in the future.

**Expected outcomes/benefits/deliverables**

- Add a new component in the [swift-testing](https://github.com/swiftlang/swift-testing) repository which receives events from the testing library and decides how to reflect them in console output.
- Modify supporting tools such as Swift Package Manager to allow enabling or configuring this functionality.
- Land the changes behind an experimental feature flag initially.
- Submit a proposal to the community and the Testing Workgroup to formally enable the feature.
- Summarize your effort with a demo of the new functionality including screenshots or recordings.

**Potential mentors**

- [Stuart Montgomery](https://github.com/stmontgomery)

### Example project name

Expand Down