Co je Continuous Integration (CI)?

publikováno: 22.1.2013

Continuous Integration (CI) je souhrn různých vývojářských nástrojů a metod k urychlení vývoje software. Při používání CI se provádí buildování aplikace několikrát za den, ideálně by měl být build aplikace nebo systému proveden automaticky po každém commitu do repozitáře (Git, SVN, CVS, ...). Při každém úspěšném buildu by měla být ověřena integrita systému s použitím automatizovaných (typicky JUnit) testů. Když nějaký test neprojde (fail), pak se o tom příslušný vývojář musí co nejdříve dozvědět, aby mohl být problém co nejdříve vyřešen.

Podle průzkumu společnosti ZeroTurnaround v současnosti používá principy CI pouze 49% vývojářů, což je velká škoda.

Mezi nástroje CI patří:

  • CI servery: Jenkins / Hudson
  • Nástoje pro automatizaci buildování aplikace: Maven
  • Repozitáře: Nexus
  • Testovací frameworky: JUnit
  • Nástroje pro analýzu zdrojového kódu: Sonar

Více o CI zjistíte v průzkumu ZeroTurnaround na toto téma.

Na Maven a JUnit v současnosti nabízím školení. Na další CI nástroje aktuálně školení připravuji.

Předchozí:
Java bugy nekončí
Následující:
Vyšel Hudson 3.0
Reference

Školení mi pomohlo ujasnit si jak má správně probíhat testování kódu, představilo užitečné knihovny a nástroje. Vše bylo podáno zábavnou formou, takže nebyl problém udržet pozornost. Navíc byl výhodou dostatek

Certicon
David

Jedno z nejlepších školení za poslední roky. Kromě seznámení se Springem apod. mě velmi příjemně překvapila hluboká znalost probírané látky a schopnost ji srozumitelně vysvětlit v případě ad hoc dotazů.

Jaroslav

Přestože jsem Cčkař, tak jsem se na školení JUnit dozvěděl nové věci. Zejména co se týče metodiky jednotkového testování a některých odborných termínů.

Retia
Jaromír


Novinky

16.1.2020: Pozor na jcenter repozitář (výchozí repozitář v Gradle)
Pozor na jcenter repozitář (výchozí repozitář v Gradle), v minulosti obsahoval falešné dependency (a stále tomu tak může být).

9.1.2020: https & repozitáře (Central, JCenter, Spring atd)
V současnosti řada repozitářů podporuje i HTTP, což se ale velice brzy (13.1 - 15.1) změní

13.12.2019: Java Microservices: A Practical Guide
Narazil jsem na velice zajímavou stránku, pod kterou bych se mohl podepsat :-) Praktický návod na Microservice architekturu.