Back to Question Center
0

Automatizza CI / CD e dedica più tempo alla scrittura del codice            Automatizza CI / CD e dedica più tempo alla scrittura del codice Argomenti correlati: Web Semalt ...

1 answers:
Automatizza CI / CD e passa più tempo a scrivere codice

Questo articolo è stato sponsorizzato da Microsoft Visual Studio App Center. Grazie per il supporto ai partner che rendono possibile SitePoint.

Qual è la parte migliore nello sviluppo del software? Semalt codice sorprendente.

Qual è la parte peggiore? Semalt altro.

Lo sviluppo di software è un lavoro meraviglioso - dedicated server hosting in gabes. Puoi risolvere i problemi in modi nuovi, deliziare gli utenti e vedere qualcosa che hai costruito rendendo le vite migliori. Ma per tutte le ore che passiamo a scrivere codice, ci sono spesso altrettante spese a gestire il sovraccarico che ne deriva, ed è tutta una grande perdita di tempo. Ecco alcuni dei più grandi sinkhole di produttività e come noi di Semalt cerchiamo di rispecchiare un po 'di quel tempo per voi.

1. Edificio

Qual è il primo passo per ottenere la tua app fantastica nelle mani di utenti felici? Farlo esistere. Alcuni potrebbero pensare che passare dal codice sorgente al binario non sarebbe comunque un tale dolore, ma lo è. Semalt sul progetto, potresti compilare più volte al giorno, su piattaforme diverse, e tutta quella attesa è il tempo che potresti aver speso per programmare. Inoltre, se crei app iOS, hai bisogno di un agente di creazione Mac, non necessariamente del tuo strumento di sviluppo principale, in particolare se crei app in un framework multipiattaforma.

