diff --git a/Lib/test/test_format.py b/Lib/test/test_format.py
index 9e9aec5..ace1f1f 100644
--- a/Lib/test/test_format.py
+++ b/Lib/test/test_format.py
@@ -13,10 +13,10 @@
 def testformat(formatstr, args, output=None):
     if verbose:
         if output:
-            print("%s %% %s =? %s ..." %\
-                (repr(formatstr), repr(args), repr(output)), end=' ')
+            print("%r %% %r =? %r ..." %\
+                (formatstr, args, output), end=' ')
         else:
-            print("%s %% %s works? ..." % (repr(formatstr), repr(args)), end=' ')
+            print("%r %% %r works? ..." % (formatstr, args), end=' ')
     try:
         result = formatstr % args
     except OverflowError:
@@ -28,8 +28,8 @@
         if output and result != output:
             if verbose:
                 print('no')
-            print("%s %% %s == %s != %s" %\
-                (repr(formatstr), repr(args), repr(result), repr(output)))
+            print("%r %% %r == %r != %r" %\
+                (formatstr, args, result, output))
         else:
             if verbose:
                 print('yes')
@@ -222,7 +222,7 @@
         return self + 1
 
 test_exc('%o', Foobar(), TypeError,
-         "expected str object, int found")
+         "expected string, int found")
 
 if maxsize == 2**31-1:
     # crashes 2.2.1 and earlier:
