Code Coverage doesn't include projects not referenced by Tests Projects
@jakubch1 ci sta già lavorando.
Dal 7/3/2023.
Valutazione
Questa issue non è ancora stata valutata.
Descrizione
Description
I noticed that projects which are not referenced by Tests projects are not included in the Coverage results, is there are way to get them included? It's important to include them because that does change overall percentage.
I'm creating this since https://stackoverflow.com/questions/42013013/analyze-code-coverage-with-visual-studio-skips-some-projects has not been answered, so hopefully you can help.
I've tried many different configurations in my .runnsettings, including a recursive ModulePaths/IncludeDirectories and specifically including the missing DLL.
I've been reading the docs but didn't find any settings which could make it, did I miss anything?
Thanks!
Steps to reproduce
Solution.sln (C:\source)
ProjectA
ProjectB
TestProject
References ProjectA only
coverage.runsettings:
<RunSettings>
<DataCollectionRunSettings>
<DataCollectors>
<DataCollector friendlyName="Code Coverage" uri="datacollector://Microsoft/CodeCoverage/2.0" assemblyQualifiedName="Microsoft.VisualStudio.Coverage.DynamicCoverageDataCollector, Microsoft.VisualStudio.TraceCollector, Version=11.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<Configuration>
<CodeCoverage>
<Sources>
<Include>
<Source>C:\\source\\.*</Source>
</Include>
</Sources>
<UseVerifiableInstrumentation>False</UseVerifiableInstrumentation>
<AllowLowIntegrityProcesses>True</AllowLowIntegrityProcesses>
<CollectFromChildProcesses>True</CollectFromChildProcesses>
<CollectAspDotNet>False</CollectAspDotNet>
</CodeCoverage>
</Configuration>
</DataCollector>
</DataCollectors>
</DataCollectionRunSettings>
<RunConfiguration>
<MaxCpuCount>0</MaxCpuCount>
<BatchSize>1000</BatchSize>
<ResultsDirectory>C:\results</ResultsDirectory>
</RunConfiguration>
</RunSettings>
Once solution is built, I can see all DLLs and PDBs in their own files, and in TestsProject bin's folder only ProjectA.dll/pdb is there as expected.
Then run vstest
vstest.console.exe "C:\sources\TestProject\bin\release\TestProject.dll" /Settings:"C:\coverage.runsettings" /Logger:"trx" /TestAdapterPath:"c:\Source"
(don't think Logger and TestAdapterPath are important but that is how I've been running)
Expected behavior
.coverage included ProjectB on it, stating 0 covered blocks as that will for sure change the overall percentage
Actual behavior
ProjectB is not included, only ProjectA and TestProjects are present .
Diagnostic logs
I don't have a diag I can share now as I'm building some real projects, if really needed I can create a test solution and do it.
Environment
Microsoft (R) Test Execution Command Line Tool Version 17.0.0
- Lingua principale
- C#
- Stelle
- 125
- Fork
- 17
- Merge medio
- 1h 17m
- PR unite (30g)
- 2
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di microsoft/codecoverage
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 52/100
microsoft/codecoverage#246 · 6 commenti ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 55/100
microsoft/codecoverage#237 · 1 commento ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
microsoft/codecoverage#234 · 1 commento · 2 reazioni ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 52/100
microsoft/codecoverage#233 · 2 reazioni ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 28/100
microsoft/codecoverage#232 · 6 commenti ·
Tutte le issue di microsoft/codecoverage
Issue simili
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
nightscout/nocturne#1425 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
RayWangQvQ/BiliBiliToolPro#1137 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100