Code coverage

andrea.sterbini (172780 points)
513 935 1789
asked Nov 20, 2021 in Programmare in Python by andrea.sterbini (172,780 points)
edited Nov 20, 2021 by andrea.sterbini

Per permettervi di controllare se qualche parte del vostro codice non è stata eseguita dai test, e va controllata a mano, nei prossimi HW aggiungerò nel log di correttezza, la misura della code coverage del programma testato.

Per il momento potete fare questo controllo in locale:

  • installate il plugin pytest-cov (conda install pytest-cov)
  • eseguite i test col plugin attivato ( pytest test_01.py --cov=program01 --cov-report=html )
  • visualizzate il report (firefox htmlcov/index.html)
  • le righe marcate di rosso non sono state eseguite da nessun test e vanno controllate a mano (potrebbero essere eseguite in altri test)

1 Answer

S
S3b4stian82 (2250 points)
3 6 27
answered Nov 20, 2021 by S3b4stian82 (2,250 points)
Prof.

Se potesse aggiungere anche quanta memoria utilizza lo script in esecuzione, sarebbe interessate!
andrea.sterbini (172780 points)
513 935 1789
commented Nov 20, 2021 by andrea.sterbini (172,780 points)

Per quello c'è pytest-memprof (pip install pytest-memprof)

Si usa aggiungendo a pytest il parametro --memprof-top-n=<numero di voci da mostrare>

Non credo che lo aggiungerò, che non do nessun bonus per chi usa meno memoria.

Inoltre le stime che fa sono molto molto variabili.

S
S3b4stian82 (2250 points)
3 6 27
commented Nov 20, 2021 by S3b4stian82 (2,250 points)
Perfetto, grazie!