DevOps con Xamarin

Xamarin consente di compilare le app per dispositivi mobili multipiattaforma destinate ad Android, iOS e Windows con C#, .NET e Visual Studio. Xamarin consente di condividere la maggior parte del codice tra le piattaforme e solo una piccola percentuale di codice rimane specifica della piattaforma.

Lo sviluppo di app per piattaforme moderne comporta molte più attività rispetto alla semplice scrittura di codice. Queste attività definite DevOps (Development + Operations) si estendono per il ciclo di vita completo di un'app e includono pianificazione e rilevamento del lavoro, progettazione e implementazione di codice, gestione di un repository di codice sorgente, esecuzione di compilazioni, gestione di integrazioni e distribuzioni continue, test (tra cui unit test e test dell'interfaccia utente), esecuzione di varie forme di diagnostica in ambienti di sviluppo e produzione e monitoraggio delle prestazioni delle app e comportamenti dell'utente in tempo reale tramite telemetria e analisi.

Visual Studio insieme a Azure DevOps Services e Team Foundation Server offre un'ampia gamma di funzionalità DevOps. Molti di queste sono interamente applicabili ai progetti multipiattaforma. Ciò è particolarmente vero con le app Xamarin poiché vengono compilate con C# e .NET per i quali sono compilati alcuni strumenti DevOps. Altri strumenti richiedono una stretta integrazione con gli ambienti di runtime e di compilazione. Poiché le app Xamarin vengono eseguite su piattaforme non Windows e usano l'implementazione Mono di .NET, Xamarin offre strumenti specializzati per determinate esigenze.

Le tabelle seguenti identificano le funzionalità DevOps di Visual Studio di cui è possibile prevedere il corretto funzionamento con un progetto Xamarin e quelle che invece presentano limitazioni. Per informazioni dettagliate sulle funzionalità fare riferimento alla documentazione collegata.

Strumenti Agile:

Collegamento di riferimento: About Agile tools and Agile project management (Informazioni sugli strumenti e la gestione di progetti Agile)

Commento generale: tutte le funzionalità di pianificazione e traccia sono indipendenti dal tipo di progetto e dai linguaggi di codifica.

Funzionalità Supportato con Xamarin Commenti aggiuntivi
Gestione di backlog e sprint
Verifica del lavoro
Collaborazione nella chat team
Bacheche Kanban
Segnalare e visualizzare lo stato di avanzamento

Modellazione

Collegamento di riferimento: Analizzare e modellare l'architettura

Le funzionalità di progettazione sono indipendenti dal linguaggio di codifica o funzionano con i linguaggi .NET come C#. Per informazioni sugli aspetti correlati al codice, vedere Ruoli dell'architettura e dei diagrammi di modellazione nello sviluppo software .

Funzionalità Supportato con Xamarin Commenti aggiuntivi
Diagrammi sequenza
Grafici delle dipendenze
Gerarchia di chiamata
Progettazione classi
Esplora architettura
Diagrammi UML (caso di utilizzo, attività, classe, componente, sequenza e DSL)
Diagrammi livello
Convalida dei livelli

Codice

Funzionalità Supportato con Xamarin Commenti aggiuntivi
Usare controllo della versione di Team Foundation (TFVC) o Azure Repos
Introduzione a Git in Azure Repos
Migliorare la qualità del codice
Trovare le modifiche apportate al codice e altri elementi della cronologia Ad eccezione dei limiti specifici tra le piattaforme dove l'implementazione viene risolta solo dopo la fase di esecuzione.
Usare le mappe del codice per eseguire il debug delle applicazioni

Compilare

Collegamento di riferimento: Azure Pipelines

Funzionalità Supportato con Xamarin Commenti aggiuntivi
Server TFS locale È necessario che nei computer di compilazione sia installato Xamarin e che i computer possano essere collegati a un computer OSX per la compilazione con iOS. Vedere Usare controllo della versione di Team Foundation
Server di compilazione locale collegato a Azure Pipelines Per istruzioni, vedere Compilare e rilasciare gli agenti .
Servizio controller ospitato di Azure Pipelines Vedere Build your Xamarin app (Compilare l'app Xamarin).
Definizioni di compilazione con pre e post script
Integrazione continuata incluse le archiviazioni gestite Archiviazioni gestite per TFVC solo quando Git elabora un modello di richiesta di pull anziché le archiviazioni.

Test

Funzionalità Supportato con Xamarin Commenti aggiuntivi
Pianificazione dei test, creazione di test case e organizzazione di gruppi di test
Test manuali
Test Manager (registrazione e riproduzione di test) Solo dispositivi Windows ed emulatori Android da Visual Studio.
Code coverage n/d
Eseguire unit test del codice Per destinazioni Windows e Android, è possibile usare gli strumenti incorporati MSTest. Per eseguire unit test in Windows, Android e iOS, Xamarin consiglia NUnit. Vedere Use TFVC (Usare il controllo della versione di Team Foundation).
Usare l'automazione dell'interfaccia utente per testare il codice Solo Windows La registrazione dei test dell'interfaccia utente di Visual Studio è disponibile solo per Windows. Per tutte le piattaforme, vedere Xamarin.UITest.

Migliorare la qualità del codice

Collegamento di riferimento: Migliorare la qualità del codice

Funzionalità Supportato con Xamarin Commenti aggiuntivi
Analizzare la qualità del codice gestito
Ricerca del codice duplicato mediante il rilevamento del clone di codice
Misurazione della complessità e della manutenibilità del codice gestito
Esplora prestazioni No Usare invece Xamarin Profiler tramite Visual Studio per Mac. Si noti che il Profiler Xamarin è attualmente in versione di anteprima e non funziona ancora per le destinazioni Windows.
Analizzare i problemi relativi alla memoria .NET Framework No Gli strumenti di Visual Studio non hanno hook nel framework Mono per la profilatura.

Gestione versioni

Collegamento di riferimento: Compilare e rilasciare in Azure Pipelines e TFS

Funzionalità Supportato con Xamarin Commenti aggiuntivi
Gestire i processi di rilascio
Distribuzione ai server per il caricamento laterale tramite script
Caricare nell'app store Partial Sono disponibili estensioni che possono automatizzare questo processo per alcuni archivi applicazioni. Vedere le estensioni per Azure DevOps Services, ad esempio l'estensione per Google Play.

Monitorare con App Center SDK

Collegamento di riferimento: Monitorare con App Center SDK

Funzionalità Supportato con Xamarin Commenti aggiuntivi
Analisi degli arresti anomali, telemetria e distribuzione beta