Continuous Integration och testning med Jenkins

Continuous Integration, CI, är ett allt vanligare sätt att hantera komplexiteten i moderna utvecklingsprojekt. Istället för att skriva ett antal moduler var för sig och sedan utföra en tidsödande integrationsfas, ofta kallad "big bang", i slutet av varje projekt så testar man redan från början varje modul för sig och ser till att de kan samarbeta så tidigt som möjligt i utvecklingsarbetet.

Jenkins är det marknadsledande systemet för att automatisera samt följa upp integration och testning.

I kursen går vi igenom CI steg för steg, från att sätta upp en Jenkinsserver och ett enkelt byggjobb, via att börja utveckla enhetstester och modultester och följa upp kodtäckning och annan statistik, till att automatisera leveransen full ut. Vi går också igenom några andra moderna verktyg för mjukvaruutveckling som SonarQube som används för kontinuerlig uppföljning av kodkvalitet och Gerrit som används för kontinuerlig kodgranskning.

Målgrupp
Målgruppen är ingenjörer som arbetar som utvecklare eller testare som behöver en förståelse för CI och Jenkins samt blivande Jenkinsadministratörer och intresserade projektledare.

Mål
Efter att ha gått kursen har du en förståelse för CI och varför man använder Continuous Integration. Du kan sätta upp en Jenkinsserver och skapa byggjobb. Du vet vilken typ av tester som lämpar sig för automatisering. Du kan ta fram enhetstester i ditt favoritspråk och du kan presentera testresultaten på ett tydligt sätt. Du vet också hur man arbetar med felsökning och med kodgranskning med hjälp av Gerrit.

Instruktör
Instruktör är Håkan König som har lång erfarenhet av att arbeta med Jenkins och Contiuous Integration.

Bakgrundskunskaper
Deltagarna förväntas ha grundläggande kännedom mjukvaruutveckling och ha programmeringsvana i C++, Java eller Python.

Språk
Utbildningsmaterialet är skrivet på engelska. Utbildningen kan genomföras antingen på svenska eller engelska.

Kurslängd
Kursen genomförs under 2 dagar.

Innehåll
Kursinnehållet är:

Del 1:

  • Vad är Jenkins egentligen?
  • Installation
  • Grundläggande konfigurering.
  • "Mitt första Jenkinsjobb"

Del 2:

  • Scripta byggprocessen.
  • Skapa byggjobb.
Del 3:
  • Unit-tester, modultester, prestandatester, acceptanstester - Vad kan man automatisera?
  • "The Walking Skeleton".
  • Att skriva testfall - xUnit för ditt favoritspråk.
  • Test Driven Development.
  • Kodtäckning.
Del 4:
  • Presentera testresultat.
  • Göra resultaten tydliga - Radiatorer, Tray Icons, lampor....
  • Claiming.
Del 5:
  • Felsökning.
  • Filstruktur, sök direkt i loggarna.
Del 6:
  • Automatiserade leveranser.
  • Kodgranskning med Gerrit.

Intresseanmälan
Här görs intresseanmälan till utbildning i Continuous Integration och testning med Jenkins.

Mer information
För mer information kontakta Åsa Detterfelt, 070-659 58 12, alternativt maila asa.detterfelt@mindroad.se.

Kurstillfällen:
Stockholm 12 - 13/12, 22 - 23/2, 25 - 26/4,  20 - 21/6
Göteborg 23 - 24/11, 30 - 31/1, 21 - 22/3, 22 - 23/5
Linköping 14 - 5/3

Anmälan och frågor:
Skicka din anmälan eller frågor till asa.detterfelt@mindroad.se.