diff --git a/product/ERP5Type/tests/ERP5TypeTestCase.py b/product/ERP5Type/tests/ERP5TypeTestCase.py
index b1f2391b982aa0d4928f98611954ae34dda0dd98..b335be66cd5863614ec65fb08e2c84cb379e720b 100644
--- a/product/ERP5Type/tests/ERP5TypeTestCase.py
+++ b/product/ERP5Type/tests/ERP5TypeTestCase.py
@@ -644,6 +644,20 @@ from unittest import _makeLoader, TestSuite
 def dummy_makeSuite(testCaseClass, prefix='dummy_test', sortUsing=cmp, suiteClass=TestSuite):
   return _makeLoader(prefix, sortUsing, suiteClass).loadTestsFromTestCase(testCaseClass)
 
+def dummy_setUp(self):
+  '''
+  This one is overloaded so that it dos not execute beforeSetUp and afterSetUp
+  from the original tests, which would write to the FileStorage when --save is
+  enabled
+  '''
+  try:
+      self.app = self._app()
+      self.portal = self._portal()
+      self._setup()
+  except:
+      self._clear()
+      raise
+
 def optimize():
   '''Significantly reduces portal creation time.'''
   def __init__(self, text):
diff --git a/product/ERP5Type/tests/runUnitTest.py b/product/ERP5Type/tests/runUnitTest.py
index 223965bbcd7eb8f0ca6941beb5f3cb4afc1600aa..3952fe1bd0bf431d38f99c9b3eb4afc6d477dc11 100755
--- a/product/ERP5Type/tests/runUnitTest.py
+++ b/product/ERP5Type/tests/runUnitTest.py
@@ -169,9 +169,13 @@ def runUnitTestList(test_list) :
   sys.path.insert(0, tests_framework_home)
 
   # override unittest.makeSuite to skip all tests in save mode
+  # and PortalTestCase.setUp to skip beforeSetUp and afterSetUp
   if os.environ.get('erp5_save_data_fs'):
-    from Products.ERP5Type.tests.ERP5TypeTestCase import dummy_makeSuite
+    from Products.ERP5Type.tests.ERP5TypeTestCase import \
+        dummy_makeSuite, dummy_setUp
+    from Testing.ZopeTestCase.PortalTestCase import PortalTestCase
     unittest.makeSuite = dummy_makeSuite
+    PortalTestCase.setUp = dummy_setUp
 
   filtered_tests_class_names = 0
   for test in test_list: