BackendTester

This page describes the backend tester tool

Before trusting a storage location with your backups, it's essential to verify its reliability. The built-in Storage Testing Tool helps validate your backup destination through comprehensive integrity testing.

The BackendTester binary is called Duplicati.CommandLine.BackendTester.exe and duplicati-backend-tester on Linux and MacOS. The tool is mostly intended for system administrators that needs to verify a certain storage solution is working as expected, or for developers who are writing a new storage destination provider.

How the Storage Test Works:

  1. The tool automatically creates test files:

    • Generates files of varying sizes

    • Uses randomized file names

    • Creates the number of files you specify

  2. Performs a complete backup simulation:

    • Uploads all test files to your chosen storage location

    • Downloads each file back to verify retrieval

    • Validates file integrity using hash verification

    • Repeats this cycle multiple times for confidence

  3. Provides detailed test results:

    • Success/failure status of each operation

    • Upload and download performance metrics

    • Data integrity confirmation

Customizable Test Parameters:

  • File count: Choose how many test files to generate

  • File sizes: Set minimum and maximum file sizes

  • Filename parameters: Configure allowed characters

  • Test iterations: Specify how many test cycles to run

Usage: <protocol>://<username>:<password>@<path>
Example: ftp://user:pass@server/folder

Supported backends: aliyunoss,aftp,azure,b2,box,cloudfiles,dropbox,ftp,file,gcs,googledrive,e2,jottacloud,mega,msgroup,onedrivev2,openstack,rclone,s3,ssh,od4b,mssp,sharepoint,sia,storj,tahoe,cos,webdav

 --reruns (Inteiro): The number of test runs to perform
   A number that describes how many times the test is performed
   * default value:: 5
 --tempdir (Caminho): The path used to store temporary files
   The backend tester will use the system default temp path. You can set this option to choose another path.
 --extended-chars (String): A list of allowed extended filename chars
   A list of characters besides {a-z, A-Z, 0-9} to use when generating filenames
   * default value:: -_',=)(&%$#@! +
 --number-of-files (Inteiro): The number of files to test with
   An integer describing how many files to upload during a test run
   * default value:: 10
 --min-file-size (Tamanho): The minimum allowed file size
   File sizes are chosen at random, this value is the lower bound
   * default value:: 1kb
 --max-file-size (Tamanho): The maximum allowed file size
   File sizes are chosen at random, this value is the upper bound
   * default value:: 50mb
 --min-filename-length (Inteiro): The minimum allowed filename length
   File name lengths are chosen at random, this value is the lower bound
   * default value:: 5
 --max-filename-length (Inteiro): The minimum allowed filename length
   File name lengths are chosen at random, this value is the upper bound
   * default value:: 80
 --trim-filename-spaces (Boleano): Trim whitespace from filenames
   A value that indicates if whitespace should be trimmed from the ends of randomly generated filenames
   * default value:: false
 --auto-create-folder (Boleano): Allow automatic folder creation
   A value that indicates if missing folders are created automatically
   * default value:: false
 --skip-overwrite-test (Boleano): Bypass the overwrite test
   A value that indicates if dummy files should be uploaded prior to uploading the real files
   * default value:: false
 --auto-clean (Boleano): Remove any files found in target folder
   A value that indicates if all files in the target folder should be deleted before starting the first test
   * default value:: false
 --force (Boleano): Activate file deletion
   A value that indicates if existing files should really be deleted when using auto-clean
   * default value:: false

Last updated