diff --git a/test-driver b/test-driver
index 6e17a00c19addce1a136ce83480ff0bf02fcc1c8..7d560a34c2098869d49b95d515d4915b580cd420 100755
--- a/test-driver
+++ b/test-driver
@@ -8,9 +8,9 @@ bin_dir=$(cd "${bin_dir}" && pwd)
 float_dir="${bin_dir}"
 
 log() {
-    echo >&2
-    echo " [*] $*" >&2
-    echo >&2
+    echo " ***" >&2
+    echo " *** $*" >&2
+    echo " ***" >&2
 }
 
 die() {
@@ -85,8 +85,8 @@ Commands:
 
   cleanup    Cleanup the test environment (turn down VMs, etc)
 
-  run        Run the test suite, using the playbook specified by
-             an additional command-line argument
+  run        Run the test suite, using the playbooks specified by
+             the remaining command-line arguments
 
 If DIR is specified, chdir there before running anything.
 
@@ -113,13 +113,11 @@ case "$cmd" in
         ;;
 
     run)
-        what="${float_dir}/test/integration-test-docker.yml"
-        if [ $# -gt 0 ]; then
-            what="$1"
-        fi
-        log Running test playbook ${what}
-        ${float_dir}/float run ${what} \
-            || die "test playbook failed"
+        for playbook in "${float_dir}/test/integration-test-docker.yml" "$@"; do
+            log Running test playbook ${playbook}
+            ${float_dir}/float run ${playbook} \
+                || die "test playbook failed"
+        done
         ;;
 
     *)