Preflight Stress Testing

tools\Run-PreflightStress.ps1 compile l’outil console HotPDFPreflight, l’exécute sur un grand répertoire PDF fichier par fichier, écrit des rapports et journaux par fichier, et enregistre une base de référence de performances JSON / Markdown. Chaque fichier est isolé par un délai d’attente afin qu’un seul PDF coûteux ne bloque pas toute l’exécution Le délai par défaut est de 120 secondes pour laisser finir les fichiers volumineux liés aux limites d’implémentation tout en isolant les entrées pathologiques

Default run

powershell -NoProfile -ExecutionPolicy Bypass -File tools\Run-PreflightStress.ps1

La racine d’exemples par défaut est D:\PDFdoc\PDF-Samples. La sortie de l’exécution est écrite sous Tests\PreflightStress\runs\, qui est ignoré par Git car les rapports et journaux sont propres à la machine

Custom sample root

powershell -NoProfile -ExecutionPolicy Bypass -File tools\Run-PreflightStress.ps1 `
  -SampleRoot D:\PDFdoc\PDF-Samples `
  -OutputRoot D:\Temp\HotPDFPreflightStress `
  -MaxFiles 1000 `
  -MaxBytes 5242880 `
  -MaxSecondsPerFile 120

Métriques

La base de référence capture le nombre total de fichiers d’entrée, le nombre de fichiers sélectionnés, les totaux d’octets, la taille d’entrée sélectionnée la plus grande et la plus petite, les comptes traités / réussis / échoués / expirés, les secondes écoulées, les fichiers par seconde, les MiB par seconde, le format de sortie, le préréglage sélectionné, le chemin CSV par fichier, la racine des rapports et la racine des journaux

Interprétation des échecs

Une ligne échouée ou expirée signifie qu’un PDF n’a pas pu être traité dans les limites d’exécution actuelles. Le script écrit quand même la base de référence et se termine avec succès afin que les tâches de régression conservent les preuves. Traitez une hausse soudaine des échecs, des lignes expirées ou une forte chute du débit comme le signal d’inspecter le journal et le répertoire de rapports par fichier

Sujets connexes