GNM-1003 UnitTests erstellen
diff --git a/emailConfigurationTest/emailTemplates/finishedEmailTemplateTest.txt b/emailConfigurationTest/emailTemplates/finishedEmailTemplateTest.txt
new file mode 100644
index 0000000..d7bc375
--- /dev/null
+++ b/emailConfigurationTest/emailTemplates/finishedEmailTemplateTest.txt
@@ -0,0 +1,15 @@
+To: test1Recipient@test.de, test2Recipient@test.de
+CC: testCCRecipient@test.de, test2CCRecipient@test.de
+Subject: Die Maßnahme "$gridMeasureTitle$" mit Beginn: "$plannedStarttimeFirstSinglemeasure$" und Ende: $plannedEndtimeLastSinglemeasure$ wurde in den Status Maßnahme beendet geändert.
+
+Body:
+TEST
+Sehr geehrte Damen und Herren,
+
+die im Betreff genannte Maßnahme ist über folgenden Link erreichbar:
+
+$directMeasureLink$
+
+Mit freundlichen Grüßen
+
+Ihre Admin-Meister-Team der PTA GmbH
\ No newline at end of file
diff --git a/emailConfigurationTest/emailTemplates/rejectedEmailTemplateTest.txt b/emailConfigurationTest/emailTemplates/rejectedEmailTemplateTest.txt
new file mode 100644
index 0000000..d6e7309
--- /dev/null
+++ b/emailConfigurationTest/emailTemplates/rejectedEmailTemplateTest.txt
@@ -0,0 +1,15 @@
+To: test1Recipient@test.de, test2Recipient@test.de
+CC: testCCRecipient@test.de, test2CCRecipient@test.de
+Subject: Die Maßnahme "$gridMeasureTitle$" mit Beginn: "$plannedStarttimeFirstSinglemeasure$" und Ende: $plannedEndtimeLastSinglemeasure$ wurde zurückgewiesen.
+
+Body:
+TEST
+Sehr geehrte Damen und Herren,
+
+die im Betreff genannte Maßnahme ist über folgenden Link erreichbar:
+
+$directMeasureLink$
+
+Mit freundlichen Grüßen
+
+Ihre Admin-Meister-Team der PTA GmbH
\ No newline at end of file
diff --git a/emailConfigurationTest/mailTemplatesPaths.json b/emailConfigurationTest/mailTemplatesPaths.json
index bfdf746..8305795 100644
--- a/emailConfigurationTest/mailTemplatesPaths.json
+++ b/emailConfigurationTest/mailTemplatesPaths.json
@@ -7,9 +7,9 @@
   "activeEmailTemplate": "",
   "inworkEmailTemplate": "",
   "workfinishedEmailTemplate": "",
-  "finishedEmailTemplate": "",
+  "finishedEmailTemplate": "emailConfigurationTest/emailTemplates/finishedEmailTemplateTest.txt",
   "closedEmailTemplate": "emailConfigurationTest/emailTemplates/closedEmailTemplateTest.txt",
 
   "cancelledEmailTemplate": "",
-  "rejectedEmailTemplate": ""
+  "rejectedEmailTemplate": "emailConfigurationTest/emailTemplates/rejectedEmailTemplateTest.txt"
 }
\ No newline at end of file
diff --git a/src/main/java/org/eclipse/openk/core/bpmn/base/tasks/ServiceTask.java b/src/main/java/org/eclipse/openk/core/bpmn/base/tasks/ServiceTask.java
index e47dfb9..42b08b8 100644
--- a/src/main/java/org/eclipse/openk/core/bpmn/base/tasks/ServiceTask.java
+++ b/src/main/java/org/eclipse/openk/core/bpmn/base/tasks/ServiceTask.java
@@ -15,6 +15,7 @@
 import org.eclipse.openk.core.bpmn.base.ProcessException;
 import org.eclipse.openk.core.bpmn.base.ProcessSubject;
 import org.eclipse.openk.core.exceptions.HttpStatusException;
+import org.eclipse.openk.core.messagebroker.Producer;
 
 public abstract class ServiceTask <T extends ProcessSubject> extends BaseTask<T> {
     private static final Logger logger = Logger.getLogger(ServiceTask.class.getName());
@@ -38,4 +39,8 @@
         enterStep( model );
     }
 
+    public Producer createMessageQueueProducer() throws ProcessException {
+        return new Producer();
+    }
+
 }
diff --git a/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureAppliedMessageQ.java b/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureAppliedMessageQ.java
index 96176e1..24a54cd 100644
--- a/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureAppliedMessageQ.java
+++ b/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureAppliedMessageQ.java
@@ -44,7 +44,7 @@
 
         LOGGER.debug(">>execute: Send Mail on 'beantragt'");
 
