Laborator 4: Implementarea testării unitare și a acoperirii codului

Obiective

  • Implementarea testării unitare pentru funcționalitățile aplicației dezvoltate în laboratoarele anterioare
  • Măsurarea și analiza acoperirii codului pentru îmbunătățirea calității software
  • Integrarea testelor unitare în pipeline-ul CI/CD

Cerințe tehnologice

  • Limbaj și framework de testare: PyTest (Python) / Jest (JavaScript) / JUnit (Java)
  • Măsurarea acoperirii codului: Coverage.py, Istanbul, JaCoCo
  • CI/CD Pipeline: GitHub Actions/GitLab CI/CD/Jenkins pentru rularea testelor automat
  • Raportare și analiză: Codecov/SonarQube pentru interpretarea metricilor de acoperire

Funcționalități

1. Scrierea testelor unitare

  • Crearea unui set de teste unitare pentru componentele principale ale aplicației
  • Utilizarea mocking/stubbing pentru izolarea dependențelor
  • Testarea funcțiilor critice de procesare a imaginilor, autentificare și interacțiune cu baza de date

2. Măsurarea acoperirii codului

  • Configurarea unui instrument de măsurare a acoperirii codului
  • Generarea rapoartelor de acoperire pentru identificarea zonelor neacoperite de teste
  • Stabilirea unui prag minim de acoperire necesar pentru livrarea codului

3. Integrarea testelor în pipeline-ul CI/CD

  • Configurarea rulării automate a testelor la fiecare commit/pull request
  • Impunerea unui prag minim de acoperire a codului pentru aprobarea unui build
  • Generarea și publicarea rapoartelor de testare și acoperire

Evaluare

  • Implementarea testelor unitare pentru funcționalități cheie (40%)
  • Măsurarea și raportarea acoperirii codului (30%)
  • Integrarea testării și a metricilor de acoperire în pipeline-ul CI/CD (30%)

Resurse suplimentare

ss/laboratoare/04.txt · Last modified: 2025/02/26 00:15 by jan.vaduva
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0