Zátěžové testování preflightu

tools\Run-PreflightStress.ps1 zkompiluje konzolový nástroj HotPDFPreflight, spustí jej nad velkým adresářem PDF souborů po jednom souboru, zapíše reporty a logy pro jednotlivé soubory a uloží výkonnostní baseline ve formátu JSON / Markdown Každý soubor je izolován časovým limitem, takže jeden náročný PDF soubor nemůže zablokovat celý běh Výchozí limit je 120 sekund, aby se velké soubory na hranici implementace mohly dokončit a patologické vstupy zůstaly izolované

Výchozí běh

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

Výchozí kořen ukázek je D:\PDFdoc\PDF-Samples Výstup běhu se zapisuje do Tests\PreflightStress\runs\, který Git ignoruje, protože reporty a logy jsou specifické pro konkrétní počítač

Vlastní kořen ukázek

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

Metriky

Baseline zachycuje celkový počet vstupních souborů, počet vybraných souborů, součty bajtů, největší a nejmenší velikost vybraného vstupu, počty processed / passed / failed / timed-out, uplynulé sekundy, soubory za sekundu, MiB za sekundu, výstupní formát, vybraný preset, cestu k CSV pro jednotlivé soubory, kořen reportů a kořen logů

Interpretace selhání

Řádek failed nebo timed-out znamená, že jeden PDF soubor nebylo možné zpracovat v aktuálních limitech běhu Skript přesto zapíše baseline a skončí úspěšně, aby regresní úlohy zachovaly důkazy Náhlé zvýšení počtu selhání, timeout řádků nebo prudký pokles propustnosti berte jako signál ke kontrole logu a adresáře reportů pro daný soubor

Související témata