diff --git a/setup.py b/setup.py
index 33697007516cf6895b33008c0850482f22e3b652..6d87dfab35d45e3bd0b0d7a8539ed51c32cb3bdd 100755
--- a/setup.py
+++ b/setup.py
@@ -66,7 +66,7 @@ setup(name=name,
           'onetimeupload = slapos.recipe.onetimeupload:Recipe',
           'helloworld = slapos.recipe.helloworld:Recipe',
           'generic.cloudooo = slapos.recipe.generic_cloudooo:Recipe',
-          'cloudooo.test = slapos.recipe.cloudooo_test:Recipe',
+          'cloudooo.test = slapos.recipe.erp5_test:CloudoooRecipe',
           'firefox = slapos.recipe.firefox:Recipe',
           'fontconfig = slapos.recipe.fontconfig:Recipe',
           'java = slapos.recipe.java:Recipe',
diff --git a/slapos/recipe/cloudooo_test/__init__.py b/slapos/recipe/cloudooo_test/__init__.py
deleted file mode 100644
index 2cb6f6863014f705c83b1037e8f949dc58791bdf..0000000000000000000000000000000000000000
--- a/slapos/recipe/cloudooo_test/__init__.py
+++ /dev/null
@@ -1,51 +0,0 @@
-##############################################################################
-#
-# Copyright (c) 2010 Vifib SARL and Contributors. All Rights Reserved.
-#
-# WARNING: This program as such is intended to be used by professional
-# programmers who take the whole responsibility of assessing all potential
-# consequences resulting from its eventual inadequacies and bugs
-# End users who are looking for a ready-to-use solution with commercial
-# guarantees and support are strongly adviced to contract a Free Software
-# Service Company
-#
-# This program is Free Software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 3
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-##############################################################################
-from slapos.recipe.librecipe import GenericBaseRecipe
-import urlparse
-
-class Recipe(GenericBaseRecipe):
-  def install(self):
-    path_list = []
-    common_dict = dict(
-        prepend_path=self.options['prepend-path'],
-    )
-    common_list = [
-           "--paster_path", self.options['ooo-paster'],
-           self.options['configuration-file']
-          ]
-    run_unit_test_path = self.createPythonScript(self.options['run-unit-test'],
-        __name__ + '.test.runUnitTest', [dict(
-        call_list=[self.options['run-unit-test-binary'],
-          ] + common_list, **common_dict)])
-
-    path_list.append(run_unit_test_path)
-    path_list.append(self.createPythonScript(self.options['run-test-suite'],
-        __name__ + '.test.runTestSuite', [dict(
-        call_list=[self.options['run-test-suite-binary'],
-          ], **common_dict)]))
-
-    return path_list
diff --git a/slapos/recipe/cloudooo_test/test.py b/slapos/recipe/cloudooo_test/test.py
deleted file mode 100644
index 70baa22f5a42427a24caa9cfd345fcd669e2e1f3..0000000000000000000000000000000000000000
--- a/slapos/recipe/cloudooo_test/test.py
+++ /dev/null
@@ -1,64 +0,0 @@
-##############################################################################
-#
-# Copyright (c) 2010 Vifib SARL and Contributors. All Rights Reserved.
-#
-# WARNING: This program as such is intended to be used by professional
-# programmers who take the whole responsibility of assessing all potential
-# consequences resulting from its eventual inadequacies and bugs
-# End users who are looking for a ready-to-use solution with commercial
-# guarantees and support are strongly adviced to contract a Free Software
-# Service Company
-#
-# This program is Free Software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 3
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-##############################################################################
-import os
-import sys
-def runTestSuite(args):
-  env = os.environ.copy()
-  d = args[0]
-  env['PATH'] = ':'.join([d['prepend_path']] + os.environ['PATH'].split(':'))
-  # Deal with Shebang size limitation
-  executable_filepath = d['call_list'][0]
-  file_object = open(executable_filepath, 'r')
-  line = file_object.readline()
-  file_object.close()
-  argument_list = []
-  if line[:2] == '#!':
-    executable_filepath = line[2:].strip()
-    argument_list.append(executable_filepath)
-  argument_list.extend(d['call_list'])
-  argument_list.extend(sys.argv[1:])
-  argument_list.append(env)
-  os.execle(executable_filepath, *argument_list)
-
-def runUnitTest(args):
-  env = os.environ.copy()
-  d = args[0]
-  env['PATH'] = ':'.join([d['prepend_path']] + os.environ.get('PATH', '').split(':'))
-  # Deal with Shebang size limitation
-  executable_filepath = d['call_list'][0]
-  file_object = open(executable_filepath, 'r')
-  line = file_object.readline()
-  file_object.close()
-  argument_list = []
-  if line[:2] == '#!':
-    executable_filepath = line[2:].strip()
-    argument_list.append(executable_filepath)
-  argument_list.extend(d['call_list'])
-  argument_list.extend(sys.argv[1:])
-  argument_list.append(env)
-  os.execle(executable_filepath, *argument_list)
-
diff --git a/slapos/recipe/erp5_test/__init__.py b/slapos/recipe/erp5_test/__init__.py
index 1aeea2c5c78044b9116786ac04d4aef1e70c63ca..6d9166580bf0a6c7b48ca169099e32bdccd6ba54 100644
--- a/slapos/recipe/erp5_test/__init__.py
+++ b/slapos/recipe/erp5_test/__init__.py
@@ -27,6 +27,9 @@
 from slapos.recipe.librecipe import GenericBaseRecipe
 import urlparse
 
+# The follow recipes should be unified somehow in order to improve
+# code mantainence.
+
 class Recipe(GenericBaseRecipe):
   def install(self):
     testinstance = self.options['test-instance-path']
@@ -72,3 +75,26 @@ class Recipe(GenericBaseRecipe):
           ] + common_list, **common_dict)]))
 
     return path_list
