diff --git a/src/analytics/.gitlab-ci.yml b/src/analytics/.gitlab-ci.yml
index 79e6fb23d9bce98b94c01fc10adcc53c20a95c72..496d8686793e8f2dfc993fef71ea31eba7fdfb18 100644
--- a/src/analytics/.gitlab-ci.yml
+++ b/src/analytics/.gitlab-ci.yml
@@ -86,7 +86,8 @@ unit_test analytics-backend:
       --env KAFKA_CFG_CONTROLLER_LISTENER_NAMES=CONTROLLER
       --env KAFKA_CFG_CONTROLLER_QUORUM_VOTERS=1@kafka:9093
       bitnami/kafka:latest
-    - sleep 20 # Wait for Kafka to start
+    - while ! docker logs kafka 2>&1 | grep -q 'Kafka Server started'; do sleep 1; done
+    - sleep 5 # Give extra time to Kafka to get stabilized
     - docker inspect kafka --format "{{.NetworkSettings.Networks}}"
     - KAFKA_IP=$(docker inspect kafka --format "{{.NetworkSettings.Networks.teraflowbridge.IPAddress}}")
     - echo $KAFKA_IP    
@@ -180,7 +181,8 @@ unit_test analytics-frontend:
       --env KAFKA_CFG_CONTROLLER_LISTENER_NAMES=CONTROLLER
       --env KAFKA_CFG_CONTROLLER_QUORUM_VOTERS=1@kafka:9093
       bitnami/kafka:latest
-    - sleep 20 # Wait for Kafka to start
+    - while ! docker logs kafka 2>&1 | grep -q 'Kafka Server started'; do sleep 1; done
+    - sleep 5 # Give extra time to Kafka to get stabilized
     - docker inspect kafka --format "{{.NetworkSettings.Networks}}"
     - KAFKA_IP=$(docker inspect kafka --format "{{.NetworkSettings.Networks.teraflowbridge.IPAddress}}")
     - echo $KAFKA_IP
diff --git a/src/analytics/frontend/tests/test_frontend.py b/src/analytics/frontend/tests/test_frontend.py
index 7d8a08d3ad2d82758b088a8f83342c2b3929eadd..526fa3c606d3316f141a0eff6a15992a6005db40 100644
--- a/src/analytics/frontend/tests/test_frontend.py
+++ b/src/analytics/frontend/tests/test_frontend.py
@@ -41,7 +41,7 @@ from apscheduler.triggers.interval                       import IntervalTrigger
 
 LOCAL_HOST = '127.0.0.1'
 
-ANALYTICS_FRONTEND_PORT = str(get_service_port_grpc(ServiceNameEnum.ANALYTICS))
+ANALYTICS_FRONTEND_PORT = 10000 + int(get_service_port_grpc(ServiceNameEnum.ANALYTICS))
 os.environ[get_env_var_name(ServiceNameEnum.ANALYTICS, ENVVAR_SUFIX_SERVICE_HOST     )] = str(LOCAL_HOST)
 os.environ[get_env_var_name(ServiceNameEnum.ANALYTICS, ENVVAR_SUFIX_SERVICE_PORT_GRPC)] = str(ANALYTICS_FRONTEND_PORT)
 
diff --git a/src/kpi_value_api/.gitlab-ci.yml b/src/kpi_value_api/.gitlab-ci.yml
index 4c7f9f9f61893aff70f6bb9a57e131093b16f270..55d6c3504703697fce43dce953ec1386c29acd72 100644
--- a/src/kpi_value_api/.gitlab-ci.yml
+++ b/src/kpi_value_api/.gitlab-ci.yml
@@ -76,7 +76,8 @@ unit_test kpi-value-api:
       --env KAFKA_CFG_CONTROLLER_LISTENER_NAMES=CONTROLLER
       --env KAFKA_CFG_CONTROLLER_QUORUM_VOTERS=1@kafka:9093
       bitnami/kafka:latest
-    - sleep 20 # Wait for Kafka to start
+    - while ! docker logs kafka 2>&1 | grep -q 'Kafka Server started'; do sleep 1; done
+    - sleep 5 # Give extra time to Kafka to get stabilized
     - docker inspect kafka --format "{{.NetworkSettings.Networks}}"
     - KAFKA_IP=$(docker inspect kafka --format "{{.NetworkSettings.Networks.teraflowbridge.IPAddress}}")
     - echo $KAFKA_IP
diff --git a/src/kpi_value_writer/.gitlab-ci.yml b/src/kpi_value_writer/.gitlab-ci.yml
index 39c174d756f5c6273b96a74cb2986988d01d3799..4393bf55661fc776cf3ea0afda2ae150a2ba4fda 100644
--- a/src/kpi_value_writer/.gitlab-ci.yml
+++ b/src/kpi_value_writer/.gitlab-ci.yml
@@ -76,7 +76,8 @@ unit_test kpi-value-writer:
       --env KAFKA_CFG_CONTROLLER_LISTENER_NAMES=CONTROLLER
       --env KAFKA_CFG_CONTROLLER_QUORUM_VOTERS=1@kafka:9093
       bitnami/kafka:latest
