Come abbiamo visto nei precedenti articoli, .NET MAUI (Multi-platform App UI) è un framework cross-platform di Microsoft, che permette di creare applicazioni native per Android, iOS, macOS e Windows utilizzando un singolo codebase. Il processo di deploying e testing di un’app in .NET MAUI può variare in base alla piattaforma di destinazione, ma segue alcuni principi generali.
In questo articolo vedremo i passaggi per eseguire il deploying e testing di un’app MAUI su diverse piattaforme, includendo anche gli strumenti utili per il testing.
Preparazione dell’Ambiente di Sviluppo
Prima di procedere al deploy, è essenziale che l’ambiente di sviluppo sia configurato correttamente. Per sviluppare con .NET MAUI, devi avere i seguenti strumenti installati:
- Visual Studio 2022 (versione 17.3 o superiore) con carico di lavoro per .NET MAUI.
- .NET SDK (versione 6 o superiore).
- Android SDK e Emulatori iOS/macOS se desideri testare su dispositivi mobili.
- Xcode (se sviluppi su macOS per iOS).
Deploying dell’App in .NET Maui su Diverse Piattaforme
Android
Per eseguire il deploy di un’app .NET MAUI su Android, devi seguire questi passaggi:
- Configurazione dell’emulatore o dispositivo fisico:
- Se stai testando su un emulatore, puoi configurare un emulatore Android direttamente da Visual Studio utilizzando Android Device Manager.
- Se desideri testare su un dispositivo fisico, abilita la modalità sviluppatore e il debug USB sul tuo dispositivo Android.
- Build e Deploy:
- In Visual Studio, seleziona la configurazione di build (Debug o Release) e la piattaforma di destinazione (Android).
- Premi “F5” o fai clic su “Avvia Debug” per eseguire il deploying direttamente sull’emulatore o sul dispositivo.
iOS
Per iOS, lo sviluppo richiede macOS con Xcode installato o, in alternativa, un PC Windows con un Mac collegato tramite Mac Agent.
- Configurazione dell’emulatore o dispositivo fisico:
- Puoi utilizzare un emulatore di iPhone direttamente da Visual Studio, oppure collegare un dispositivo fisico se stai utilizzando un Mac.
- Build e Deploy:
- Seleziona iOS come piattaforma di destinazione in Visual Studio e premi “F5” per eseguire il deploy sull’emulatore o dispositivo fisico.
Nota: Il deploy su dispositivi fisici iOS richiede la configurazione di un certificato di sviluppo Apple e di un provisioning profile.
macOS e Windows
Le applicazioni per macOS e Windows possono essere eseguite direttamente sul sistema operativo host:
- Per Windows: Seleziona la piattaforma Windows e avvia il progetto come faresti con qualsiasi altra applicazione WPF o WinUI.
- Per macOS: Seleziona macOS come target e premi “F5” per avviare il deploy.
Testing dell’App in .NET MAUI
Il testing è una parte cruciale nello sviluppo di un’app. .NET MAUI supporta vari strumenti e approcci di testing.
Test Unitari
I test unitari si concentrano su singoli componenti del codice, come modelli di dati e logica di business. Per eseguire test unitari in un’app MAUI, puoi utilizzare librerie come xUnit, NUnit o MSTest.
- Configurazione dei Test Unitari:
- Aggiungi un progetto di test alla tua soluzione in Visual Studio.
- Utilizza un framework di test come xUnit e scrivi i test per i tuoi metodi.
- Esegui i test direttamente in Visual Studio utilizzando la finestra “Test Explorer”.
Test di Interfaccia Utente (UI)
I test UI verificano che l’interfaccia utente dell’app funzioni come previsto. Per le app .NET MAUI, puoi utilizzare strumenti come Appium o Xamarin.UITest.
- Xamarin.UITest:
- Aggiungi il pacchetto Xamarin.UITest al tuo progetto di test.
- Crea script di test UI per simulare azioni dell’utente sull’app, come il clic sui pulsanti o l’inserimento di testo.
- Esegui i test su emulatori o dispositivi reali per vedere come l’interfaccia reagisce.
Test su Dispositivi Fisici
Oltre agli emulatori, è utile eseguire il testing su dispositivi fisici per assicurarsi che l’app funzioni correttamente anche su hardware reale. Collegando il dispositivo Android o iOS al tuo PC o Mac, puoi eseguire il deploy e testare l’app direttamente sul dispositivo.
Continuous Integration e Continuous Deployment (CI/CD)
Per automatizzare il deploy e il testing delle applicazioni MAUI, puoi configurare pipeline CI/CD utilizzando strumenti come GitHub Actions, Azure DevOps o Jenkins.
- Configurazione di CI:
- Configura una pipeline CI per eseguire automaticamente i test unitari e di integrazione ogni volta che viene effettuato un commit nel repository.
- Configurazione di CD:
- Imposta una pipeline di CD per eseguire il deploy automatico dell’app su piattaforme di destinazione, come Google Play Store, Apple App Store o sistemi desktop.
Conclusione
Il deploy e il testing di un’app .NET MAUI richiedono una combinazione di strumenti e procedure. Visual Studio fornisce un ambiente integrato per eseguire queste attività in modo efficiente su più piattaforme. Che tu stia sviluppando per Android, iOS, macOS o Windows, .NET MAUI ti consente di gestire l’intero ciclo di vita del software da un’unica base di codice, rendendo più semplice la gestione del progetto.
Investire nel testing, sia unitario che di UI, ti permette di identificare e correggere i problemi prima di rilasciare l’app agli utenti finali, migliorando la qualità del prodotto e riducendo i rischi post-deploy.
Se hai domande o desideri una consulenza dedicata, contattaci!