pytest + pytest-qt (requirements-dev.txt) deviennent le point d'entree unique
de la suite ("pytest" depuis la racine), sans toucher aux 30+ scripts
test_*.py existants (convention deliberement conservee - voir tests/conftest.py) :
tests/test_all_scripts.py les lance chacun comme sous-processus isole (comme
c'etait deja fait manuellement a chaque phase), avec QT_QPA_PLATFORM=offscreen
pour tourner sans affichage (verifie : la suite complete passe a l'identique
en mode hors-ecran, prerequis pour une future integration continue).
tests/run_all.bat corrige au passage : il ne lancait plus que 4 tests sur 30+
(liste figee, jamais mise a jour au fil des phases) ; il delegue maintenant a
pytest.
Audit de couverture (Phase 13 du plan) : fingerprint, stockage atomique,
migration de schema, config OpenSSH, ProxyJump, CredentialStore, redaction de
secrets et detection de commandes dangereuses etaient deja couverts au fil des
phases precedentes. Seul point manquant identifie : aucun test ne verifiait
qu'une cle API IA ne puisse fuiter dans un message d'erreur - ajoute dans
tests/test_no_secrets_in_errors.py.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
20 lines
433 B
Batchfile
20 lines
433 B
Batchfile
@echo off
|
|
setlocal
|
|
cd /d "%~dp0\.."
|
|
|
|
if not exist venv (
|
|
echo Environnement virtuel introuvable. Lancez d'abord setup.bat
|
|
pause
|
|
exit /b 1
|
|
)
|
|
|
|
REM QT_QPA_PLATFORM=offscreen : les tests construisent de vraies fenetres Qt,
|
|
REM mais sans les afficher (utile en console comme en integration continue).
|
|
set QT_QPA_PLATFORM=offscreen
|
|
set PYTHONIOENCODING=utf-8
|
|
set PYTHONUTF8=1
|
|
|
|
venv\Scripts\python.exe -m pytest tests -v
|
|
|
|
pause
|