diff --git a/src/bin/pg_verifybackup/t/008_untar.pl b/src/bin/pg_verifybackup/t/008_untar.pl
index 21d152320c1..35c292fbbf2 100644
--- a/src/bin/pg_verifybackup/t/008_untar.pl
+++ b/src/bin/pg_verifybackup/t/008_untar.pl
@@ -123,7 +123,18 @@ for my $tc (@test_configuration)
 		$primary->command_ok(
 			[ 'pg_verifybackup', '--exit-on-error', $backup_path, ],
 			"verify backup, compression $method");
-
+		if ($method eq 'zstd')
+		{
+			my $archive = "$backup_path/base.tar.zst";
+			open my $fh, '+<', $archive
+				or die "could not open $archive: $!";
+			truncate($fh, (-s $archive) - 1)
+				or die "could not truncate $archive: $!";
+			close $fh;
+			$primary->command_fails(
+				[ 'pg_verifybackup', '--exit-on-error', $backup_path, ],
+				"reject truncated ZSTD backup");
+		}
 		# Cleanup.
 		rmtree($backup_path);
 	}
