Index: tests/regressiontests/fixtures_regress/tests.py
===================================================================
--- tests/regressiontests/fixtures_regress/tests.py	(revision 17827)
+++ tests/regressiontests/fixtures_regress/tests.py	(working copy)
@@ -12,6 +12,7 @@
 from django.core import management
 from django.core.management.base import CommandError
 from django.core.management.commands.dumpdata import sort_dependencies
+from django.db import IntegrityError
 from django.db import transaction
 from django.db.models import signals
 from django.test import (TestCase, TransactionTestCase, skipIfDBFeature,
@@ -375,21 +376,17 @@
         self.assertEqual(Book.objects.all()[0].id, 1)
         self.assertEqual(Person.objects.all()[0].id, 4)
 
-    def test_loaddata_raises_error_when_fixture_has_invalid_foreign_key(self):
+    def test_loaddata_raises_IntegrityError_when_fixture_has_invalid_foreign_key(self):
         """
         Regression for #3615 - Ensure data with nonexistent child key references raises error
         """
-        stderr = StringIO()
-        management.call_command(
-            'loaddata',
-            'forward_ref_bad_data.json',
-            verbosity=0,
-            commit=False,
-            stderr=stderr,
-        )
-        self.assertTrue(
-            stderr.getvalue().startswith('Problem installing fixture')
-        )
+        with self.assertRaisesRegexp(IntegrityError, '[.]*has an invalid foreign key[.]*'):
+            management.call_command(
+                'loaddata',
+                'forward_ref_bad_data.json',
+                verbosity=0,
+                commit=False,
+            )
 
     _cur_dir = os.path.dirname(os.path.abspath(__file__))
 
