Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questo articolo presenta il concetto di test e illustra come usare diversi tipi di test per convalidare il codice. Sono disponibili diversi strumenti per il test di applicazioni .NET, ad esempio l'interfaccia della riga di comando .NET o Integrated Development Environments (IDEs).
Tipi di test
I test automatizzati sono un ottimo modo per garantire che il codice dell'applicazione eseeva ciò che gli autori intendevano. Questo articolo illustra unit test, test di integrazione e test di carico.
Test unità
Un unit test è un test che esercita singoli componenti o metodi software, noti anche come "unità di lavoro". Gli unit test devono testare solo il codice all'interno del controllo dello sviluppatore. Non testano i problemi dell'infrastruttura. I problemi relativi all'infrastruttura includono l'interazione con database, file system e risorse di rete.
Per altre informazioni sulla creazione di unit test, vedere Strumenti di test.
Test di integrazione
Un test di integrazione differisce da uno unit test in quanto esercita la capacità di due o più componenti software di funzionare insieme, noti anche come "integrazione". Questi test operano su uno spettro più ampio del sistema sottoposto a test, mentre gli unit test si concentrano sui singoli componenti. Spesso, i test di integrazione includono problemi di infrastruttura.
Test di carico
Un test di carico mira a determinare se un sistema può gestire o meno un carico specificato. Ad esempio, il numero di utenti simultanei che usano un'applicazione e la capacità dell'app di gestire le interazioni in modo reattivo. Per altre informazioni sui test di carico delle applicazioni Web, vedere ASP.NET Core test di carico/stress.
Considerazioni sul test
Tenere presente che esistono procedure consigliate per la scrittura di test. Ad esempio, TDD (Test Driven Development) è quando si scrive uno unit test prima del codice da controllare. TDD è come creare un contorno per un libro prima di scriverlo. Lo unit test consente agli sviluppatori di scrivere codice più semplice, leggibile ed efficiente.
Strumenti di test
Quando si eseguono test in .NET, sono coinvolti due componenti: la piattaforma di test e il framework di test.
Piattaforme di test
La piattaforma di test è il motore che esegue i test e comunica con strumenti come gli IDE e l'interfaccia della riga di comando.
Usare la panoramica delle piattaforme di test per comprendere le differenze tra VSTest e Microsoft.Testing.Platform e scegliere la piattaforma migliore per lo scenario in uso.
Per indicazioni sulla migrazione, vedere Eseguire la migrazione da VSTest a Microsoft.Testing.Platform.
Framework di prova
Il framework di test è basato sulla piattaforma di test. Definisce il set di attributi e API che sono disponibili per te, in qualità di autore di test. In genere è alimentato da un adattatore di test, che funge da livello di comunicazione tra il framework di test e la piattaforma di test. I framework di test più diffusi sono MSTest, NUnit, TUnit e xUnit.net.
MSTest
MSTest è il framework di test Microsoft per tutti i linguaggi .NET. È estendibile e funziona con .NET cli, Visual Studio, codice Visual Studio e rider. Supporta sia VSTest che Microsoft.Testing.Platform.
Per altre informazioni, vedere le risorse seguenti:
NUnit
NUnit è un framework di unit test per tutti i linguaggi .NET. Inizialmente, NUnit è stato convertito da JUnit e la versione di produzione corrente è stata riscritta con molte nuove funzionalità e supporto per un'ampia gamma di piattaforme .NET. Si tratta di un project della fondazione .NET. Supporta sia VSTest che Microsoft.Testing.Platform.
Per altre informazioni, vedere le risorse seguenti:
- Supporto di Microsoft.Testing.Platform in NUnit (NUnit runner)
- Test unitario con C#
- Test unitari con F#
- Test unitario con Visual Basic
TUnit
TUnit è interamente basato su Microsoft.Testing.Platform e non supporta VSTest. Per altre informazioni, vedere la documentazione di TUnit.
xUnit.net
xUnit.net è uno strumento di unit testing gratuito e open source incentrato sulla community per .NET. L'inventore originale di NUnit v2 ha scritto xUnit.net. xUnit.net è la tecnologia più recente per i test unitari delle applicazioni .NET. Funziona anche con ReSharper, CodeRush e TestDriven.NET. xUnit.net è un project della Fondazione .NET Foundation e opera nel codice di comportamento. Supporta sia VSTest che Microsoft.Testing.Platform
Per altre informazioni, vedere le risorse seguenti:
- Supporto della piattaforma Microsoft.Testing in xUnit.net v3
- Test unitario con C#
- Test unitari con F#
- Test unitari con Visual Basic
Esecuzione di test
interfaccia della riga di comando di .NET
È possibile eseguire unit test da tutti i progetti di test in una soluzione usando la CLI .NET con il comando dotnet test. L'interfaccia della riga di comando .NET espone la maggior parte delle funzionalità che Integrated Development Environments (IDEs) rendere disponibili tramite le interfacce utente. L'interfaccia della riga di comando di .NET è multipiattaforma e può essere usata come parte delle pipeline di integrazione e delivery continui. L'interfaccia della riga di comando .NET viene usata con processi con script per automatizzare le attività comuni.
IDE
Sia che si usino Visual Studio, Visual Studio Code o Rider, sono disponibili interfacce utente grafiche per il test delle funzionalità. Sono disponibili più funzionalità per gli IDE rispetto all'interfaccia della riga di comando, ad esempio Live Unit Testing. Per ulteriori informazioni, vedere Includere ed escludere i test con Visual Studio.
Vedere anche
Per altre informazioni, vedere gli articoli seguenti: