Kompatibilität

Was TestDetta benötigt und womit es getestet wurde. Was nicht in diesen Tabellen steht, ist nicht unbedingt nicht unterstützt, wurde aber nicht durchgängig getestet.

Voraussetzungen

BereichVoraussetzung
.NET SDKDas .NET 10 SDK führt TestDetta selbst aus. Ihre Tests verwenden weiterhin das SDK und den Test Runner, die Ihr Repository bereits nutzt.
Git-HistorieDie vollständige Historie Ihres Branches und seines Ziel-Branches, damit die Merge-Base gefunden werden kann. Mit Shallow Clones funktioniert es nicht.
BetriebssystemLinux und macOS, x64 und arm64. Windows wurde noch nicht getestet.

Test-Frameworks und Test Runner

Beide Test Runner von dotnet test funktionieren. Der Test Runner wird aus global.json gelesen, so wie dotnet test ihn liest. Diese Kombinationen werden durchgängig getestet, einschließlich der Aufzeichnung und auch mit aktivierter Parallelisierung des jeweiligen Frameworks:

FrameworkVSTestMicrosoft.Testing.Platform
xUnit v2Getestet–
xUnit v3–Getestet (für xUnit v3 mit dem .NET 10 SDK erforderlich)
NUnitGetestetGetestet; fügen Sie Microsoft.Testing.Extensions.TrxReport hinzu, damit fehlgeschlagene Tests bei der Aufzeichnung bekannt sind
MSTestGetestetGetestet
TUnit–Getestet

Die Testprojekte im Evaluierungskorpus zielen auf .NET 8 bis .NET 10. Testprojekte für das .NET Framework gehören nicht dazu.

Sprachen

SpracheWie Änderungen behandelt werden
C#Bis auf Member-Ebene analysiert: Syntaxbäume, Coverage-Maps und Namensverfolgung.
F#, Visual BasicTeil des Projektgraphen, aber nicht analysiert: Ist eines dieser Projekte betroffen, läuft alles, was davon abhängt, vollständig.

CI-Systeme

Jede CI braucht dieselben drei Dinge: die vollständige Historie, den abgerufenen Ziel-Branch und einen Ort, an dem Coverage-Maps zwischen Standard-Branch und Pull Requests aufbewahrt werden.

CIEinrichtungAblage der MapsZusammenfassung
GitHub ActionsDie Action, zwei SchritteDer Actions-Cache, ein Eintrag pro CommitJob Summary, wird für Sie geschrieben
GitLab CIDas Tool td, td record und td testEin gemeinsamer Ordner oder Objektspeicher, über --maps-dir--summary-file schreibt Markdown für jede CI, die es anzeigt
Jenkins
Azure DevOps
Bitbucket Pipelines