+
+class CloudoooRecipe(GenericBaseRecipe):
+  def install(self):
+    path_list = []
+    common_dict = dict(
+        prepend_path=self.options['prepend-path'],
+    )
+    common_list = [
+           "--paster_path", self.options['ooo-paster'],
+           self.options['configuration-file']
+          ]
+    run_unit_test_path = self.createPythonScript(self.options['run-unit-test'],
+        __name__ + '.test.runUnitTest', [dict(
+        call_list=[self.options['run-unit-test-binary'],
+          ] + common_list, **common_dict)])
+
+    path_list.append(run_unit_test_path)
+    path_list.append(self.createPythonScript(self.options['run-test-suite'],
+        __name__ + '.test.runTestSuite', [dict(
+        call_list=[self.options['run-test-suite-binary'],
+          ], **common_dict)]))
+
+    return path_list
diff --git a/slapos/recipe/erp5_test/test.py b/slapos/recipe/erp5_test/test.py
index 249c871c389ca6fd79ebb8fbf01fbc7a12b3c135..d2c93b876a9c7de45d17eda851e29d65be6c1552 100644
--- a/slapos/recipe/erp5_test/test.py
+++ b/slapos/recipe/erp5_test/test.py
@@ -29,11 +29,16 @@ import sys
 def runTestSuite(args):
   env = os.environ.copy()
   d = args[0]
-  env['OPENSSL_BINARY'] = d['openssl_binary']
-  env['TEST_CA_PATH'] = d['test_ca_path']
-  env['PATH'] = ':'.join([d['prepend_path']] + os.environ['PATH'].split(':'))
-  env['INSTANCE_HOME'] = d['instance_home']
-  env['REAL_INSTANCE_HOME'] = d['instance_home']
+  if 'openssl_binary' in d:
+    env['OPENSSL_BINARY'] = d['openssl_binary']
+  if 'test_ca_path' in d:
+    env['TEST_CA_PATH'] = d['test_ca_path']
+  if 'prepend_path' in d:
+    env['PATH'] = ':'.join([d['prepend_path']] + os.environ.get('PATH', '').split(':'))
+  if 'instance_home' in d:
+    env['INSTANCE_HOME'] = d['instance_home']
+    env['REAL_INSTANCE_HOME'] = d['instance_home']
+
   # Deal with Shebang size limitation
   executable_filepath = d['call_list'][0]
   file_object = open(executable_filepath, 'r')
@@ -51,11 +56,15 @@ def runTestSuite(args):
 def runUnitTest(args):
   env = os.environ.copy()
   d = args[0]
-  env['OPENSSL_BINARY'] = d['openssl_binary']
-  env['TEST_CA_PATH'] = d['test_ca_path']
-  env['PATH'] = ':'.join([d['prepend_path']] + os.environ.get('PATH', '').split(':'))
-  env['INSTANCE_HOME'] = d['instance_home']
-  env['REAL_INSTANCE_HOME'] = d['instance_home']
+  if 'openssl_binary' in d:
+    env['OPENSSL_BINARY'] = d['openssl_binary']
+  if 'test_ca_path' in d:
+    env['TEST_CA_PATH'] = d['test_ca_path']
+  if 'prepend_path' in d:
+    env['PATH'] = ':'.join([d['prepend_path']] + os.environ.get('PATH', '').split(':'))
+  if 'instance_home' in d:
+    env['INSTANCE_HOME'] = d['instance_home']
+    env['REAL_INSTANCE_HOME'] = d['instance_home']
   # Deal with Shebang size limitation
   executable_filepath = d['call_list'][0]
   file_object = open(executable_filepath, 'r')