Thursday, April 28, 2022
Archive Tester facilitates semi-automated testing of RAR and 7z archives, with or without PAR2 parity files. It is built with data integrity in mind.
It supports detection of many useful statuses - such as parity mismatch, repairable damage, non-repairable damage, and more.
It is particularly useful when you have large folders containing many archives, and you want to find and test them all without having to wait around and keep clicking the next one, and verify that your data is intact.
The intent is to run the program on a regular basis, and simply drop your storage volumes into the app. It will find your archives.
Archive Tester's main page, before testing begins.
After starting tests, Archive Tester provides gradual status updates.
The password management page. Passwords are required to process encrypted archives.
Why Test Archives?
Keeping RAR or 7z archives is one method of helping to verify data integrity, as they use self-updating checksums. Any disk error could cause a corruption, in which case the archive must be restored from a backup or repaired using the recovery record. If we have many archives, how do we know which ones require repairs/replacement?
Additionally, how do we know that we are not propagating corrupt archives through our backups?
This program helps to solve that by finding and testing archives.
Recovery/Parity Data
To protect against corruptions, recovery data can be kept with or inside of archives. In the case of RAR format archives, a recovery record can be added. When altering the archive, such as by adding or removing files, WinRAR automatically updates this record to keep the recovery data in sync.
An alternate form of recovery data is PAR2, where parity files are generated for an archive. These are stored next to the archive as .par2 files. These are functionally similar to the RAR recovery record, but are not automatically kept in sync. If the archive is updated and the user forgets to update the parity, then the parity data is now useless. To help protect against this, Archive Tester reports a parity mismatch, informing the user that the parity needs updating.
Additionally, if a multipart archive has parity data, Archive Tester reports a parity mismatch if any parts are not covered by the parity.
Parity file functionality depends on MultiPar. Archive Tester is capable of installing it.
Operation
Simply drag folders into the drop zone, and all archives within will be displayed. The program can then automatically test all archives, leaving you to do something else. Status updates are shown as each archive is tested.
Testing archives can be computationally expensive. If necessary, the program can be paused and resumed. Pausing takes effect once finishing the current archive.
At program launch, it will check for an update. It won't update unless you agree to it, and versions can be skipped.
An embedded version of 7Zip is used for testing. Where parity files are detected, MultiPar is used for testing if present on the system.
If you notice any bugs, please use the Contact form in the navigation bar at the top of this page, or the in-app Feedback button.
System Requirements
Archive Tester is a WPF app using WebView2 and .NET 6.
A user need not install .NET 6 or WebView2. Archive Tester will handle this, but if WebView2 is missing, an internet connection will be required to fetch it from a Microsoft server.
MultiPar is an optional dependency. It is required for working with PAR2 parity files, and Archive Tester will offer to install it if parity files are found.
Future Development
Potential future changes include:
Update History