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

25.6.2020: Velice pěkný článek na téma proč je v Generics erasure

17.6.2020: Spring Boot 2.3
Vyšel Spring Boot 2.3 a změnila se kadence vydávání releasů

13.6.2020: JetBrains: The State of Developer Ecosystem 2020
Statistika nuda není :-) Dalším rokem je k dispozici report o stavu Javy, JavaScriptu, databází, microservices a další