This is an old revision of the document!


Laborator 3: 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

* [https://docs.pytest.org/en/latest/ PyTest Documentation] / [https://jestjs.io Jest Documentation] / [https://junit.org JUnit Documentation] * [https://coverage.readthedocs.io Coverage.py] / [https://istanbul.js.org Istanbul Code Coverage] / [https://www.jacoco.org JaCoCo] * [https://docs.sonarqube.org/latest/ SonarQube Documentation] / [https://about.codecov.io Codecov]

ss/laboratoare/04.1740521228.txt.gz · Last modified: 2025/02/26 00:07 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