diff --git a/test_set/cvp-sanity/tests/test_drivetrain.py b/test_set/cvp-sanity/tests/test_drivetrain.py
index ba226c3..3a9f1b6 100644
--- a/test_set/cvp-sanity/tests/test_drivetrain.py
+++ b/test_set/cvp-sanity/tests/test_drivetrain.py
@@ -207,7 +207,7 @@
         '''Test user was not found'''
 
 
-def test_drivetrain_services_replicas(local_salt_client):
+def test_drivetrain_services_replicas(local_salt_client, check_cicd):
     """
         # Execute ` salt -C 'I@gerrit:client' cmd.run 'docker service ls'` command to get info  for each docker service like that:
         "x5nzktxsdlm6        jenkins_slave02     replicated          0/1                 docker-prod-local.artifactory.mirantis.com/mirantis/cicd/jnlp-slave:2019.2.0         "
@@ -272,7 +272,7 @@
               {}'''.format(json.dumps(mismatch, indent=4))
 
 
-def test_jenkins_jobs_branch(local_salt_client):
+def test_jenkins_jobs_branch(local_salt_client, check_cicd):
     """ This test compares Jenkins jobs versions
         collected from the cloud vs collected from pillars.
     """
@@ -282,8 +282,6 @@
 
     config = utils.get_configuration()
     drivetrain_version = config.get('drivetrain_version', '')
-    if not drivetrain_version:
-        pytest.skip("drivetrain_version is not defined. Skipping")
     jenkins_password = get_password(local_salt_client, 'jenkins:client')
     version_mismatch = []
     server = join_to_jenkins(local_salt_client, 'admin', jenkins_password)
@@ -311,7 +309,7 @@
             continue
 
         actual_version = BranchSpec[0].getElementsByTagName('name')[0].childNodes[0].data
-        if actual_version not in [expected_version, "release/{}".format(drivetrain_version)]:
+        if actual_version not in expected_version and expected_version != '':
             version_mismatch.append("Job {0} has {1} branch."
                                     "Expected {2}".format(job_name,
                                                           actual_version,
diff --git a/test_set/cvp-sanity/tests/test_ui_addresses.py b/test_set/cvp-sanity/tests/test_ui_addresses.py
index e5ef112..0c65451 100644
--- a/test_set/cvp-sanity/tests/test_ui_addresses.py
+++ b/test_set/cvp-sanity/tests/test_ui_addresses.py
@@ -186,6 +186,7 @@
         'Public Alerta page is not reachable on {} from ctl nodes'.format(url)
 
 
+@pytest.mark.usefixtures('check_openstack')
 @pytest.mark.usefixtures('check_drivetrain')
 def test_public_ui_jenkins(local_salt_client, ctl_nodes_pillar):
     IP = local_salt_client.pillar_get(param='_param:cluster_public_host')
@@ -201,6 +202,7 @@
         'Public Jenkins page is not reachable on {} from ctl nodes'.format(url)
 
 
+@pytest.mark.usefixtures('check_openstack')
 @pytest.mark.usefixtures('check_drivetrain')
 def test_public_ui_gerrit(local_salt_client, ctl_nodes_pillar):
     IP = local_salt_client.pillar_get(param='_param:cluster_public_host')
