Compatibilidad
Qué necesita TestDetta y con qué se ha probado. Lo que no aparece en estas tablas no tiene por qué ser incompatible, pero no se ha probado de extremo a extremo.
Requisitos
| Elemento | Requisito |
|---|---|
| SDK de .NET | El SDK de .NET 10 ejecuta el propio TestDetta. Tus pruebas siguen usando el SDK y el runner que ya usa tu repositorio. |
| Historial de git | El historial completo de tu rama y de su rama de destino, para poder encontrar la merge base. Los clones superficiales (shallow) no funcionan. |
| Sistema operativo | Linux y macOS, x64 y arm64. Windows todavía no se ha probado. |
Frameworks de pruebas y runners
Funcionan ambos runners de dotnet test. El runner se lee de global.json, igual que lo lee dotnet test. Estas combinaciones se prueban de extremo a extremo, registro incluido, también con la paralelización propia de cada framework activada:
| Framework | VSTest | Microsoft.Testing.Platform |
|---|---|---|
| xUnit v2 | Probado | – |
| xUnit v3 | – | Probado (obligatorio para xUnit v3 con el SDK de .NET 10) |
| NUnit | Probado | Probado; añade Microsoft.Testing.Extensions.TrxReport para que se sepa qué pruebas fallan durante el registro |
| MSTest | Probado | Probado |
| TUnit | – | Probado |
Los proyectos de pruebas del corpus de evaluación tienen como destino de .NET 8 a .NET 10. Los proyectos de pruebas de .NET Framework no forman parte de él.
Lenguajes
| Lenguaje | Cómo se tratan los cambios |
|---|---|
| C# | Se analizan hasta el nivel de miembros: árboles de sintaxis, mapas de cobertura y rastreo por nombre. |
| F#, Visual Basic | Forman parte del grafo de proyectos, pero no se analizan: cuando uno de estos proyectos se ve afectado, todo lo que depende de él se ejecuta completo. |
Sistemas de CI
Todo CI necesita las mismas tres cosas: el historial completo, la rama de destino descargada y un lugar donde guardar los mapas de cobertura entre la rama predeterminada y las pull requests.
| CI | Configuración | Dónde se guardan los mapas | Resumen |
|---|---|---|---|
| GitHub Actions | La acción, dos pasos | La caché de Actions, una entrada por commit | Job summary, escrito automáticamente |
| GitLab CI | La herramienta td, td record y td test | Una carpeta compartida o almacenamiento de objetos, mediante --maps-dir | --summary-file escribe Markdown para cualquier CI que lo muestre |
| Jenkins | |||
| Azure DevOps | |||
| Bitbucket Pipelines |