diff --git a/t/t7003-filter-branch.sh b/t/t7003-filter-branch.sh
index 553131fcf4c..6827249da51 100755
--- a/t/t7003-filter-branch.sh
+++ b/t/t7003-filter-branch.sh
@@ -78,7 +78,7 @@ test_expect_success 'filter subdirectory only' '
 test_expect_success 'subdirectory filter result looks okay' '
 	test 2 = $(git rev-list sub | wc -l) &&
 	git show sub:new &&
-	! git show sub:subdir
+	test_must_fail git show sub:subdir
 '
 
 test_expect_success 'setup and filter history that requires --full-history' '
@@ -100,7 +100,7 @@ test_expect_success 'subdirectory filter result looks okay' '
 	test 3 = $(git rev-list -1 --parents sub-master | wc -w) &&
 	git show sub-master^:new &&
 	git show sub-master^2:new &&
-	! git show sub:subdir
+	test_must_fail git show sub:subdir
 '
 
 test_expect_success 'use index-filter to move into a subdirectory' '
@@ -114,7 +114,7 @@ test_expect_success 'use index-filter to move into a subdirectory' '
 
 test_expect_success 'stops when msg filter fails' '
 	old=$(git rev-parse HEAD) &&
-	! git-filter-branch -f --msg-filter false HEAD &&
+	test_must_fail git-filter-branch -f --msg-filter false HEAD &&
 	test $old = $(git rev-parse HEAD) &&
 	rm -rf .git-rewrite
 '
@@ -151,8 +151,8 @@ test_expect_success "remove a certain author's commits" '
 '
 
 test_expect_success 'barf on invalid name' '
-	! git filter-branch -f master xy-problem &&
-	! git filter-branch -f HEAD^
+	test_must_fail git filter-branch -f master xy-problem &&
+	test_must_fail git filter-branch -f HEAD^
 '
 
 test_expect_success '"map" works in commit filter' '
@@ -174,7 +174,7 @@ test_expect_success 'Name needing quotes' '
 	git add foo &&
 	git commit -m "Adding a file" &&
 	git filter-branch --tree-filter "rm -fr foo" &&
-	! git ls-files --error-unmatch "foo/$name" &&
+	test_must_fail git ls-files --error-unmatch "foo/$name" &&
 	test $(git rev-parse --verify rerere) != $(git rev-parse --verify A)
 
 '