The sync job had run. The files were not where they should be. Something was wrong, and it was obvious: Rsync needed real QA testing.
Rsync is fast, proven, and battle-tested for moving files between systems. But speed and trust do not replace verification. QA testing for Rsync means confirming that every byte copied, every timestamp preserved, every permission retained actually matches expectations. It means catching silent failures before they cause outages.
A proper Rsync QA process starts with controlled test datasets. Build cases with mixed file types—binary, text, large media. Include edge cases: deeply nested directories, special characters in filenames, sparse files, hard links. These expose problems that normal usage hides.
Run Rsync in different modes. Test with --archive for full fidelity. Test with --checksum to force hash comparisons. Test with --dry-run and capture the planned operations. Compare results to the known ground truth. Automate these runs, and log every mismatch.