-        try (Producer prod = new Producer()) {
+        try (Producer prod = createMessageQueueProducer()) {
             prod.sendMessageAsJson(model.getGridMeasure(), "applied");
         } catch (Exception e) {
             LOGGER.error("Error in ServiceMeasureCanceled onLeaveStep (RabbitMQ)", e);
diff --git a/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureApproved.java b/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureApproved.java
index b6f2546..1aa590d 100644
--- a/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureApproved.java
+++ b/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureApproved.java
@@ -44,7 +44,7 @@
         }
         LOGGER.debug(">>execute: Send Mail on 'genehmigt'");
 
-        try (Producer prod = new Producer()) {
+        try (Producer prod = createMessageQueueProducer()) {
             prod.sendMessageAsJson(model.getGridMeasure(), "approved");
         } catch (Exception e) {
             LOGGER.error("Error in ServiceMeasureApproved onLeaveStep (RabbitMQ)", e);
diff --git a/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureCanceled.java b/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureCanceled.java
index 6a9c836..7657592 100644
--- a/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureCanceled.java
+++ b/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureCanceled.java
@@ -44,7 +44,7 @@
         }
         LOGGER.debug(">>execute: Send Mail on 'storniert'");
 
-        try (Producer prod = new Producer()) {
+        try (Producer prod = createMessageQueueProducer()) {
             prod.sendMessageAsJson(model.getGridMeasure(), "canceled");
         } catch (Exception e) {
             LOGGER.error("Error in ServiceMeasureCanceled onLeaveStep (RabbitMQ)", e);
diff --git a/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureClosed.java b/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureClosed.java
index 999b7da..0d9be5a 100644
--- a/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureClosed.java
+++ b/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureClosed.java
@@ -41,7 +41,7 @@
         }
         LOGGER.debug(">>execute: Send Mail on 'closed'");
 
-        try (Producer prod = new Producer()) {
+        try (Producer prod = createMessageQueueProducer()) {
             prod.sendMessageAsJson(model.getGridMeasure(), "closed");
         } catch (Exception e) {
             LOGGER.error("Error in ServiceMeasureClosed onLeaveStep (RabbitMQ)", e);
diff --git a/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureFinished.java b/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureFinished.java
index db8964b..26910f3 100644
--- a/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureFinished.java
+++ b/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureFinished.java
@@ -30,7 +30,6 @@
     @Override
     protected void onLeaveStep(PlgmProcessSubject model) throws ProcessException {
         try {
-            //Fixme loadRecipients nötig hier?
             EmailManager emailManager = new PgmEmail(model, BackendConfig.getInstance().getEmailTemplatePaths().getFinishedEmailTemplate(), false);
             emailManager.sendEmail();
         } catch (MessagingException e) {
@@ -39,7 +38,7 @@
         }
         LOGGER.debug(">>execute: Send Mail on 'Beendet'");
 
-        try (Producer prod = new Producer()) {
+        try (Producer prod = createMessageQueueProducer()) {
             prod.sendMessageAsJson(model.getGridMeasure(), "finished");
         } catch (Exception e) {
             LOGGER.error("Error in ServiceMeasureFinished onLeaveStep (RabbitMQ)", e);
diff --git a/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureRejected.java b/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureRejected.java
index 893d84c..2941385 100644
--- a/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureRejected.java
+++ b/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureRejected.java
@@ -35,7 +35,6 @@
         try {
             EmailTemplatePaths paths = BackendConfig.getInstance().getEmailTemplatePaths();
             String template = paths.getRejectedEmailTemplate();
-            //Fixme loadRecipients nötig hier?
             EmailManager emailManager = new PgmEmail(model, template, true);
             emailManager.sendEmail();
         } catch (MessagingException e) {
@@ -44,7 +43,7 @@
         }
         LOGGER.debug(">>execute: Send Mail on 'zurückgewiesen'");
 
-        try (Producer prod = new Producer()) {
+        try (Producer prod = createMessageQueueProducer()) {
             prod.sendMessageAsJson(model.getGridMeasure(), "rejected");
         } catch (Exception e) {
             LOGGER.error("Error in ServiceMeasureCanceled onLeaveStep (RabbitMQ)", e);
diff --git a/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureReleased.java b/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureReleased.java
index 1ac77ac..dee089f 100644
--- a/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureReleased.java
+++ b/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureReleased.java
@@ -41,7 +41,7 @@
         }
         LOGGER.debug(">>execute: Send Mail on 'freigegeben'");
 
-        try (Producer prod = new Producer()) {
+        try (Producer prod = createMessageQueueProducer()) {
             prod.sendMessageAsJson(model.getGridMeasure(), "released");
         } catch (Exception e) {
             LOGGER.error("Error in ServiceMeasureReleased onLeaveStep (RabbitMQ)", e);
diff --git a/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureRequested.java b/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureRequested.java
index ea0208a..48aaaf7 100644
--- a/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureRequested.java
+++ b/src/main/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureRequested.java
@@ -40,7 +40,7 @@
         }
         LOGGER.debug(">>execute: Send Mail on 'Angefordert'");
 
-        try (Producer prod = new Producer()) {
+        try (Producer prod = createMessageQueueProducer()) {
             prod.sendMessageAsJson(model.getGridMeasure(), "requested");
         } catch (Exception e) {
             LOGGER.error("Error in ServiceMeasureRequested onLeaveStep (RabbitMQ)", e);
diff --git a/src/main/java/org/eclipse/openk/core/messagebroker/MessageBroker.java b/src/main/java/org/eclipse/openk/core/messagebroker/MessageBroker.java
index e6e39b5..64c3f44 100644
--- a/src/main/java/org/eclipse/openk/core/messagebroker/MessageBroker.java
+++ b/src/main/java/org/eclipse/openk/core/messagebroker/MessageBroker.java
@@ -51,11 +51,6 @@
     }
   }
 
-  public void createQueueIfNotExists(String queue) throws IOException {
-    // queueDeclare​(String queue, boolean durable, boolean exclusive, boolean autoDelete, Map<String, Object> arguments)
-    channel.queueDeclare(queue, true, false, false, null);
-  }
-
   @Override
   public void close() throws Exception {
     this.channel.close();
diff --git a/src/test/java/org/eclipse/openk/TestUtils/BackendConfigTestHelper.java b/src/test/java/org/eclipse/openk/TestUtils/BackendConfigTestHelper.java
deleted file mode 100644
index 014018c..0000000
--- a/src/test/java/org/eclipse/openk/TestUtils/BackendConfigTestHelper.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * *****************************************************************************
- *  Copyright © 2018 PTA GmbH.
- *  All rights reserved. This program and the accompanying materials
- *  are made available under the terms of the Eclipse Public License v1.0
- *  which accompanies this distribution, and is available at
- *
- *      http://www.eclipse.org/legal/epl-v10.html
- *
- * *****************************************************************************
- */
-
-package org.eclipse.openk.TestUtils;
-
-import org.eclipse.openk.PlannedGridMeasuresConfiguration;
-import org.eclipse.openk.api.BackendSettings;
-import org.eclipse.openk.api.BackendSettingsTest;
-import org.eclipse.openk.core.controller.BackendConfig;
-
-public class BackendConfigTestHelper {
-
-  public static void initDefaultBackendConfig(){
-    BackendConfig.resetBackendConfigUnitTests();
-    BackendSettings bs = BackendSettingsTest.getBackendSettings();
-    PlannedGridMeasuresConfiguration measuresConfiguration = new PlannedGridMeasuresConfiguration();
-    measuresConfiguration.setPortalBaseURL("portalBaseUrlMock");
-    BackendConfig.configure(measuresConfiguration, bs);
-  }
-}
diff --git a/src/test/java/org/eclipse/openk/TestUtils/TestHelper.java b/src/test/java/org/eclipse/openk/TestUtils/TestHelper.java
new file mode 100644
index 0000000..bda3393
--- /dev/null
+++ b/src/test/java/org/eclipse/openk/TestUtils/TestHelper.java
@@ -0,0 +1,63 @@
+/*
+ * *****************************************************************************
+ *  Copyright © 2018 PTA GmbH.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *
+ *      http://www.eclipse.org/legal/epl-v10.html
+ *
+ * *****************************************************************************
+ */
+
+package org.eclipse.openk.TestUtils;
+
+import java.io.IOException;
+import org.eclipse.openk.PlannedGridMeasuresConfiguration;
+import org.eclipse.openk.PlannedGridMeasuresConfiguration.RabbitmqConfiguration;
+import org.eclipse.openk.api.BackendSettings;
+import org.eclipse.openk.api.BackendSettingsTest;
+import org.eclipse.openk.api.GridMeasure;
+import org.eclipse.openk.api.mail.EmailTemplatePaths;
+import org.eclipse.openk.core.bpmn.gridmeasure.PlgmProcessSubject;
+import org.eclipse.openk.core.controller.BackendConfig;
+import org.eclipse.openk.core.controller.EmailmanagerTest;
+
+public class TestHelper {
+
+  public static void initDefaultBackendConfig(){
+    BackendConfig.resetBackendConfigUnitTests();
+
+    RabbitmqConfiguration rabbitmqConfiguration = new RabbitmqConfiguration();
+    rabbitmqConfiguration.setUser("admin");
+    rabbitmqConfiguration.setPassword("admin");
+    rabbitmqConfiguration.setExchangeName("opkon-pgm-exchange");
+    rabbitmqConfiguration.setHost("MockHost");
+    rabbitmqConfiguration.setPort("5672");
+
+    BackendSettings bs = BackendSettingsTest.getBackendSettings();
+    PlannedGridMeasuresConfiguration measuresConfiguration = new PlannedGridMeasuresConfiguration();
+    measuresConfiguration.setRabbitmqConfiguration(rabbitmqConfiguration);
+    measuresConfiguration.setPortalBaseURL("portalBaseUrlMock");
+    BackendConfig.configure(measuresConfiguration, bs);
+  }
+
+  public static GridMeasure createGridMeasure(int statusValue) {
+    GridMeasure gm = new GridMeasure();
+    gm.setId(3);
+    gm.setTitle("Yo Title");
+    gm.setStatusId(statusValue);
+    java.time.LocalDateTime ldtdate = java.time.LocalDateTime.parse("2018-04-22T18:00:00");
+    java.sql.Timestamp date = java.sql.Timestamp.valueOf(ldtdate);
+    gm.setPlannedStarttimeFirstSinglemeasure(date);
+    return gm;
+  }
+
+  public static PlgmProcessSubject createProcessSubject(int statusValue){
+    GridMeasure gm = createGridMeasure(statusValue);
+    PlgmProcessSubject subject = PlgmProcessSubject.fromGridMeasure(gm, "fd");
+    subject.setGridMeasure(gm);
+    return subject;
+  }
+
+}
diff --git a/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ConfigDecisionTaskTest.java b/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ConfigDecisionTaskTest.java
index 0f591c9..023e5b5 100644
--- a/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ConfigDecisionTaskTest.java
+++ b/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ConfigDecisionTaskTest.java
@@ -11,7 +11,7 @@
  */
 package org.eclipse.openk.core.bpmn.gridmeasure.tasks;
 
-import org.eclipse.openk.TestUtils.BackendConfigTestHelper;
+import org.eclipse.openk.TestUtils.TestHelper;
 import org.eclipse.openk.core.bpmn.base.ProcessException;
 import org.eclipse.openk.core.bpmn.base.tasks.DecisionTask;
 import org.eclipse.openk.core.controller.BackendConfig;
@@ -26,7 +26,7 @@
 
     @Before
     public void initSettings() {
-        BackendConfigTestHelper.initDefaultBackendConfig();
+        TestHelper.initDefaultBackendConfig();
     }
 
     @Test
diff --git a/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureAppliedMessageQTest.java b/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureAppliedMessageQTest.java
index 9af8e2d..08fc82f 100644
--- a/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureAppliedMessageQTest.java
+++ b/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureAppliedMessageQTest.java
@@ -14,12 +14,16 @@
 package org.eclipse.openk.core.bpmn.gridmeasure.tasks;
 
 import static junit.framework.TestCase.assertNotNull;
+import static org.easymock.EasyMock.expectLastCall;
+import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.verify;
 
 import com.icegreen.greenmail.util.GreenMail;
 import com.icegreen.greenmail.util.ServerSetup;
 import java.io.IOException;
+import org.easymock.EasyMock;
 import org.eclipse.openk.PlannedGridMeasuresConfiguration;
-import org.eclipse.openk.TestUtils.BackendConfigTestHelper;
+import org.eclipse.openk.TestUtils.TestHelper;
 import org.eclipse.openk.api.GridMeasure;
 import org.eclipse.openk.api.mail.EmailTemplatePaths;
 import org.eclipse.openk.core.bpmn.base.ProcessException;
@@ -27,19 +31,34 @@
 import org.eclipse.openk.core.bpmn.gridmeasure.PlgmProcessSubject;
 import org.eclipse.openk.core.controller.BackendConfig;
 import org.eclipse.openk.core.controller.EmailmanagerTest;
+import org.eclipse.openk.core.messagebroker.Producer;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.BeforeClass;
-import org.junit.Ignore;
 import org.junit.Test;
 
 public class ServiceMeasureAppliedMessageQTest {
+
+    private class ServiceMeasureAppliedMessageQTestable extends ServiceMeasureAppliedMessageQ {
+
+        public Producer testProducer;
+
+        public ServiceMeasureAppliedMessageQTestable(String emailTemplatePath) {
+            super(emailTemplatePath);
+        }
+
+        @Override
+        public Producer createMessageQueueProducer() throws ProcessException {
+                return testProducer;
+        }
+    }
+
     private static GreenMail mailServer;
     String templatePath = "emailConfigurationTest/emailTemplates/closedEmailTemplateTest.txt";
 
     @BeforeClass
     public static void beforeAll() throws IOException {
-        BackendConfigTestHelper.initDefaultBackendConfig();
+        TestHelper.initDefaultBackendConfig();
         ServerSetup setup = new ServerSetup(EmailmanagerTest.port() , "localhost", ServerSetup.PROTOCOL_SMTP);
         setup.setServerStartupTimeout(3000);
         mailServer = new GreenMail(setup);
@@ -49,11 +68,9 @@
     public void prepareTests() throws Exception {
         // mock email-configuration
         PlannedGridMeasuresConfiguration.EmailConfiguration emailConfiguration = createEmailConfiguration();
-
-        setTestTemplateEmail(templatePath);
+        setTestTemplateEmail("emailConfigurationTest/emailTemplates/approvedEmailTemplateTest.txt");
         BackendConfig.getInstance().setEmailConfiguration(emailConfiguration);
         mailServer.start();
-
     }
 
     @After
@@ -71,34 +88,36 @@
         assertNotNull(ma);
     }
 
-    @Ignore
     @Test
     public void serviceMeasureSendMailTestOnLeaveStep() throws Exception{
-        GridMeasure gm = new GridMeasure();
-        gm.setId(3);
-        gm.setTitle("Yo Title");
-        gm.setStatusId(PlgmProcessState.CLOSED.getStatusValue());
-        java.time.LocalDateTime ldtdate = java.time.LocalDateTime.parse("2018-04-22T18:00:00");
-        java.sql.Timestamp date = java.sql.Timestamp.valueOf(ldtdate);
-        gm.setPlannedStarttimeFirstSinglemeasure(date);
-        PlgmProcessSubject subject = PlgmProcessSubject.fromGridMeasure(gm, "fd");
-        subject.setGridMeasure(gm);
+        Producer producerMock = EasyMock.createNiceMock(Producer.class);
+        producerMock.sendMessageAsJson(new GridMeasure(),"testRoutingKey");
+        expectLastCall().andVoid().anyTimes();
+        replay(producerMock);
 
-        ServiceMeasureAppliedMessageQ ma = new ServiceMeasureAppliedMessageQ(templatePath);
+        ServiceMeasureAppliedMessageQTestable ma = new ServiceMeasureAppliedMessageQTestable(templatePath);
+        ma.testProducer = producerMock;
+        ma.onLeaveStep(TestHelper.createProcessSubject(PlgmProcessState.CLOSED.getStatusValue()));
+        verify(producerMock);
+    }
 
-        ma.onLeaveStep(subject);
+    @Test (expected = ProcessException.class)
+    public void serviceMeasureSendMailTestOnLeaveStepProducerNull() throws Exception{
+        Producer producerMock = EasyMock.createNiceMock(Producer.class);
+        producerMock.sendMessageAsJson(new GridMeasure(),"testRoutingKey");
+        expectLastCall().andVoid().anyTimes();
+        replay(producerMock);
+
+        ServiceMeasureAppliedMessageQTestable ma = new ServiceMeasureAppliedMessageQTestable(templatePath);
+        ma.testProducer = null;
+        ma.onLeaveStep(TestHelper.createProcessSubject(PlgmProcessState.CLOSED.getStatusValue()));
+        verify(producerMock);
     }
 
     @Test (expected = ProcessException.class)
     public void serviceMeasureSendMailTestOnLeaveStepExceptionIfMailServerNotStarted() throws Exception{
         mailServer.stop();
-        GridMeasure gm = new GridMeasure();
-        gm.setId(3);
-        gm.setTitle("Yo Title");
-        gm.setStatusId(PlgmProcessState.CLOSED.getStatusValue());
-        java.time.LocalDateTime ldtdate = java.time.LocalDateTime.parse("2018-04-22T18:00:00");
-        java.sql.Timestamp date = java.sql.Timestamp.valueOf(ldtdate);
-        gm.setPlannedStarttimeFirstSinglemeasure(date);
+        GridMeasure gm = TestHelper.createGridMeasure(PlgmProcessState.CLOSED.getStatusValue());
         PlgmProcessSubject subject = PlgmProcessSubject.fromGridMeasure(gm, "fd");
         subject.setGridMeasure(gm);
 
diff --git a/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureAppliedTest.java b/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureAppliedTest.java
index bdc8392..a06020c 100644
--- a/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureAppliedTest.java
+++ b/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureAppliedTest.java
@@ -16,7 +16,7 @@
 import com.icegreen.greenmail.util.GreenMail;
 import com.icegreen.greenmail.util.ServerSetup;
 import org.eclipse.openk.PlannedGridMeasuresConfiguration;
-import org.eclipse.openk.TestUtils.BackendConfigTestHelper;
+import org.eclipse.openk.TestUtils.TestHelper;
 import org.eclipse.openk.api.GridMeasure;
 import org.eclipse.openk.api.mail.EmailTemplatePaths;
 import org.eclipse.openk.core.bpmn.base.ProcessException;
@@ -38,7 +38,7 @@
 
     @BeforeClass
     public static void beforeAll() throws IOException {
-        BackendConfigTestHelper.initDefaultBackendConfig();
+        TestHelper.initDefaultBackendConfig();
         ServerSetup setup = new ServerSetup(EmailmanagerTest.port() , "localhost", ServerSetup.PROTOCOL_SMTP);
         setup.setServerStartupTimeout(3000);
         mailServer = new GreenMail(setup);
@@ -89,19 +89,8 @@
     @Test (expected = ProcessException.class)
     public void serviceMeasureAppliedTestOnLeaveStepExceptionIfMailServerNotStarted() throws Exception{
         mailServer.stop();
-        GridMeasure gm = new GridMeasure();
-        gm.setId(3);
-        gm.setTitle("Yo Title");
-        gm.setStatusId(PlgmProcessState.APPLIED.getStatusValue());
-        java.time.LocalDateTime ldtdate = java.time.LocalDateTime.parse("2018-04-22T18:00:00");
-        java.sql.Timestamp date = java.sql.Timestamp.valueOf(ldtdate);
-        gm.setPlannedStarttimeFirstSinglemeasure(date);
-        PlgmProcessSubject subject = PlgmProcessSubject.fromGridMeasure(gm, "fd");
-        subject.setGridMeasure(gm);
-
         ServiceMeasureApplied  ma = new ServiceMeasureApplied();
-
-        ma.onLeaveStep(subject);
+        ma.onLeaveStep(TestHelper.createProcessSubject(PlgmProcessState.APPLIED.getStatusValue()));
     }
 
     private void setTestTemplateEmail(String templatePath) {
diff --git a/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureApprovedTest.java b/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureApprovedTest.java
index c0737f4..335cb51 100644
--- a/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureApprovedTest.java
+++ b/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureApprovedTest.java
@@ -14,30 +14,46 @@
 package org.eclipse.openk.core.bpmn.gridmeasure.tasks;
 
 import static junit.framework.TestCase.assertNotNull;
+import static org.easymock.EasyMock.expectLastCall;
+import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.verify;
 
 import com.icegreen.greenmail.util.GreenMail;
 import com.icegreen.greenmail.util.ServerSetup;
 import java.io.IOException;
+import org.easymock.EasyMock;
 import org.eclipse.openk.PlannedGridMeasuresConfiguration;
-import org.eclipse.openk.TestUtils.BackendConfigTestHelper;
+import org.eclipse.openk.TestUtils.TestHelper;
 import org.eclipse.openk.api.GridMeasure;
 import org.eclipse.openk.api.mail.EmailTemplatePaths;
+import org.eclipse.openk.core.bpmn.base.ProcessException;
 import org.eclipse.openk.core.bpmn.gridmeasure.PlgmProcessState;
 import org.eclipse.openk.core.bpmn.gridmeasure.PlgmProcessSubject;
 import org.eclipse.openk.core.controller.BackendConfig;
 import org.eclipse.openk.core.controller.EmailmanagerTest;
+import org.eclipse.openk.core.messagebroker.Producer;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.BeforeClass;
-import org.junit.Ignore;
 import org.junit.Test;
 
 public class ServiceMeasureApprovedTest {
+
+    private class ServiceMeasureApprovedTestable extends ServiceMeasureApproved {
+
+        public Producer testProducer;
+
+        @Override
+        public Producer createMessageQueueProducer() throws ProcessException {
+            return testProducer;
+        }
+    }
+
     private static GreenMail mailServer;
 
     @BeforeClass
     public static void beforeAll() throws IOException {
-        BackendConfigTestHelper.initDefaultBackendConfig();
+        TestHelper.initDefaultBackendConfig();
         ServerSetup setup = new ServerSetup(EmailmanagerTest.port() , "localhost", ServerSetup.PROTOCOL_SMTP);
         setup.setServerStartupTimeout(3000);
         mailServer = new GreenMail(setup);
@@ -45,7 +61,6 @@
 
     @Before
     public void prepareTests() throws Exception {
-        // BackendConfig.configure("portalBaseUrlMock", null);
         // mock email-configuration
         PlannedGridMeasuresConfiguration.EmailConfiguration emailConfiguration = createEmailConfiguration();
         setTestTemplateEmail("emailConfigurationTest/emailTemplates/approvedEmailTemplateTest.txt");
@@ -68,20 +83,40 @@
         assertNotNull(ma);
     }
 
-    @Ignore
     @Test
     public void serviceMeasureApprovedTestOnLeaveStep() throws Exception{
-        GridMeasure gm = new GridMeasure();
-        gm.setId(3);
-        gm.setTitle("Yo Title");
-        gm.setStatusId(PlgmProcessState.APPROVED.getStatusValue());
-        java.time.LocalDateTime ldtdate = java.time.LocalDateTime.parse("2018-04-22T18:00:00");
-        java.sql.Timestamp date = java.sql.Timestamp.valueOf(ldtdate);
-        gm.setPlannedStarttimeFirstSinglemeasure(date);
+        Producer producerMock = EasyMock.createNiceMock(Producer.class);
+        producerMock.sendMessageAsJson(new GridMeasure(),"testRoutingKey");
+        expectLastCall().andVoid().anyTimes();
+        replay(producerMock);
+
+        ServiceMeasureApprovedTestable ma = new ServiceMeasureApprovedTestable();
+        ma.testProducer = producerMock;
+        ma.onLeaveStep(TestHelper.createProcessSubject(PlgmProcessState.APPROVED.getStatusValue()));
+        verify(producerMock);
+    }
+
+    @Test (expected = ProcessException.class)
+    public void serviceMeasureSendMailTestOnLeaveStepProducerNull() throws Exception{
+        Producer producerMock = EasyMock.createNiceMock(Producer.class);
+        producerMock.sendMessageAsJson(new GridMeasure(),"testRoutingKey");
+        expectLastCall().andVoid().anyTimes();
+        replay(producerMock);
+
+        ServiceMeasureApprovedTestable ma = new ServiceMeasureApprovedTestable();
+        ma.testProducer = null;
+        ma.onLeaveStep(TestHelper.createProcessSubject(PlgmProcessState.CLOSED.getStatusValue()));
+        verify(producerMock);
+    }
+
+    @Test (expected = ProcessException.class)
+    public void serviceMeasureSendMailTestOnLeaveStepExceptionIfMailServerNotStarted() throws Exception{
+        mailServer.stop();
+        GridMeasure gm = TestHelper.createGridMeasure(PlgmProcessState.CLOSED.getStatusValue());
         PlgmProcessSubject subject = PlgmProcessSubject.fromGridMeasure(gm, "fd");
         subject.setGridMeasure(gm);
 
-        ServiceMeasureApproved ma = new ServiceMeasureApproved();
+        ServiceMeasureApprovedTestable ma = new ServiceMeasureApprovedTestable();
 
         ma.onLeaveStep(subject);
     }
diff --git a/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureCanceledTest.java b/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureCanceledTest.java
index 27c478f..2068561 100644
--- a/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureCanceledTest.java
+++ b/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureCanceledTest.java
@@ -14,12 +14,16 @@
 package org.eclipse.openk.core.bpmn.gridmeasure.tasks;
 
 import static junit.framework.TestCase.assertNotNull;
+import static org.easymock.EasyMock.expectLastCall;
+import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.verify;
 
 import com.icegreen.greenmail.util.GreenMail;
 import com.icegreen.greenmail.util.ServerSetup;
 import java.io.IOException;
+import org.easymock.EasyMock;
 import org.eclipse.openk.PlannedGridMeasuresConfiguration;
-import org.eclipse.openk.TestUtils.BackendConfigTestHelper;
+import org.eclipse.openk.TestUtils.TestHelper;
 import org.eclipse.openk.api.GridMeasure;
 import org.eclipse.openk.api.mail.EmailTemplatePaths;
 import org.eclipse.openk.core.bpmn.base.ProcessException;
@@ -27,18 +31,29 @@
 import org.eclipse.openk.core.bpmn.gridmeasure.PlgmProcessSubject;
 import org.eclipse.openk.core.controller.BackendConfig;
 import org.eclipse.openk.core.controller.EmailmanagerTest;
+import org.eclipse.openk.core.messagebroker.Producer;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.BeforeClass;
-import org.junit.Ignore;
 import org.junit.Test;
 
 public class ServiceMeasureCanceledTest {
+
+    private class ServiceMeasureCanceledTestable extends ServiceMeasureCanceled {
+
+        public Producer testProducer;
+
+        @Override
+        public Producer createMessageQueueProducer() throws ProcessException {
+            return testProducer;
+        }
+    }
+
     private static GreenMail mailServer;
 
     @BeforeClass
     public static void beforeAll() throws IOException {
-        BackendConfigTestHelper.initDefaultBackendConfig();
+        TestHelper.initDefaultBackendConfig();
         ServerSetup setup = new ServerSetup(EmailmanagerTest.port() , "localhost", ServerSetup.PROTOCOL_SMTP);
         setup.setServerStartupTimeout(3000);
         mailServer = new GreenMail(setup);
@@ -46,7 +61,6 @@
 
     @Before
     public void prepareTests() throws Exception {
-        // BackendConfig.configure("portalBaseUrlMock", null);
         // mock email-configuration
         PlannedGridMeasuresConfiguration.EmailConfiguration emailConfiguration = createEmailConfiguration();
         setTestTemplateEmail("emailConfigurationTest/emailTemplates/canceledEmailTemplateTest.txt");
@@ -69,40 +83,37 @@
         assertNotNull(mc);
     }
 
-    @Ignore
     @Test
     public void serviceMeasureCanceledTestOnLeaveStep() throws Exception{
-        GridMeasure gm = new GridMeasure();
-        gm.setId(3);
-        gm.setTitle("Yo Title");
-        gm.setStatusId(PlgmProcessState.CANCELED.getStatusValue());
-        java.time.LocalDateTime ldtdate = java.time.LocalDateTime.parse("2018-04-22T18:00:00");
-        java.sql.Timestamp date = java.sql.Timestamp.valueOf(ldtdate);
-        gm.setPlannedStarttimeFirstSinglemeasure(date);
-        PlgmProcessSubject subject = PlgmProcessSubject.fromGridMeasure(gm, "fd");
-        subject.setGridMeasure(gm);
+        Producer producerMock = EasyMock.createNiceMock(Producer.class);
+        producerMock.sendMessageAsJson(new GridMeasure(),"testRoutingKey");
+        expectLastCall().andVoid().anyTimes();
+        replay(producerMock);
 
-        ServiceMeasureCanceled mc = new ServiceMeasureCanceled();
+        ServiceMeasureCanceledTestable ma = new ServiceMeasureCanceledTestable();
+        ma.testProducer = producerMock;
+        ma.onLeaveStep(TestHelper.createProcessSubject(PlgmProcessState.CANCELED.getStatusValue()));
+        verify(producerMock);
+    }
 
-        mc.onLeaveStep(subject);
+    @Test (expected = ProcessException.class)
+    public void serviceMeasureSendMailTestOnLeaveStepProducerNull() throws Exception{
+        Producer producerMock = EasyMock.createNiceMock(Producer.class);
+        producerMock.sendMessageAsJson(new GridMeasure(),"testRoutingKey");
+        expectLastCall().andVoid().anyTimes();
+        replay(producerMock);
+
+        ServiceMeasureCanceledTestable ma = new ServiceMeasureCanceledTestable();
+        ma.testProducer = null;
+        ma.onLeaveStep(TestHelper.createProcessSubject(PlgmProcessState.CLOSED.getStatusValue()));
+        verify(producerMock);
     }
 
     @Test (expected = ProcessException.class)
     public void serviceMeasureCanceledTestOnLeaveStepExceptionIfMailServerNotStarted() throws Exception{
         mailServer.stop();
-        GridMeasure gm = new GridMeasure();
-        gm.setId(3);
-        gm.setTitle("Yo Title");
-        gm.setStatusId(PlgmProcessState.CANCELED.getStatusValue());
-        java.time.LocalDateTime ldtdate = java.time.LocalDateTime.parse("2018-04-22T18:00:00");
-        java.sql.Timestamp date = java.sql.Timestamp.valueOf(ldtdate);
-        gm.setPlannedStarttimeFirstSinglemeasure(date);
-        PlgmProcessSubject subject = PlgmProcessSubject.fromGridMeasure(gm, "fd");
-        subject.setGridMeasure(gm);
-
         ServiceMeasureCanceled mc = new ServiceMeasureCanceled();
-
-        mc.onLeaveStep(subject);
+        mc.onLeaveStep(TestHelper.createProcessSubject(PlgmProcessState.CANCELED.getStatusValue()));
     }
 
     private void setTestTemplateEmail(String templatePath) {
diff --git a/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureClosedTest.java b/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureClosedTest.java
index e4904c9..dc9dce6 100644
--- a/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureClosedTest.java
+++ b/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureClosedTest.java
@@ -14,12 +14,16 @@
 package org.eclipse.openk.core.bpmn.gridmeasure.tasks;
 
 import static junit.framework.TestCase.assertNotNull;
+import static org.easymock.EasyMock.expectLastCall;
+import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.verify;
 
 import com.icegreen.greenmail.util.GreenMail;
 import com.icegreen.greenmail.util.ServerSetup;
 import java.io.IOException;
+import org.easymock.EasyMock;
 import org.eclipse.openk.PlannedGridMeasuresConfiguration;
-import org.eclipse.openk.TestUtils.BackendConfigTestHelper;
+import org.eclipse.openk.TestUtils.TestHelper;
 import org.eclipse.openk.api.GridMeasure;
 import org.eclipse.openk.api.mail.EmailTemplatePaths;
 import org.eclipse.openk.core.bpmn.base.ProcessException;
@@ -27,19 +31,29 @@
 import org.eclipse.openk.core.bpmn.gridmeasure.PlgmProcessSubject;
 import org.eclipse.openk.core.controller.BackendConfig;
 import org.eclipse.openk.core.controller.EmailmanagerTest;
+import org.eclipse.openk.core.messagebroker.Producer;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.BeforeClass;
-import org.junit.Ignore;
 import org.junit.Test;
 
 public class ServiceMeasureClosedTest {
 
+    private class ServiceMeasureClosedTestable extends ServiceMeasureClosed {
+
+        public Producer testProducer;
+
+        @Override
+        public Producer createMessageQueueProducer() throws ProcessException {
+            return testProducer;
+        }
+    }
+
     private static GreenMail mailServer;
 
     @BeforeClass
     public static void beforeAll() throws IOException {
-        BackendConfigTestHelper.initDefaultBackendConfig();
+        TestHelper.initDefaultBackendConfig();
         ServerSetup setup = new ServerSetup(EmailmanagerTest.port() , "localhost", ServerSetup.PROTOCOL_SMTP);
         setup.setServerStartupTimeout(3000);
         mailServer = new GreenMail(setup);
@@ -71,40 +85,37 @@
         assertNotNull(ma);
     }
 
-    @Ignore
     @Test
     public void serviceMeasureClosedTestOnLeaveStep() throws Exception{
-        GridMeasure gm = new GridMeasure();
-        gm.setId(3);
-        gm.setTitle("Yo Title");
-        gm.setStatusId(PlgmProcessState.CLOSED.getStatusValue());
-        java.time.LocalDateTime ldtdate = java.time.LocalDateTime.parse("2018-04-22T18:00:00");
-        java.sql.Timestamp date = java.sql.Timestamp.valueOf(ldtdate);
-        gm.setPlannedStarttimeFirstSinglemeasure(date);
-        PlgmProcessSubject subject = PlgmProcessSubject.fromGridMeasure(gm, "fd");
-        subject.setGridMeasure(gm);
+        Producer producerMock = EasyMock.createNiceMock(Producer.class);
+        producerMock.sendMessageAsJson(new GridMeasure(),"testRoutingKey");
+        expectLastCall().andVoid().anyTimes();
+        replay(producerMock);
 
-        ServiceMeasureClosed  ma = new ServiceMeasureClosed();
+        ServiceMeasureClosedTestable ma = new ServiceMeasureClosedTestable();
+        ma.testProducer = producerMock;
+        ma.onLeaveStep(TestHelper.createProcessSubject(PlgmProcessState.CLOSED.getStatusValue()));
+        verify(producerMock);
+    }
 
-        ma.onLeaveStep(subject);
+    @Test (expected = ProcessException.class)
+    public void serviceMeasureSendMailTestOnLeaveStepProducerNull() throws Exception{
+        Producer producerMock = EasyMock.createNiceMock(Producer.class);
+        producerMock.sendMessageAsJson(new GridMeasure(),"testRoutingKey");
+        expectLastCall().andVoid().anyTimes();
+        replay(producerMock);
+
+        ServiceMeasureClosedTestable ma = new ServiceMeasureClosedTestable();
+        ma.testProducer = null;
+        ma.onLeaveStep(TestHelper.createProcessSubject(PlgmProcessState.CLOSED.getStatusValue()));
+        verify(producerMock);
     }
 
     @Test (expected = ProcessException.class)
     public void serviceMeasureClosedTestOnLeaveStepExceptionIfMailServerNotStarted() throws Exception{
         mailServer.stop();
-        GridMeasure gm = new GridMeasure();
-        gm.setId(3);
-        gm.setTitle("Yo Title");
-        gm.setStatusId(PlgmProcessState.CLOSED.getStatusValue());
-        java.time.LocalDateTime ldtdate = java.time.LocalDateTime.parse("2018-04-22T18:00:00");
-        java.sql.Timestamp date = java.sql.Timestamp.valueOf(ldtdate);
-        gm.setPlannedStarttimeFirstSinglemeasure(date);
-        PlgmProcessSubject subject = PlgmProcessSubject.fromGridMeasure(gm, "fd");
-        subject.setGridMeasure(gm);
-
         ServiceMeasureClosed  ma = new ServiceMeasureClosed();
-
-        ma.onLeaveStep(subject);
+        ma.onLeaveStep(TestHelper.createProcessSubject(PlgmProcessState.CLOSED.getStatusValue()));
     }
 
     private void setTestTemplateEmail(String templatePath) {
diff --git a/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureFinishedTest.java b/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureFinishedTest.java
index 51c551a..7e02232 100644
--- a/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureFinishedTest.java
+++ b/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureFinishedTest.java
@@ -14,14 +14,67 @@
 package org.eclipse.openk.core.bpmn.gridmeasure.tasks;
 
 import static junit.framework.TestCase.assertNotNull;
+import static org.easymock.EasyMock.expectLastCall;
+import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.verify;
 
+import com.icegreen.greenmail.util.GreenMail;
+import com.icegreen.greenmail.util.ServerSetup;
+import java.io.IOException;
+import org.easymock.EasyMock;
+import org.eclipse.openk.PlannedGridMeasuresConfiguration;
+import org.eclipse.openk.PlannedGridMeasuresConfiguration.EmailConfiguration;
+import org.eclipse.openk.TestUtils.TestHelper;
 import org.eclipse.openk.api.GridMeasure;
+import org.eclipse.openk.api.mail.EmailTemplatePaths;
+import org.eclipse.openk.core.bpmn.base.ProcessException;
+import org.eclipse.openk.core.bpmn.gridmeasure.PlgmProcessState;
 import org.eclipse.openk.core.bpmn.gridmeasure.PlgmProcessSubject;
-import org.junit.Ignore;
+import org.eclipse.openk.core.controller.BackendConfig;
+import org.eclipse.openk.core.controller.EmailmanagerTest;
+import org.eclipse.openk.core.messagebroker.Producer;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.BeforeClass;
 import org.junit.Test;
 
 public class ServiceMeasureFinishedTest {
 
+    private class ServiceMeasureFinishedTestable extends ServiceMeasureFinished {
+
+        public Producer testProducer;
+
+        @Override
+        public Producer createMessageQueueProducer() throws ProcessException {
+            return testProducer;
+        }
+    }
+
+    private static GreenMail mailServer;
+
+    @BeforeClass
+    public static void beforeAll() throws IOException {
+        TestHelper.initDefaultBackendConfig();
+        ServerSetup setup = new ServerSetup(EmailmanagerTest.port() , "localhost", ServerSetup.PROTOCOL_SMTP);
+        setup.setServerStartupTimeout(3000);
+        mailServer = new GreenMail(setup);
+    }
+
+    @Before
+    public void prepareTests() throws Exception {
+        // mock email-configuration
+        PlannedGridMeasuresConfiguration.EmailConfiguration emailConfiguration = createEmailConfiguration();
+        setTestTemplateEmail("emailConfigurationTest/emailTemplates/closedEmailTemplateTest.txt");
+        BackendConfig.getInstance().setEmailConfiguration(emailConfiguration);
+        mailServer.start();
+
+    }
+
+    @After
+    public void afterTest() {
+        mailServer.stop();
+    }
+
     @Test
     public void serviceMeasureFinishedTest() throws Exception{
         GridMeasure gm = new GridMeasure();
@@ -32,16 +85,50 @@
         assertNotNull(ma);
     }
 
-    @Ignore
     @Test
     public void serviceMeasureFinishedTestOnLeaveStep() throws Exception{
-        GridMeasure gm = new GridMeasure();
-        gm.setId(3);
-        PlgmProcessSubject subject = PlgmProcessSubject.fromGridMeasure(gm, "fd");
-        subject.setGridMeasure(gm);
+        Producer producerMock = EasyMock.createNiceMock(Producer.class);
+        producerMock.sendMessageAsJson(new GridMeasure(),"testRoutingKey");
+        expectLastCall().andVoid().anyTimes();
+        replay(producerMock);
 
-        ServiceMeasureFinished  ma = new ServiceMeasureFinished();
+        ServiceMeasureFinishedTestable ma = new ServiceMeasureFinishedTestable();
+        ma.testProducer = producerMock;
+        ma.onLeaveStep(TestHelper.createProcessSubject(PlgmProcessState.FINISHED.getStatusValue()));
+        verify(producerMock);
+    }
 
-        ma.onLeaveStep(subject);
+    @Test (expected = ProcessException.class)
+    public void serviceMeasureSendMailTestOnLeaveStepProducerNull() throws Exception{
+        Producer producerMock = EasyMock.createNiceMock(Producer.class);
+        producerMock.sendMessageAsJson(new GridMeasure(),"testRoutingKey");
+        expectLastCall().andVoid().anyTimes();
+        replay(producerMock);
+
+        ServiceMeasureFinishedTestable ma = new ServiceMeasureFinishedTestable();
+        ma.testProducer = null;
+        ma.onLeaveStep(TestHelper.createProcessSubject(PlgmProcessState.CLOSED.getStatusValue()));
+        verify(producerMock);
+    }
+
+    @Test (expected = ProcessException.class)
+    public void serviceMeasureFinishedTestOnLeaveStepExceptionIfMailServerNotStarted() throws Exception{
+        mailServer.stop();
+        ServiceMeasureFinishedTestable ma = new ServiceMeasureFinishedTestable();
+        ma.onLeaveStep(TestHelper.createProcessSubject(PlgmProcessState.FINISHED.getStatusValue()));
+    }
+
+    private void setTestTemplateEmail(String templatePath) {
+        EmailTemplatePaths templatePaths = new EmailTemplatePaths();
+        templatePaths.setFinishedEmailTemplate(templatePath);
+        BackendConfig.getInstance().setEmailTemplatePaths(templatePaths);
+    }
+
+    private PlannedGridMeasuresConfiguration.EmailConfiguration createEmailConfiguration() throws IOException {
+        PlannedGridMeasuresConfiguration.EmailConfiguration emailConfiguration = new PlannedGridMeasuresConfiguration.EmailConfiguration();
+        emailConfiguration.setPort(EmailmanagerTest.port()+"");
+        emailConfiguration.setSmtpHost("localhost");
+        emailConfiguration.setSender("testCaseSender@test.de");
+        return emailConfiguration;
     }
 }
diff --git a/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureRejectedTest.java b/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureRejectedTest.java
index 13703b9..0087f6f 100644
--- a/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureRejectedTest.java
+++ b/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureRejectedTest.java
@@ -14,14 +14,66 @@
 package org.eclipse.openk.core.bpmn.gridmeasure.tasks;
 
 import static junit.framework.TestCase.assertNotNull;
+import static org.easymock.EasyMock.expectLastCall;
+import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.verify;
 
+import com.icegreen.greenmail.util.GreenMail;
+import com.icegreen.greenmail.util.ServerSetup;
+import java.io.IOException;
+import org.easymock.EasyMock;
+import org.eclipse.openk.PlannedGridMeasuresConfiguration;
+import org.eclipse.openk.TestUtils.TestHelper;
 import org.eclipse.openk.api.GridMeasure;
+import org.eclipse.openk.api.mail.EmailTemplatePaths;
+import org.eclipse.openk.core.bpmn.base.ProcessException;
+import org.eclipse.openk.core.bpmn.gridmeasure.PlgmProcessState;
 import org.eclipse.openk.core.bpmn.gridmeasure.PlgmProcessSubject;
-import org.junit.Ignore;
+import org.eclipse.openk.core.controller.BackendConfig;
+import org.eclipse.openk.core.controller.EmailmanagerTest;
+import org.eclipse.openk.core.messagebroker.Producer;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.BeforeClass;
 import org.junit.Test;
 
 public class ServiceMeasureRejectedTest {
 
+    private class ServiceMeasureRejectedTestable extends ServiceMeasureRejected {
+
+        public Producer testProducer;
+
+        @Override
+        public Producer createMessageQueueProducer() throws ProcessException {
+            return testProducer;
+        }
+    }
+
+    private static GreenMail mailServer;
+
+    @BeforeClass
+    public static void beforeAll() throws IOException {
+        TestHelper.initDefaultBackendConfig();
+        ServerSetup setup = new ServerSetup(EmailmanagerTest.port() , "localhost", ServerSetup.PROTOCOL_SMTP);
+        setup.setServerStartupTimeout(3000);
+        mailServer = new GreenMail(setup);
+    }
+
+    @Before
+    public void prepareTests() throws Exception {
+        // mock email-configuration
+        PlannedGridMeasuresConfiguration.EmailConfiguration emailConfiguration = createEmailConfiguration();
+        setTestTemplateEmail("emailConfigurationTest/emailTemplates/rejectedEmailTemplateTest.txt");
+        BackendConfig.getInstance().setEmailConfiguration(emailConfiguration);
+        mailServer.start();
+
+    }
+
+    @After
+    public void afterTest() {
+        mailServer.stop();
+    }
+
     @Test
     public void serviceMeasureRejectedTest() throws Exception{
         GridMeasure gm = new GridMeasure();
@@ -32,16 +84,50 @@
         assertNotNull(ma);
     }
 
-    @Ignore
     @Test
     public void serviceMeasureRejectedTestOnLeaveStep() throws Exception{
-        GridMeasure gm = new GridMeasure();
-        gm.setId(3);
-        PlgmProcessSubject subject = PlgmProcessSubject.fromGridMeasure(gm, "fd");
-        subject.setGridMeasure(gm);
+        Producer producerMock = EasyMock.createNiceMock(Producer.class);
+        producerMock.sendMessageAsJson(new GridMeasure(),"testRoutingKey");
+        expectLastCall().andVoid().anyTimes();
+        replay(producerMock);
 
-        ServiceMeasureRejected ma = new ServiceMeasureRejected();
+        ServiceMeasureRejectedTestable ma = new ServiceMeasureRejectedTestable();
+        ma.testProducer = producerMock;
+        ma.onLeaveStep(TestHelper.createProcessSubject(PlgmProcessState.REJECTED.getStatusValue()));
+        verify(producerMock);
+    }
 
-        ma.onLeaveStep(subject);
+    @Test (expected = ProcessException.class)
+    public void serviceMeasureSendMailTestOnLeaveStepProducerNull() throws Exception{
+        Producer producerMock = EasyMock.createNiceMock(Producer.class);
+        producerMock.sendMessageAsJson(new GridMeasure(),"testRoutingKey");
+        expectLastCall().andVoid().anyTimes();
+        replay(producerMock);
+
+        ServiceMeasureRejectedTestable ma = new ServiceMeasureRejectedTestable();
+        ma.testProducer = null;
+        ma.onLeaveStep(TestHelper.createProcessSubject(PlgmProcessState.CLOSED.getStatusValue()));
+        verify(producerMock);
+    }
+
+    @Test (expected = ProcessException.class)
+    public void serviceMeasureRejectedTestOnLeaveStepExceptionIfMailServerNotStarted() throws Exception{
+        mailServer.stop();
+        ServiceMeasureRejectedTestable ma = new ServiceMeasureRejectedTestable();
+        ma.onLeaveStep(TestHelper.createProcessSubject(PlgmProcessState.REJECTED.getStatusValue()));
+    }
+
+    private void setTestTemplateEmail(String templatePath) {
+        EmailTemplatePaths templatePaths = new EmailTemplatePaths();
+        templatePaths.setRejectedEmailTemplate(templatePath);
+        BackendConfig.getInstance().setEmailTemplatePaths(templatePaths);
+    }
+
+    private PlannedGridMeasuresConfiguration.EmailConfiguration createEmailConfiguration() throws IOException {
+        PlannedGridMeasuresConfiguration.EmailConfiguration emailConfiguration = new PlannedGridMeasuresConfiguration.EmailConfiguration();
+        emailConfiguration.setPort(EmailmanagerTest.port()+"");
+        emailConfiguration.setSmtpHost("localhost");
+        emailConfiguration.setSender("testCaseSender@test.de");
+        return emailConfiguration;
     }
 }
diff --git a/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureReleasedTest.java b/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureReleasedTest.java
index ccf9d05..3eabd21 100644
--- a/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureReleasedTest.java
+++ b/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureReleasedTest.java
@@ -14,12 +14,16 @@
 package org.eclipse.openk.core.bpmn.gridmeasure.tasks;
 
 import static junit.framework.TestCase.assertNotNull;
+import static org.easymock.EasyMock.expectLastCall;
+import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.verify;
 
 import com.icegreen.greenmail.util.GreenMail;
 import com.icegreen.greenmail.util.ServerSetup;
 import java.io.IOException;
+import org.easymock.EasyMock;
 import org.eclipse.openk.PlannedGridMeasuresConfiguration;
-import org.eclipse.openk.TestUtils.BackendConfigTestHelper;
+import org.eclipse.openk.TestUtils.TestHelper;
 import org.eclipse.openk.api.GridMeasure;
 import org.eclipse.openk.api.mail.EmailTemplatePaths;
 import org.eclipse.openk.core.bpmn.base.ProcessException;
@@ -27,19 +31,29 @@
 import org.eclipse.openk.core.bpmn.gridmeasure.PlgmProcessSubject;
 import org.eclipse.openk.core.controller.BackendConfig;
 import org.eclipse.openk.core.controller.EmailmanagerTest;
+import org.eclipse.openk.core.messagebroker.Producer;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.BeforeClass;
-import org.junit.Ignore;
 import org.junit.Test;
 
 public class ServiceMeasureReleasedTest {
 
+    private class ServiceMeasureReleasedTestable extends ServiceMeasureReleased {
+
+        public Producer testProducer;
+
+        @Override
+        public Producer createMessageQueueProducer() throws ProcessException {
+            return testProducer;
+        }
+    }
+
     private static GreenMail mailServer;
 
     @BeforeClass
     public static void beforeAll() throws IOException {
-        BackendConfigTestHelper.initDefaultBackendConfig();
+        TestHelper.initDefaultBackendConfig();
         ServerSetup setup = new ServerSetup(EmailmanagerTest.port() , "localhost", ServerSetup.PROTOCOL_SMTP);
         setup.setServerStartupTimeout(3000);
         mailServer = new GreenMail(setup);
@@ -70,41 +84,38 @@
         assertNotNull(ma);
     }
 
-    @Ignore
     @Test
     public void serviceMeasureReleasedTestOnLeaveStep() throws Exception{
-        GridMeasure gm = new GridMeasure();
-        gm.setId(3);
-        gm.setTitle("Yo Title");
-        gm.setStatusId(PlgmProcessState.APPLIED.getStatusValue());
-        java.time.LocalDateTime ldtdate = java.time.LocalDateTime.parse("2018-04-22T18:00:00");
-        java.sql.Timestamp date = java.sql.Timestamp.valueOf(ldtdate);
-        gm.setPlannedStarttimeFirstSinglemeasure(date);
-        PlgmProcessSubject subject = PlgmProcessSubject.fromGridMeasure(gm, "fd");
-        subject.setGridMeasure(gm);
+        Producer producerMock = EasyMock.createNiceMock(Producer.class);
+        producerMock.sendMessageAsJson(new GridMeasure(),"testRoutingKey");
+        expectLastCall().andVoid().anyTimes();
+        replay(producerMock);
 
+        ServiceMeasureReleasedTestable ma = new ServiceMeasureReleasedTestable();
+        ma.testProducer = producerMock;
+        ma.onLeaveStep(TestHelper.createProcessSubject(PlgmProcessState.RELEASED.getStatusValue()));
+        verify(producerMock);
+    }
 
-        ServiceMeasureReleased  ma = new ServiceMeasureReleased();
+    @Test (expected = ProcessException.class)
+    public void serviceMeasureSendMailTestOnLeaveStepProducerNull() throws Exception{
+        Producer producerMock = EasyMock.createNiceMock(Producer.class);
+        producerMock.sendMessageAsJson(new GridMeasure(),"testRoutingKey");
+        expectLastCall().andVoid().anyTimes();
+        replay(producerMock);
 
-        ma.onLeaveStep(subject);
+        ServiceMeasureReleasedTestable ma = new ServiceMeasureReleasedTestable();
+        ma.testProducer = null;
+        ma.onLeaveStep(TestHelper.createProcessSubject(PlgmProcessState.CLOSED.getStatusValue()));
+        verify(producerMock);
     }
 
     @Test (expected = ProcessException.class)
     public void serviceMeasureReleasedTestOnLeaveStepExceptionIfMailServerNotStarted() throws Exception{
         mailServer.stop();
-        GridMeasure gm = new GridMeasure();
-        gm.setId(3);
-        gm.setTitle("Yo Title");
-        gm.setStatusId(PlgmProcessState.RELEASED.getStatusValue());
-        java.time.LocalDateTime ldtdate = java.time.LocalDateTime.parse("2018-04-22T18:00:00");
-        java.sql.Timestamp date = java.sql.Timestamp.valueOf(ldtdate);
-        gm.setPlannedStarttimeFirstSinglemeasure(date);
-        PlgmProcessSubject subject = PlgmProcessSubject.fromGridMeasure(gm, "fd");
-        subject.setGridMeasure(gm);
-
         ServiceMeasureReleased  ma = new ServiceMeasureReleased();
 
-        ma.onLeaveStep(subject);
+        ma.onLeaveStep(TestHelper.createProcessSubject(PlgmProcessState.RELEASED.getStatusValue()));
     }
 
     private void setTestTemplateEmail(String templatePath) {
diff --git a/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureRequestedTest.java b/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureRequestedTest.java
index d9e82d2..a0c4ebf 100644
--- a/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureRequestedTest.java
+++ b/src/test/java/org/eclipse/openk/core/bpmn/gridmeasure/tasks/ServiceMeasureRequestedTest.java
@@ -14,12 +14,16 @@
 package org.eclipse.openk.core.bpmn.gridmeasure.tasks;
 
 import static junit.framework.TestCase.assertNotNull;
+import static org.easymock.EasyMock.expectLastCall;
+import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.verify;
 
 import com.icegreen.greenmail.util.GreenMail;
 import com.icegreen.greenmail.util.ServerSetup;
 import java.io.IOException;
+import org.easymock.EasyMock;
 import org.eclipse.openk.PlannedGridMeasuresConfiguration;
-import org.eclipse.openk.TestUtils.BackendConfigTestHelper;
+import org.eclipse.openk.TestUtils.TestHelper;
 import org.eclipse.openk.api.GridMeasure;
 import org.eclipse.openk.api.mail.EmailTemplatePaths;
 import org.eclipse.openk.core.bpmn.base.ProcessException;
@@ -27,19 +31,29 @@
 import org.eclipse.openk.core.bpmn.gridmeasure.PlgmProcessSubject;
 import org.eclipse.openk.core.controller.BackendConfig;
 import org.eclipse.openk.core.controller.EmailmanagerTest;
+import org.eclipse.openk.core.messagebroker.Producer;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.BeforeClass;
-import org.junit.Ignore;
 import org.junit.Test;
 
 public class ServiceMeasureRequestedTest {
 
+    private class ServiceMeasureRequestedTestable extends ServiceMeasureRequested {
+
+        public Producer testProducer;
+
+        @Override
+        public Producer createMessageQueueProducer() throws ProcessException {
+            return testProducer;
+        }
+    }
+
     private static GreenMail mailServer;
 
     @BeforeClass
     public static void beforeAll() throws IOException {
-        BackendConfigTestHelper.initDefaultBackendConfig();
+        TestHelper.initDefaultBackendConfig();
         ServerSetup setup = new ServerSetup(EmailmanagerTest.port() , "localhost", ServerSetup.PROTOCOL_SMTP);
         setup.setServerStartupTimeout(3000);
         mailServer = new GreenMail(setup);
@@ -68,41 +82,38 @@
         assertNotNull(ma);
     }
 
-    @Ignore
     @Test
-    public void serviceMeasureRequestedTestOnLeaveStep() throws Exception{
-        GridMeasure gm = new GridMeasure();
-        gm.setId(3);
-        gm.setTitle("Yo Title");
-        gm.setStatusId(PlgmProcessState.APPLIED.getStatusValue());
-        java.time.LocalDateTime ldtdate = java.time.LocalDateTime.parse("2018-04-22T18:00:00");
-        java.sql.Timestamp date = java.sql.Timestamp.valueOf(ldtdate);
-        gm.setPlannedStarttimeFirstSinglemeasure(date);
-        PlgmProcessSubject subject = PlgmProcessSubject.fromGridMeasure(gm, "fd");
-        subject.setGridMeasure(gm);
+    public void serviceMeasureReleasedTestOnLeaveStep() throws Exception{
+        Producer producerMock = EasyMock.createNiceMock(Producer.class);
+        producerMock.sendMessageAsJson(new GridMeasure(),"testRoutingKey");
+        expectLastCall().andVoid().anyTimes();
+        replay(producerMock);
 
+        ServiceMeasureRequestedTestable ma = new ServiceMeasureRequestedTestable();
+        ma.testProducer = producerMock;
+        ma.onLeaveStep(TestHelper.createProcessSubject(PlgmProcessState.REQUESTED.getStatusValue()));
+        verify(producerMock);
+    }
 
-        ServiceMeasureRequested  ma = new ServiceMeasureRequested();
+    @Test (expected = ProcessException.class)
+    public void serviceMeasureSendMailTestOnLeaveStepProducerNull() throws Exception{
+        Producer producerMock = EasyMock.createNiceMock(Producer.class);
+        producerMock.sendMessageAsJson(new GridMeasure(),"testRoutingKey");
+        expectLastCall().andVoid().anyTimes();
+        replay(producerMock);
 
-        ma.onLeaveStep(subject);
+        ServiceMeasureRequestedTestable ma = new ServiceMeasureRequestedTestable();
+        ma.testProducer = null;
+        ma.onLeaveStep(TestHelper.createProcessSubject(PlgmProcessState.CLOSED.getStatusValue()));
+        verify(producerMock);
     }
 
     @Test (expected = ProcessException.class)
     public void serviceMeasureRequestedTestOnLeaveStepExceptionIfMailServerNotStarted() throws Exception{
         mailServer.stop();
-        GridMeasure gm = new GridMeasure();
-        gm.setId(3);
-        gm.setTitle("Yo Title");
-        gm.setStatusId(PlgmProcessState.RELEASED.getStatusValue());
-        java.time.LocalDateTime ldtdate = java.time.LocalDateTime.parse("2018-04-22T18:00:00");
-        java.sql.Timestamp date = java.sql.Timestamp.valueOf(ldtdate);
-        gm.setPlannedStarttimeFirstSinglemeasure(date);
-        PlgmProcessSubject subject = PlgmProcessSubject.fromGridMeasure(gm, "fd");
-        subject.setGridMeasure(gm);
-
         ServiceMeasureRequested  ma = new ServiceMeasureRequested();
 
-        ma.onLeaveStep(subject);
+        ma.onLeaveStep(TestHelper.createProcessSubject(PlgmProcessState.REQUESTED.getStatusValue()));
     }
 
     private void setTestTemplateEmail(String templatePath) {
diff --git a/src/test/java/org/eclipse/openk/core/controller/EmailmanagerTest.java b/src/test/java/org/eclipse/openk/core/controller/EmailmanagerTest.java
index 6f441f4..65a7e37 100644
--- a/src/test/java/org/eclipse/openk/core/controller/EmailmanagerTest.java
+++ b/src/test/java/org/eclipse/openk/core/controller/EmailmanagerTest.java
@@ -16,7 +16,7 @@
 import com.icegreen.greenmail.util.ServerSetup;
 import org.apache.commons.lang3.time.DateUtils;
 import org.eclipse.openk.PlannedGridMeasuresConfiguration.EmailConfiguration;
-import org.eclipse.openk.TestUtils.BackendConfigTestHelper;
+import org.eclipse.openk.TestUtils.TestHelper;
 import org.eclipse.openk.api.GridMeasure;
 import org.eclipse.openk.api.mail.EmailTemplatePaths;
 import org.eclipse.openk.core.bpmn.gridmeasure.PlgmProcessSubject;
@@ -63,7 +63,7 @@
 
     @Before
     public void prepareTests() throws Exception {
-        BackendConfigTestHelper.initDefaultBackendConfig();
+        TestHelper.initDefaultBackendConfig();
         // mock email-configuration
         EmailConfiguration emailConfiguration = createEmailConfiguration();
         BackendConfig.getInstance().setEmailConfiguration(emailConfiguration);
diff --git a/src/test/java/org/eclipse/openk/core/controller/GridConfigButtonManipulatorTest.java b/src/test/java/org/eclipse/openk/core/controller/GridConfigButtonManipulatorTest.java
index b8ff6d4..55576a0 100644
--- a/src/test/java/org/eclipse/openk/core/controller/GridConfigButtonManipulatorTest.java
+++ b/src/test/java/org/eclipse/openk/core/controller/GridConfigButtonManipulatorTest.java
@@ -11,7 +11,7 @@
  */
 package org.eclipse.openk.core.controller;
 
-import org.eclipse.openk.TestUtils.BackendConfigTestHelper;
+import org.eclipse.openk.TestUtils.TestHelper;
 import org.eclipse.openk.api.BackendSettings;
 import org.eclipse.openk.common.util.ResourceLoaderBase;
 import org.junit.Before;
@@ -24,7 +24,7 @@
 
     @Before
     public void initSettings() {
-        BackendConfigTestHelper.initDefaultBackendConfig();
+        TestHelper.initDefaultBackendConfig();
     }
 
     @Test
diff --git a/src/test/java/org/eclipse/openk/core/controller/GridMeasureBackendControllerTest.java b/src/test/java/org/eclipse/openk/core/controller/GridMeasureBackendControllerTest.java
index 3523492..961b7f9 100644
--- a/src/test/java/org/eclipse/openk/core/controller/GridMeasureBackendControllerTest.java
+++ b/src/test/java/org/eclipse/openk/core/controller/GridMeasureBackendControllerTest.java
@@ -13,11 +13,9 @@
 
 import org.apache.http.HttpStatus;
 import org.easymock.EasyMock;
-import org.easymock.internal.MocksControl;
 import org.eclipse.openk.PlannedGridMeasuresConfiguration.EmailConfiguration;
-import org.eclipse.openk.TestUtils.BackendConfigTestHelper;
+import org.eclipse.openk.TestUtils.TestHelper;
 import org.eclipse.openk.api.Document;
-import org.eclipse.openk.api.FilterObject;
 import org.eclipse.openk.api.GridMeasure;
 import org.eclipse.openk.api.HGridMeasure;
 import org.eclipse.openk.api.Lock;
@@ -49,7 +47,6 @@
 import org.eclipse.openk.db.model.TblSteps;
 import org.eclipse.openk.resources.PlannedGridMeasuresResource;
 import org.junit.Before;
-import org.junit.Ignore;
 import org.junit.Test;
 import org.powermock.api.easymock.PowerMock;
 import org.powermock.reflect.Whitebox;
@@ -84,7 +81,7 @@
 
     @Before
     public void prepareTests() throws Exception {
-        BackendConfigTestHelper.initDefaultBackendConfig();
+        TestHelper.initDefaultBackendConfig();
 
         // mock email-configuration
         EmailConfiguration emailConfiguration = new EmailConfiguration();
diff --git a/src/test/java/org/eclipse/openk/core/controller/MasterDataBackendControllerTest.java b/src/test/java/org/eclipse/openk/core/controller/MasterDataBackendControllerTest.java
index 9f93cd6..26f79b9 100644
--- a/src/test/java/org/eclipse/openk/core/controller/MasterDataBackendControllerTest.java
+++ b/src/test/java/org/eclipse/openk/core/controller/MasterDataBackendControllerTest.java
@@ -26,15 +26,13 @@
 import javax.persistence.EntityTransaction;
 import org.apache.http.HttpStatus;
 import org.easymock.EasyMock;
-import org.eclipse.openk.PlannedGridMeasuresConfiguration;
-import org.eclipse.openk.TestUtils.BackendConfigTestHelper;
+import org.eclipse.openk.TestUtils.TestHelper;
 import org.eclipse.openk.api.Branch;
 import org.eclipse.openk.api.BranchLevel;
 import org.eclipse.openk.api.CostCenter;
 import org.eclipse.openk.api.GmStatus;
 import org.eclipse.openk.api.UserDepartment;
 import org.eclipse.openk.api.UserSettings;
-import org.eclipse.openk.api.mail.EmailTemplatePaths;
 import org.eclipse.openk.common.mapper.generic.GenericApiToDbMapper;
 import org.eclipse.openk.core.exceptions.HttpStatusException;
 import org.eclipse.openk.db.dao.AutoCloseEntityManager;
@@ -61,7 +59,7 @@
 
     @Before
     public void prepareTests() throws Exception {
-        BackendConfigTestHelper.initDefaultBackendConfig();
+        TestHelper.initDefaultBackendConfig();
 
         //mock email-configuration
 //        PlannedGridMeasuresConfiguration.EmailConfiguration emailConfiguration = new PlannedGridMeasuresConfiguration.EmailConfiguration();
diff --git a/src/test/java/org/eclipse/openk/core/controller/PgmEmailTest.java b/src/test/java/org/eclipse/openk/core/controller/PgmEmailTest.java
index 48ff03c..5f8f8fc 100644
--- a/src/test/java/org/eclipse/openk/core/controller/PgmEmailTest.java
+++ b/src/test/java/org/eclipse/openk/core/controller/PgmEmailTest.java
@@ -13,7 +13,7 @@
 
 import org.easymock.EasyMock;
 import org.eclipse.openk.PlannedGridMeasuresConfiguration;
-import org.eclipse.openk.TestUtils.BackendConfigTestHelper;
+import org.eclipse.openk.TestUtils.TestHelper;
 import org.eclipse.openk.core.bpmn.gridmeasure.PlgmProcessSubject;
 import org.eclipse.openk.core.communication.RestServiceWrapper;
 import org.eclipse.openk.core.exceptions.HttpStatusException;
@@ -104,7 +104,7 @@
         emaily.setSender("Sendros@sandbank.se");
         emaily.setSmtpHost("Horst");
 
-        BackendConfigTestHelper.initDefaultBackendConfig();
+        TestHelper.initDefaultBackendConfig();
         BackendConfig.getInstance().setEmailConfiguration(emaily);
         PlgmProcessSubject model = PlgmProcessSubject.fromGridMeasure(null, "_fd");
         model.setJwt("Bear Haferkamp");
diff --git a/src/test/java/org/eclipse/openk/core/controller/TokenManagerTest.java b/src/test/java/org/eclipse/openk/core/controller/TokenManagerTest.java
index 177b027..2ce8f54 100644
--- a/src/test/java/org/eclipse/openk/core/controller/TokenManagerTest.java
+++ b/src/test/java/org/eclipse/openk/core/controller/TokenManagerTest.java
@@ -11,7 +11,7 @@
 */
 package org.eclipse.openk.core.controller;
 
-import org.eclipse.openk.TestUtils.BackendConfigTestHelper;
+import org.eclipse.openk.TestUtils.TestHelper;
 import org.eclipse.openk.auth2.model.JwtPayload;
 import org.eclipse.openk.auth2.util.JwtHelper;
 import org.eclipse.openk.common.Globals;
@@ -39,7 +39,7 @@
 
     @Before
 	public void init() {
-		BackendConfigTestHelper.initDefaultBackendConfig();
+		TestHelper.initDefaultBackendConfig();
 		this.tokenManager = TokenManager.getInstance();
 	}
 
diff --git a/src/test/java/org/eclipse/openk/health/MailConfigurationHealthCheckTest.java b/src/test/java/org/eclipse/openk/health/MailConfigurationHealthCheckTest.java
index c2f73cf..7f9fc49 100644
--- a/src/test/java/org/eclipse/openk/health/MailConfigurationHealthCheckTest.java
+++ b/src/test/java/org/eclipse/openk/health/MailConfigurationHealthCheckTest.java
@@ -16,7 +16,7 @@
 import com.icegreen.greenmail.util.GreenMail;
 import com.icegreen.greenmail.util.ServerSetup;
 import org.eclipse.openk.PlannedGridMeasuresConfiguration;
-import org.eclipse.openk.TestUtils.BackendConfigTestHelper;
+import org.eclipse.openk.TestUtils.TestHelper;
 import org.eclipse.openk.api.mail.EmailTemplatePaths;
 import org.eclipse.openk.core.controller.BackendConfig;
 import org.eclipse.openk.core.controller.EmailmanagerTest;
@@ -39,7 +39,7 @@
 
     @BeforeClass
     public static void beforeAll() throws IOException {
-        BackendConfigTestHelper.initDefaultBackendConfig();
+        TestHelper.initDefaultBackendConfig();
         ServerSetup setup = new ServerSetup(EmailmanagerTest.port() , "localhost", ServerSetup.PROTOCOL_SMTP);
         setup.setServerStartupTimeout(3000);
         mailServer = new GreenMail(setup);
diff --git a/src/test/java/org/eclipse/openk/health/MailServerPresentHealthCheckTest.java b/src/test/java/org/eclipse/openk/health/MailServerPresentHealthCheckTest.java
index 92ecc14..cb55b13 100644
--- a/src/test/java/org/eclipse/openk/health/MailServerPresentHealthCheckTest.java
+++ b/src/test/java/org/eclipse/openk/health/MailServerPresentHealthCheckTest.java
@@ -16,7 +16,7 @@
 import com.icegreen.greenmail.util.GreenMail;
 import com.icegreen.greenmail.util.ServerSetup;
 import org.eclipse.openk.PlannedGridMeasuresConfiguration;
-import org.eclipse.openk.TestUtils.BackendConfigTestHelper;
+import org.eclipse.openk.TestUtils.TestHelper;
 import org.eclipse.openk.api.mail.EmailTemplatePaths;
 import org.eclipse.openk.core.controller.BackendConfig;
 import org.eclipse.openk.core.controller.EmailmanagerTest;
@@ -47,7 +47,7 @@
 
     @Before
     public void prepareTests() throws Exception {
-        BackendConfigTestHelper.initDefaultBackendConfig();
+        TestHelper.initDefaultBackendConfig();
         // mock email-configuration
         PlannedGridMeasuresConfiguration.EmailConfiguration emailConfiguration = createEmailConfiguration();
 
diff --git a/src/test/java/org/eclipse/openk/resources/MasterDataResourceTest.java b/src/test/java/org/eclipse/openk/resources/MasterDataResourceTest.java
index 230b60b..4c0c03d 100644
--- a/src/test/java/org/eclipse/openk/resources/MasterDataResourceTest.java
+++ b/src/test/java/org/eclipse/openk/resources/MasterDataResourceTest.java
@@ -12,7 +12,7 @@
 package org.eclipse.openk.resources;
 
 import org.easymock.EasyMock;
-import org.eclipse.openk.TestUtils.BackendConfigTestHelper;
+import org.eclipse.openk.TestUtils.TestHelper;
 import org.eclipse.openk.api.GmStatus;
 import org.eclipse.openk.api.UserSettings;
 import org.eclipse.openk.core.controller.MasterDataBackendController;
@@ -33,7 +33,7 @@
 
     @Before
     public void createGridMeasure() {
-        BackendConfigTestHelper.initDefaultBackendConfig();
+        TestHelper.initDefaultBackendConfig();
         TokenManager.getInstance();
     }
 
diff --git a/src/test/java/org/eclipse/openk/resources/PlannedGridMeasuresResourcesTest.java b/src/test/java/org/eclipse/openk/resources/PlannedGridMeasuresResourcesTest.java
index 6872118..49aef0a 100644
--- a/src/test/java/org/eclipse/openk/resources/PlannedGridMeasuresResourcesTest.java
+++ b/src/test/java/org/eclipse/openk/resources/PlannedGridMeasuresResourcesTest.java
@@ -11,7 +11,7 @@
  */
 package org.eclipse.openk.resources;
 
-import org.eclipse.openk.TestUtils.BackendConfigTestHelper;
+import org.eclipse.openk.TestUtils.TestHelper;
 import org.eclipse.openk.api.GridMeasure;
 import org.eclipse.openk.common.Globals;
 import org.eclipse.openk.core.controller.BaseWebService;
@@ -32,7 +32,7 @@
 
     @Before
     public void createGridMeasure() {
-        BackendConfigTestHelper.initDefaultBackendConfig();
+        TestHelper.initDefaultBackendConfig();
         TokenManager.getInstance();
 
         gm.setId(4);