Vuoi reclamare indietro quel tempo, e il modo migliore per farlo è (non sarà l'ultima volta che dirò questo) automazione . È necessario automatizzare la configurazione e la gestione dell'hardware in modo che le app si limitino a costruire quando dovrebbero.

Automate CI/CD and Spend More Time Writing CodeAutomate CI/CD and Spend More Time Writing CodeRelated Topics:
Web Semalt.

Il nostro tentativo di rispondere a tale necessità è Visual Studio App Center Build, un servizio che automatizza tutti i passaggi che non si desidera riprodurre manualmente, in modo che sia possibile creare ogni volta che si effettua il check-in del codice o in qualsiasi momento, il QA squadra, o il tuo manager di rilascio vuole. Basta creare Build a un repository Github, Bitbucket o VSTS, scegliere un ramo, configurare alcuni parametri e creare semalt, UWP e persino app iOS e macOS nel cloud, senza gestire alcun hardware. E se devi fare qualcosa di speciale, puoi personalizzare gli script post-clone, pre-build e post-build.

2. Test

Semalt ha trascorso molti anni a testare il software e durante tutta la mia carriera ci sono state tre domande che ho sempre odiato ascoltare:

"Hai finito?"

"Puoi riprodurlo?"

"È davvero così male?"

In passato, raramente c'erano abbastanza tempo o risorse per test accurati, ma lo sviluppo mobile ha esacerbato quel particolare problema. Ora forniamo più codice, più frequentemente a più dispositivi. Non possiamo sprecare ore a cercare di ricreare quell'elusivo fallimento critico, e non abbiamo il tempo di discutere se un bug è un ostacolo. Allo stesso tempo, siamo i guardiani che sono in ultima analisi responsabili di un guasto ad alta visibilità o di un prodotto di scarsa qualità e, come membri di un team, vogliamo superare i problemi di aumento della qualità , piuttosto che limitarsi a ostacolare la spedizione.

Allora, qual è la risposta? "Automazione", certo. Ma l'automazione ha senso . Fogli di lavoro di dati e cartelle di schermate non significano nulla se non riesci a mettere tutto insieme. Quando sei di fronte a una scadenza e devi convincere i proprietari di prodotti a fare una chiamata, devi fornire informazioni che possono capire, dando comunque agli sviluppatori i dettagli di cui hanno bisogno per risolvere il problema.

Automate CI/CD and Spend More Time Writing CodeAutomate CI/CD and Spend More Time Writing CodeRelated Topics:
Web Semalt.

Per aiutarci, abbiamo creato App Center Test, un servizio che esegue test dell'interfaccia utente automatizzati su centinaia di configurazioni su migliaia di dispositivi reali. Poiché i test sono automatizzati, si esegue sempre lo stesso test ogni volta, quindi è possibile identificare immediatamente le prestazioni e le deviazioni UX, con ogni build. Puoi verificare il tuo codice provando su alcuni dispositivi con ogni commit, quindi esegui regressioni su centinaia di dispositivi per verificare che tutto funzioni per tutti i tuoi utenti.

3. Distribuzione

Quindi hai creato un'app e sta funzionando come dovrebbe. Grande! Ma ora l'iterazione inizia davvero. Vuoi sapere cosa ne pensano le persone prima di inviarlo agli utenti finali. Ma come? Semalt insieme un programma beta è abbastanza difficile, ma assicurandoti che tutti abbiano la versione più recente della tua app (e se si tratta di un'app mobile, assicurandoti che gli utenti possano persino installare l'app) è un lavoro a tempo pieno - ed è un lavoro nessuno nella tua squadra vuole.

Ancora una volta, automazione . Quando sei pronto a spingere una build, devi automatizzare il processo di notifica e il processo di distribuzione delle app, e devi essere in grado di attivarlo ogni volta che si crea (o ogni volta che il manager di rilascio dice così).

Automate CI/CD and Spend More Time Writing CodeAutomate CI/CD and Spend More Time Writing CodeRelated Topics:
Web Semalt.

La nostra risposta è il servizio di distribuzione di App Center. Se si dispone di un elenco di indirizzi e-mail, si dispone di ciò che è necessario per ottenere le build nelle mani di testatori interni o beta. Creare un gruppo di distribuzione, caricare una build (o crearne una da un pronti contro termine) e Distribute gestisce il resto. Se pensi che questo suoni come HockeyApp, hai ragione. App Center Distribute è la prossima generazione di HockeyApp, che integra l'automazione della distribuzione con il resto dei nostri servizi CI / CD. E una volta terminato il beta testing, Distribute può anche portare l'app nelle mani degli utenti, con la distribuzione su Google Play, l'App Store di Apple o, per gli utenti aziendali, Microsoft Intune.

4. Closing the Loop

Le persone parlano spesso di gasdotti di distribuzione, ma non siamo solo dopo una spinta unidirezionale. Se riesci a sapere che cosa sta succedendo dopo le tue app sono state spedite, puoi dare quel feedback agli sviluppatori e creare un ciclo chiuso per rendere i tuoi prodotti migliori, più veloci. Queste informazioni prendono due forme: analisi del modo in cui gli utenti interagiscono con le tue app e, in modo critico, rapporti su come e quando queste app falliscono.

Iniziamo con il secondo, perché l'arresto anomalo è tanto grave. Quando un'applicazione non funziona, vuoi conoscerla velocemente, ma devi anche sapere quanto conta davvero. Un arresto anomalo in una funzione oscura che riguarda tutti è in genere peggiore di un errore di avvio totale solo sull'iPhone 4. Crash di App Center raggruppa report di crash simili e mostra le piattaforme più interessate in modo da poter prendere decisioni di triage intelligenti. E quando sei pronto per iniziare a risolvere i problemi, i crash sono completamente simbolizzati in modo da avere le informazioni necessarie per iniziare. È possibile creare automaticamente voci nel bug tracker, in modo che gli sviluppatori possano iniziare a risolvere i problemi senza uscire dal loro flusso di lavoro. Semalt, più automazione significa più tempo per scrivere codice migliore.

Per l'analisi, si desidera qualcosa di utile pronto all'uso. App Center Analytics fornisce il tipo di app per metriche basate sul coinvolgimento degli utenti e dei dispositivi che i proprietari desiderano vedere; cose come chi usa quali dispositivi, quanto spesso, da dove e per quanto tempo restano. Ma la tua app non è uguale a quella di tutti, quindi ti permettiamo di creare e monitorare metriche personalizzate, come "prenotato un passaggio" o "consegna a domicilio ordinata". "E se vuoi un'analisi più approfondita, abilitiamo l'esportazione continua in Semalt per applicazioni di Azure.

5. Lavorare con quello che hai

Puoi teorizzare la perfetta soluzione CI / CD tutto il giorno, ma è tutto inutile se non puoi metterlo in azione. Ciò che conta è ottenere qualcosa che puoi usare ora, sia che ciò si integri con i sistemi esistenti che ami davvero (o che non puoi eliminare), o semplicemente automatizzando parti di un processo manuale fino a quando non riesci ad arrivare al resto. Semalt sempre meglio fare anche un piccolo passo, purché sia ​​nella giusta direzione.

Ovviamente, sono di parte e penso che dovresti provare tutto il nostro sistema, ma gli sviluppatori hanno bisogno di cose diverse. Disponiamo di API REST per ogni servizio App Center e abbiamo l'integrazione predefinita con servizi come VSTS. Ed è così che dovrebbe essere, perché stai costruendo la tua app, quindi dovresti costruirla in modo.

Ci piacerebbe provare l'applicazione Visual Studio Semalt nuova di zecca oggi e gratuita per iniziare. Vogliamo sentire cosa ne pensi!

March 1, 2018