Preflight Stress Testing

Το tools\Run-PreflightStress.ps1 μεταγλωττίζει το console tool HotPDFPreflight, το εκτελεί πάνω σε μεγάλο PDF directory ένα αρχείο κάθε φορά, γράφει reports και logs ανά αρχείο και καταγράφει JSON / Markdown performance baseline. Κάθε αρχείο απομονώνεται πίσω από timeout ώστε ένα μόνο ακριβό PDF να μην μπλοκάρει ολόκληρη την εκτέλεση. Το προεπιλεγμένο timeout είναι 120 δευτερόλεπτα για να επιτρέπει σε μεγάλα implementation-limit files να ολοκληρωθούν, ενώ εξακολουθεί να απομονώνει παθολογικές εισόδους

Default run

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

Το προεπιλεγμένο sample root είναι D:\PDFdoc\PDF-Samples. Η έξοδος εκτέλεσης γράφεται κάτω από Tests\PreflightStress\runs\, που αγνοείται από Git επειδή τα reports και logs είναι machine-specific

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

Metrics

Το baseline καταγράφει total input file count, selected file count, byte totals, μεγαλύτερο και μικρότερο selected input size, processed / passed / failed / timed-out counts, elapsed seconds, files per second, MiB per second, output format, selected preset, per-file CSV path, report root και log root

Interpreting failures

Μια γραμμή failed ή timed-out σημαίνει ότι ένα PDF δεν μπόρεσε να επεξεργαστεί μέσα στα τρέχοντα όρια εκτέλεσης. Το script εξακολουθεί να γράφει το baseline και να τερματίζει επιτυχώς ώστε τα regression jobs να κρατούν τα στοιχεία. Αντιμετωπίστε απότομη αύξηση σε failures, timeout rows ή μεγάλη πτώση throughput ως σήμα για να ελέγξετε το per-file log και report directory

Related Topics