`--report-gh` annotations, groups and notices are dropped under `dotnet test`; only the job summary survives
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 56/100
Research direction
Start by comparing direct executable output with the dotnet test paths in the linked repro, especially src/Repro and the dotnet-test.yml workflow. Read AzureDevOpsCommandOutputDeviceData, which the issue identifies as a possible analogue, and trace how GitHub workflow commands are emitted under dotnet test. Done when annotations, notices, and log groups reach the workflow-command stream for project, solution, and bare dotnet test runs while job summaries still work.
Written by the indexing model from the issue text.
Description
Describe the bug
With Microsoft.Testing.Extensions.GitHubActionsReport and --report-gh on GitHub Actions, running through dotnet test (MTP mode) writes the Markdown job summary but none of the workflow commands the extension emits: no ::error / ::warning annotations, no ::notice slow-test notices, no ::group:: log groups. Running the same test exe directly emits all of them.
The docs describe these as defaults whenever GITHUB_ACTIONS=true and --report-gh is set, and don't mention a dotnet test exception. The only dotnet test mention is that the summary aggregates across modules.
Version used
- .NET SDK 10.0.402 (CI: latest 10.0.x)
- Microsoft.Testing.Extensions.GitHubActionsReport 2.5.1 (also reproduced on 2.4.1)
- MSTest.Sdk 4.5.1 (also 4.3.0)
- Microsoft.Testing.Platform: 2.5.1
- Runner:
ubuntu-latest; also reproduced locally on my Windows 11 machine.
Steps To Reproduce
A minimal repro runs on GitHub Actions: https://github.com/BenjaminMichaelis/GitHubActionsReport.POC
src/Repro: MSTest.Sdk project with a passing, a failing, a skipped ([Ignore]) and a slow (3s) test.src/Repro2is a second test project so the solution run has two modules.exe-direct.ymlruns the built exe with--report-gh --report-gh-slow-test-threshold 1s.dotnet-test.ymlruns the same tests throughdotnet test --project,dotnet test --solutionand baredotnet test.- Each job
tees stdout to a file and counts workflow-command lines. GitHub parses commands from that same stream, so a line missing from the file never reached the runner.
Expected behavior
Actual behavior
| Invocation | ::group:: |
::error |
::warning (skipped) |
::notice (slow) |
Job summary |
|---|---|---|---|---|---|
| exe directly | 1 | 1 | 1 | 2 | written |
dotnet test --project |
0 | 0 | 0 | 0 | written |
dotnet test --solution |
0 | 0 | 0 | 0 | written (both modules) |
bare dotnet test |
0 | 0 | 0 | 0 | written |
It also shows on pull requests. There is one PR per scenario (#1 exe-direct, #2 project, #3 solution, #4 bare), each editing the annotated lines. Only the exe-direct PR gets the failed-test and skipped-test annotations on Tests.cs in the Files changed tab.
Additional context
At a glance, I think that the GitHub path likely needs something similar to AzureDevOpsCommandOutputDeviceData.
- Dominant language
- C#
- Stars
- 1.1k
- Forks
- 312
- Avg merge
- 8h 29m
- Merged PRs (30d)
- 421
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from microsoft/testfx
-
type/automation type/tech-debt
Difficulty 4/5 3-5 days Newbie friendliness 35/100
Maintainers usually reply within 1 day
-
needs/triage
Difficulty 4/5 3-5 days Newbie friendliness 48/100
Maintainers usually reply within 1 day
-
type/automation type/tech-debt
Difficulty 4/5 3-5 days Newbie friendliness 48/100
Maintainers usually reply within 1 day
-
agentic-workflows type/automation type/tech-debt
Difficulty 1/5 Under an hour Newbie friendliness 1/100
Maintainers usually reply within 1 day
-
area/dump needs/triage
Difficulty 2/5 1-3 hours Newbie friendliness 45/100
microsoft/testfx#11981 · 2 comments ·
Maintainers usually reply within 1 day
All issues in microsoft/testfx
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
gavin-wolfe/wolfden#104 ·
Maintainers usually reply within 1 day
-
[BUG] Still libmicrohttpd dependency is not removed properly from External-Dependency-Info.txt fileOpentype/bug
Difficulty 1/5 Under an hour Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
[辞書] かんそうりつ->乾燥率Open辞書
Difficulty 1/5 Under an hour Newbie friendliness 62/100
Maintainers usually reply within 1 day
-
bug good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
thomhurst/TUnit#7201 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
ArduPilot/MissionPlanner#3826 ·
Maintainers usually reply within 1 day