etnadev 2016 - 21/10/2016
TRANSCRIPT
![Page 1: EtnaDev 2016 - 21/10/2016](https://reader031.vdocuments.mx/reader031/viewer/2022022413/58ee3ad01a28aba3598b45a1/html5/thumbnails/1.jpg)
Continuous IntegrationforXamarinwithVisualStudioTeamServicesPaternò[email protected]@tanopaterno
![Page 2: EtnaDev 2016 - 21/10/2016](https://reader031.vdocuments.mx/reader031/viewer/2022022413/58ee3ad01a28aba3598b45a1/html5/thumbnails/2.jpg)
Overview• E’comuneperglisviluppatoridilavorareinparallelo aprogettisoftware.Aduncertopunto,ènecessariointegraretuttiquestiflussidilavoroparalleliinunabase.
• Continuous Integration(CI)ciaiutaadevitarelecomplessitàdiintegrazioneattraversolafusionedeicambiamenti,apportatialcodicedaognisviluppatore,suunabasecodecomunecontinua.
• Ciòrisultainunabasedicodicecoesoestabile.
![Page 3: EtnaDev 2016 - 21/10/2016](https://reader031.vdocuments.mx/reader031/viewer/2022022413/58ee3ad01a28aba3598b45a1/html5/thumbnails/3.jpg)
Components
Continuous IntegrationServer - IlCIèresponsabiledellaraccoltatuttiimanufattidiunprogetto(codicesorgente,immagini,video,database,testautomatizzati,etc.),dellacompilazionedell'applicazioneedell'esecuzionedeitestautomatizzati.
VersionControl - Consolidatuttoilcodicediunprogettoinununicorepository condivisoemantieneunacronologiacompletadituttelemodificheapportateaifile.
![Page 4: EtnaDev 2016 - 21/10/2016](https://reader031.vdocuments.mx/reader031/viewer/2022022413/58ee3ad01a28aba3598b45a1/html5/thumbnails/4.jpg)
Old CI• Ognisviluppatoremantieneunacopiadelcodicesorgentesullapropriamacchina.
• Unavoltachelemodifichesonopronte,vengono“committate”sulrepositorycentrale,cosìchepossanoesserecondiviseconilrestodelteam.
![Page 5: EtnaDev 2016 - 21/10/2016](https://reader031.vdocuments.mx/reader031/viewer/2022022413/58ee3ad01a28aba3598b45a1/html5/thumbnails/5.jpg)
UnitTest
• Siparladiunit testinquantolefunzionalitàdelprogrammavengonoscomposteincomportamentidiscretitestabilichepossonoesseretestaticomesingole unità.
• Èpossibilegenerarerapidamenteprogettiditestemetodiditestdalcodiceoppurecrearemanualmenteitestnecessari.
• Conlo sviluppobasatosutest,gliunit testvengonocreatiprimadiscrivereilcodiceequindivengonousatisiacomedocumentazionediprogettazionesiacomespecifichefunzionali.
![Page 6: EtnaDev 2016 - 21/10/2016](https://reader031.vdocuments.mx/reader031/viewer/2022022413/58ee3ad01a28aba3598b45a1/html5/thumbnails/6.jpg)
NewCI
• LeapplicazioniintroduconosfideunicheperlaCI.Ades. leapp possonorichiederel’accessohaisensoricomeilGPSolafotocamera.
![Page 7: EtnaDev 2016 - 21/10/2016](https://reader031.vdocuments.mx/reader031/viewer/2022022413/58ee3ad01a28aba3598b45a1/html5/thumbnails/7.jpg)
Components
VersionControl
VisualStudioTeamServiceandTeamFoundationServer
Git
SVN
Continuous Integration
VisualStudioTeamServiceandTeamFoundationServer
VisualStudioTeamServicesandJenkins
Git AndJenkins
![Page 8: EtnaDev 2016 - 21/10/2016](https://reader031.vdocuments.mx/reader031/viewer/2022022413/58ee3ad01a28aba3598b45a1/html5/thumbnails/8.jpg)
VSTSandTFS
• VisualStudioTeamServizi (VSTS)e TeamFoundationServer (TFS)sonoglistrumentidiMicrosoftperlacontinuous integration,ilmonitoraggiodelleattività,lapianificazioneAgileeincludestrumentidireportingedicontrollodelleversioni.
• VisualStudioTeamServicesfornisceserviziviacloud.Nonrichiedehardwareoinfrastrutturededicateesipuòaccederedaqualsiasiluogoattraversoibrowser.
• TFSèprogettatoperserverWindowslocalievisiaccedeattraversounaretelocaleounaconnessioneVPN.É possibilecontrollarecompletamentelaconfigurazionedeiserverdibuild edèpossibileinstallarequalsiasiulterioresoftwareoservizionecessario.
![Page 9: EtnaDev 2016 - 21/10/2016](https://reader031.vdocuments.mx/reader031/viewer/2022022413/58ee3ad01a28aba3598b45a1/html5/thumbnails/9.jpg)
VSTSandTFS
• Utilizzarel'IDEdivostrogradimentosfruttandoilplug-inperEclipse,IntelliJ,Android Studio,VisualStudio,VisualStudioCodeealtroancora.
• SviluppareinJava,C#,PHPoqualsiasialtrolinguaggiomodernoecostruireperapplicazioniperLinux,Mac,Windows,iOSeAndroid.
![Page 10: EtnaDev 2016 - 21/10/2016](https://reader031.vdocuments.mx/reader031/viewer/2022022413/58ee3ad01a28aba3598b45a1/html5/thumbnails/10.jpg)
Demo
![Page 11: EtnaDev 2016 - 21/10/2016](https://reader031.vdocuments.mx/reader031/viewer/2022022413/58ee3ad01a28aba3598b45a1/html5/thumbnails/11.jpg)
ExtensionsforVSTS
![Page 12: EtnaDev 2016 - 21/10/2016](https://reader031.vdocuments.mx/reader031/viewer/2022022413/58ee3ad01a28aba3598b45a1/html5/thumbnails/12.jpg)
PersonalStoreSviluppo,distribuzioneebetatestdiapp perdispositivimobili
• Supportoperapp Android,Cordova,iOS,OSX,Unity,WindowseXamarin• Reportsugliarrestianomali,liveeaffidabili• Commentiesuggerimentiinapp dautentireali• SDKopensourceingradodiriconoscereilcodiceinesecuzionenelletueapp• Integrazioneconlasoluzionedigestionedeglielementidilavoroeilsistemadicompilazioneesistenti
![Page 13: EtnaDev 2016 - 21/10/2016](https://reader031.vdocuments.mx/reader031/viewer/2022022413/58ee3ad01a28aba3598b45a1/html5/thumbnails/13.jpg)
Demo
![Page 14: EtnaDev 2016 - 21/10/2016](https://reader031.vdocuments.mx/reader031/viewer/2022022413/58ee3ad01a28aba3598b45a1/html5/thumbnails/14.jpg)
ExtendedCI
• Xamarin TestCloud eHockeyApp sonodeiserviziutiliperestenderelepotenzialitàdellaCI.
![Page 15: EtnaDev 2016 - 21/10/2016](https://reader031.vdocuments.mx/reader031/viewer/2022022413/58ee3ad01a28aba3598b45a1/html5/thumbnails/15.jpg)
Questiontime