Preflight Stress Testing

tools\Run-PreflightStress.ps1 compilează utilitarul de consolă HotPDFPreflight, îl rulează peste un director PDF mare, câte un fișier pe rând, scrie rapoarte și jurnale per fișier și înregistrează o bază de referință de performanță în JSON / Markdown Fiecare fișier este izolat printr-un timeout, astfel încât un singur PDF costisitor să nu poată bloca întregul rulaj. Timeout-ul implicit este de 120 de secunde, pentru a permite fișierelor mari, aflate la limita de implementare, să termine, păstrând totuși izolate intrările patologice

Rulare implicită

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

Rădăcina implicită pentru mostre este D:\PDFdoc\PDF-Samples Ieșirea rulării este scrisă sub Tests\PreflightStress\runs\, care este ignorat de Git deoarece rapoartele și jurnalele sunt specifice mașinii

Rădăcină personalizată pentru mostre

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

Metrice

Baza de referință capturează numărul total de fișiere de intrare, numărul de fișiere selectate, totalul de octeți, cea mai mare și cea mai mică dimensiune selectată, numărul de elemente procesate / trecute / eșuate / expirate, secundele scurse, fișiere pe secundă, MiB pe secundă, formatul de ieșire, presetul selectat, calea CSV per fișier, rădăcina raportului și rădăcina jurnalului

Interpretarea eșecurilor

Un rând eșuat sau expirat înseamnă că un PDF nu a putut fi procesat în limitele curente ale rulării. Scriptul scrie totuși baza de referință și iese cu succes, astfel încât joburile de regresie să poată păstra dovezile Tratați o creștere bruscă a eșecurilor, a rândurilor expirate sau o scădere accentuată a debitului ca semnal să inspectați jurnalul și directorul de rapoarte per fișier

Subiecte înrudite