-    - sleep 20 # Wait for Kafka to start
+    - while ! docker logs kafka 2>&1 | grep -q 'Kafka Server started'; do sleep 1; done
+    - sleep 5 # Give extra time to Kafka to get stabilized
     - docker inspect kafka --format "{{.NetworkSettings.Networks}}"
     - KAFKA_IP=$(docker inspect kafka --format "{{.NetworkSettings.Networks.teraflowbridge.IPAddress}}")
     - echo $KAFKA_IP
diff --git a/src/nbi/.gitlab-ci.yml b/src/nbi/.gitlab-ci.yml
index 141d87c26af3220457c9d3fea42b50192bae21f0..0edeac5e115ee23b9b12eae7821322e09fa57be4 100644
--- a/src/nbi/.gitlab-ci.yml
+++ b/src/nbi/.gitlab-ci.yml
@@ -76,7 +76,8 @@ unit_test nbi:
       --env KAFKA_CFG_CONTROLLER_LISTENER_NAMES=CONTROLLER
       --env KAFKA_CFG_CONTROLLER_QUORUM_VOTERS=1@kafka:9093
       bitnami/kafka:latest
-    - sleep 20 # Wait for Kafka to start
+    - while ! docker logs kafka 2>&1 | grep -q 'Kafka Server started'; do sleep 1; done
+    - sleep 5 # Give extra time to Kafka to get stabilized
     - docker inspect kafka --format "{{.NetworkSettings.Networks}}"
     - KAFKA_IP=$(docker inspect kafka --format "{{.NetworkSettings.Networks.teraflowbridge.IPAddress}}")
     - echo $KAFKA_IP
diff --git a/src/telemetry/.gitlab-ci.yml b/src/telemetry/.gitlab-ci.yml
index 43d7292926fc1d6f566c5d76e8f5ee91837a4c57..35a5a005e5cd22f5b1763a57f962f02a72f924b6 100644
--- a/src/telemetry/.gitlab-ci.yml
+++ b/src/telemetry/.gitlab-ci.yml
@@ -86,7 +86,8 @@ unit_test telemetry-backend:
       --env KAFKA_CFG_CONTROLLER_LISTENER_NAMES=CONTROLLER
       --env KAFKA_CFG_CONTROLLER_QUORUM_VOTERS=1@kafka:9093
       bitnami/kafka:latest
-    - sleep 20 # Wait for Kafka to start
+    - while ! docker logs kafka 2>&1 | grep -q 'Kafka Server started'; do sleep 1; done
+    - sleep 5 # Give extra time to Kafka to get stabilized
     - docker inspect kafka --format "{{.NetworkSettings.Networks}}"
     - KAFKA_IP=$(docker inspect kafka --format "{{.NetworkSettings.Networks.teraflowbridge.IPAddress}}")
     - echo $KAFKA_IP    
@@ -180,7 +181,8 @@ unit_test telemetry-frontend:
       --env KAFKA_CFG_CONTROLLER_LISTENER_NAMES=CONTROLLER
       --env KAFKA_CFG_CONTROLLER_QUORUM_VOTERS=1@kafka:9093
       bitnami/kafka:latest
-    - sleep 20 # Wait for Kafka to start
+    - while ! docker logs kafka 2>&1 | grep -q 'Kafka Server started'; do sleep 1; done
+    - sleep 5 # Give extra time to Kafka to get stabilized
     - docker inspect kafka --format "{{.NetworkSettings.Networks}}"
     - KAFKA_IP=$(docker inspect kafka --format "{{.NetworkSettings.Networks.teraflowbridge.IPAddress}}")
     - echo $KAFKA_IP
diff --git a/src/telemetry/frontend/tests/test_frontend.py b/src/telemetry/frontend/tests/test_frontend.py
index 767a1f73f2ebd73f88c71ac44e8ce87efb37bebd..0e5e7d47f907319c362771359fe243ab50bf6877 100644
--- a/src/telemetry/frontend/tests/test_frontend.py
+++ b/src/telemetry/frontend/tests/test_frontend.py
@@ -37,7 +37,7 @@ from telemetry.frontend.service.TelemetryFrontendServiceServicerImpl import Tele
 
 LOCAL_HOST = '127.0.0.1'
 
-TELEMETRY_FRONTEND_PORT = str(get_service_port_grpc(ServiceNameEnum.TELEMETRY))
+TELEMETRY_FRONTEND_PORT = 10000 + int(get_service_port_grpc(ServiceNameEnum.TELEMETRY))
 os.environ[get_env_var_name(ServiceNameEnum.TELEMETRY, ENVVAR_SUFIX_SERVICE_HOST     )] = str(LOCAL_HOST)
 os.environ[get_env_var_name(ServiceNameEnum.TELEMETRY, ENVVAR_SUFIX_SERVICE_PORT_GRPC)] = str(TELEMETRY_FRONTEND_PORT)