Jenkins Fundamentals – Build & Test Software

Acest curs are ca scop final  acumularea unor concepte importante de DevOps si posibilitatea implementarii unui flux de livrare continua in cadrul echipei.

Curs Online cu video

Lista de clase la care te poți înscrie:

Cursul se desfășoară online, fără prezență la sala de curs.

Cursantului i se creează cont pe https://cursuri.telacad.ro. Pe acest cont are acces la materialul scris de către instructorii Telecom Academy

Cursul trebuie promovat în cel mult 4 luni de la momentul înscrierii.

Preț pentru persoane fizice: 300 lei

Înscrie-te acum
Nivel

Intermediate

Nr. cursuri

6

Suport de curs scris

Materiale video

Nr. ore video

2.5

Limba de predare

Română

Limba materialului scris

Română

Tarife
300 lei - student
300 lei - pers. fizică
400 lei - pers. juridică

Despre curs

Jenkins este unul dintre cele mai folosite intrumente software pentru automatizarea proceselor de construire si testare intr-o echipa care dezvolta un proiect software. Aceste doua procese fac parte dintr-un concept mai amplu, cel de Continuous Integration (CI). CI vizeaza reducerea ineficientelor ciclului de construire, permitand dezvoltatorilor sa compileze codul echipei dintr-un depozit de control al versiunilor partajate. De asemenea, CI permite automatizarea procesului de testare a codului astfel incat membrii unei echipe isi pot configura sistemul pentru a rula automat teste, fie ca sunt ele unitare sau de integrare. Poate fi utilizat pe mai multe sisteme de operare precum Windows, Linux, OS X. De asemenea, Jenkins poate fi configurat si in Cloud.

Ce problema rezolva Jenkins?

De-a lungul timpului o problema foarte mare in cadrul unei echipe care lucreaza la dezvoltarea unui proiect a reprezentat-o fluxul de lucru fragmentat. Cand spun flux fragmentat presupunem urmatorul scenariu: intr-o echipa o parte din membrii se ocupa de dezvoltare, iar cealalta parte se ocupa de testare. Fara utilizarea Jenkins sau a altui sistem de acest fel, ori de cate ori un dezvoltator realizeaza o modificare a codului, acesta va fi nevoit sa investeasca timpul in build-uirea codului modificat si trimiterea build-ului catre echipa de testare. De asemenea, el va trebui sa ruleze manual teste unitare pentru a-si testa codul. Aceasta forma ineficienta de lucru poate deveni frustranta. De aceea, Jenkins este cel care rezolva aceasta problema. Intr-un flux de lucru ideal, acesta este integrat cu sistemul pentru controlul versiunii precum Git si ori de cate ori o modificare este salvata, Jenkins va rula teste unitare sau teste de integrare automat si va putea oferi catre echipa de testare un build.

Cum a aparut Jenkins?

Dezvoltarea Jenkins a inceput in 2004. Acesta s-a numit initial Hudson si a fost initiat de catre Kohsuke Kawaguchi, CTO-ul CloudBees. Aceasta idee a pornit in urma frustrarilor adunate de Kohsuke din cauza timpului pierdut ori de cate ori codul lui crea probleme in cadrul procesului de contruire (build). Astfel, el a creat Jenkins CI drept o forma  de integrare continua prin care el isi testa codul inainte de a salva o captura cu noile modificari in cadrul sistemului pentru controlul versiunii.

Cui se adreseaza cursul?

Cursul se adreseaza persoanelor din domeniu IT care isi doresc acumularea de informatii in ceea ce priveste automatizarea modalitatilor de lucru in cadrul unei echipe care lucreaza la dezvoltarea unui produs software. Cursul isi propune prezentarea instrumentului de automatizare Jenkins de la operatii de baza, pana la implementarea unor fluxuri mai complexe de lucru.

Cunostinte preliminare?

– Cunostinte de baza sistem pentru control al versiunii  – Recomandat Git

– Cunostinte de baza scripting si limbaje precum Groovy si Java

– Cunostinte de baza sistem de manipulare a procesului de constuire (build) – Recomandat Maven

– Cunostinte de baza sisttem de operare Linux

Contul Online pentru acces la distanță

După procesarea plății, de către echipa Telecom Academy, cursantului i se creează cont pe cursuri.telacad.ro, iar acesta va primi un mail cu pașii pe care trebuie să îi urmeze pentru configurare.

Ce înseamnă un astfel de curs?

  • acces la manualul de curs pe cursuri.telacad.ro
  • acces la materialele scrise și la cele video
  • susținerea online a examenelor de capitol
  • examen final (teoretic) susținut de acasa. (**acesta este activat de noi la cererea cursantului si este cronometrat)
  • diploma la promovarea cursului

Examene și evaluări – Criterii de promovare

Există două tipuri de examene: examenele de capitol și examenul final. Examenul final se susține de acasa. (**acesta este activat de noi la cererea cursantului si este cronometrat).

Pentru a fi promovat, cursantul trebuie să obțină un punctaj de minimum 70% atât la toate examenele de capitol, dar si la examenul final teoretic.

Odată înscris în clasă, cursantul va putea accesa materialele de curs și își va putea susține toate examenele, într-un interval de maximum 4 luni de la data înscrierii.

Ce vei învăța

– Cum sa instalezi si sa configurezi Jenkins

– Integrarea Jenkins-ului cu alte sisteme precum Git si Maven

– Conceptul de job-uri de Jenkins-ul

– Testare si livrare continua in cadrul echipe utilizand Jenkins

– Manipularea plugin-urilor de Jenkins

– Conceptul de “Jenkins pipeline” si “Jenkinsfile”

– Construirea automata a proiectului

Certificări

La terminarea cursului Jenkins Fundamentals – Build & Test Software cursantul primește diploma eliberată de către Telecom Academy care atestă faptul că acesta a absolvit cursul la Telecom Academy.

Programa

1.1 Conceptele de livrare si integrare si implementare continua

1.2 Despre Jenkins – scurt istoric, avantaje si dezavantaje comparativ cu alte sisteme

1.3 Instalare si configurare Jenkins

2.1 Ce inseamna job in Jenkins

2.2 Proiect/job de tip „freestyle” in Jenkins

2.3 Proiect/job de tip „pipeline” in Jenkins

2.4 Proiect/job de tip „multibranc-pipeline” in Jenkins

 

3.1 Avantajele integrarii altor sisteme

3.2 Jenkins & Git

3.3 Jenkins & Maven

 

4.1 Integrarea unui instrument de „Code Coverage” pentru o scriere cat mai buna a codului

4.2 Notificarile in Jenkins

4.3 Publicarea rapoartelor HTML

 

5.1 Jenkins API din browser

5.2 Accesarea Jenkins API programatic

 

6.1 Conceptul de variabile de sistem/mediu in Jenkins

6.2 Rularea de job-uri cu parametri

6.3 Alte comenzi ajutatoare

Sponsori și parteneri