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 illustra come creare unit test per le app WinUI in Visual Studio usando i modelli di progetto di unit test integrati.
Per una panoramica generale dei test delle app Windows App SDK, consultare la sezione Testare le app compilate con Windows App SDK e WinUI 3.
Nota
L'app di unit test qui illustrata è scritta nel contesto di un'applicazione WinUI. Questa operazione è necessaria per tutti i test che eseguono codici che richiedono il runtime Xaml. Questo progetto creerà un thread dell'interfaccia utente Xaml ed eseguirà i test.
In questa esercitazione apprenderai a:
- Creare un'app unit test (WinUI 3 in Desktop) per un'app C# o unit test (WinUI 3) per il progetto C++ in Visual Studio.
- Usare Esplora testo di Visual Studio.
- Aggiungere un progetto Class Library (WinUI 3 in Desktop) per il test.
- Eseguire i test con Esplora test di Visual Studio.
Prerequisiti
È necessario aver installato Visual Studio.
Se non è ancora stato installato Visual Studio, accedere alla pagina Download di Visual Studio per installarlo gratuitamente.
Come si crea un progetto di app di test (WinUI 3 in Desktop)
Per iniziare, creare un progetto di unit test. Il tipo di progetto viene fornito con tutti i file modello necessari.
Aprire Visual Studio e selezionare Crea nuovo progetto nella finestra iniziale.
Nella finestra Crea un nuovo progetto filtrare i progetti in C#, Windows e WinUI, selezionare il modello App unit test in Desktop (WinUI 3) o App unit test (WinUI 3) per C++, quindi selezionare Avanti
[Facoltativo] Nella finestra Configura nuovo progetto, modificare il Nome progetto, il Nome soluzione (deselezionare Metti soluzione e progetto nella stessa directory) e la Posizione del progetto.
Seleziona Crea.
Come si eseguono gli unit test con Esplora test
Quando si crea il progetto di test, i test vengono visualizzati in Esplora test, che viene usato per eseguire gli unit test. È inoltre possibile raggruppare i test in categorie, filtrare l'elenco di test, creare, salvare ed eseguire playlist di test, eseguire il debug di unit test e ,in Visual Studio Enterprise, analizzare il code coverage.
Il file UnitTests.cs contiene il codice sorgente per gli unit test usati da Esplora test. Per impostazione predefinita, i test di esempio di base illustrati di seguito vengono creati automaticamente:
namespace WinUITest1
{
[TestClass]
public class UnitTest1
{
[TestMethod]
public void TestMethod1()
{
Assert.AreEqual(0, 0);
}
// Use the UITestMethod attribute for tests that need to run on the UI thread.
[UITestMethod]
public void TestMethod2()
{
var grid = new Grid();
Assert.AreEqual(0, grid.MinWidth);
}
}
}
Se non è già stato fatto, compilare la soluzione. Questo consentirà a Visual Studio di "individuare" tutti i test disponibili.
Aprire Esplora test. Se non è visibile, aprire il menu Test, quindi selezionare Esplora test (oppure premere Ctrl + E, T).
Visualizzare i test. Nella finestra Esplora test, espandere tutti i nodi (a questo punto saranno presenti solo i test di esempio).
Esecuzione dei test.
- Fare clic con il pulsante destro del mouse sui singoli nodi di test e selezionare Esegui.
- Selezionare un test e premere il pulsante Riproduci oppure premere CTRL+R, T.
- Premere il pulsante Esegui tutti i test nella visualizzazione o premere CTRL+R, V.
Esaminare i risultati. Al termine dei test, i risultati vengono visualizzati nella finestra Esplora test.
Aggiungere un nuovo progetto alla soluzione unit test. In Esplora soluzioni, fare clic con il pulsante destro del mouse e selezionare Aggiungi -> Nuovo progetto....
Per questo esempio, aggiungere un progetto di libreria di classi WinUI. Nella finestra Nuovo progetto, filtrare in C#/Windows/WinUI e selezionare Class Library (WinUI 3 in Desktop).
Selezionare Avanti e immettere un nome per il progetto (per questo esempio, si usa "WinUIClassLibrary1") e premere Crea.
Aggiungere un nuovo UserControl al progetto. In Esplora soluzioni, fare clic con il pulsante destro del mouse sul progetto di libreria di classi WinUI appena aggiunto e scegliere Aggiungi -> Nuovo elemento dal menu di scelta rapida.
Nella finestra Aggiungi nuovo elemento selezionare il nodo WinUI nell'elenco Elementi installati e quindi scegliere Controllo utente (WinUI 3) dai risultati. Assegnare al controllo il nome "UserControl1".
Aprire il file code-behind UserControl1.xaml.cs. Per questo esempio, viene aggiunto un nuovo metodo pubblico denominato "GetSeven()" che restituisce semplicemente un numero intero.
namespace WinUICLassLibrary1 { public sealed partial class UserControll : UserControl { public UserControl1() { this.InitializeComponent(); } public int GetSeven() { return 7; } } }Impostare il progetto Libreria di classi WinUI come dipendenza del progetto di unit test per abilitare l'uso di tipi dal progetto di libreria di classi WinUI. Nella finestra Esplora soluzioni, nel progetto libreria di classi, fare clic con il pulsante destro del mouse su Dipendenze e selezionare Aggiungi riferimento progetto.
Selezionare l'elemento "WinUIClassLibrary1" dall'elenco Progetti .
Creare un nuovo metodo di test in UnitTests.cs. Poiché questo test case richiede l'esecuzione di un thread dell'interfaccia utente XAML, contrassegnarlo con l'attributo [UITestMethod] anziché con l'attributo standard [TestMethod].
[UITestMethod] public void TestUserControl1() { WinUIClassLibrary1.UserControl1 userControl1 = new WinUIClassLibrary1.UserControl1(); Assert.AreEqual(7, userControl1.GetSeven()); }Questo nuovo metodo di test viene ora visualizzato in Esplora test come uno degli unit test.
Esecuzione dei test.
- Fare clic con il pulsante destro del mouse sul nodo del nuovo test e selezionare Esegui.
- Selezionare un test e premere il pulsante Riproduci oppure premere CTRL+R, T.
- Premere il pulsante Esegui tutti i test nella visualizzazione o premere CTRL+R, V.
Risorse aggiuntive
Nozioni di base sugli unit test
Passaggi successivi
Questa esercitazione ha descritto come:
- Creare un progetto app di test (WinUI 3 in desktop) in Visual Studio.
- Usare Esplora testo di Visual Studio.
- Aggiungere un progetto Class Library (WinUI 3 in Desktop) per il test.
- Eseguire i test con Esplora test di Visual Studio.
Copertura più completa degli strumenti di test inclusi in Visual Studio: