use Functest tempest_custom test cases to run all Ipv6 test cases 19/33619/3
authorxudan <xudan16@huawei.com>
Fri, 21 Apr 2017 06:31:33 +0000 (06:31 +0000)
committerxudan <xudan16@huawei.com>
Fri, 21 Apr 2017 09:11:59 +0000 (09:11 +0000)
JIRA: DOVETAIL-401

1. modify all Ipv6 test cases, change tempest_smoke_serial/tempest_full_parallel
   into tempest_custom, add ID of each sub-testcases.
2. Some sub-testcases in ipv6.tc002, ipv6.tc003, ipv6.tc004 and ipv6.tc005 can not
   be found in the full tempest test case list.
2. disable testcases' script_result_acquired to enable tempest_custom run multiple times.
3. use build_tag-testcase_name(such as daily-master-79a6e392-28bb-4c40-9d88-a03bed99da2d-dovetail.ipv6.tc025)
   as the unique ID of each testcase.
4. comment out the progress bar, because it has some problems when print the report text.
5. Functest has changed the TEST_DB_URL from http://<testapi>:<port>/apv/v1 to
   http://<testapi>:<port>/apv/v1/results.
6. Functest has changed the TEST_DB_URL to file://<file_path>/<file_name>.
   see https://gerrit.opnfv.org/gerrit/#/c/33511/

Change-Id: I524f6702377f215f526158214842481eb44565be
Signed-off-by: xudan <xudan16@huawei.com>
33 files changed:
dovetail/conf/dovetail_config.yml
dovetail/conf/functest_config.yml
dovetail/container.py
dovetail/report.py
dovetail/run.py
dovetail/test_runner.py
dovetail/testcase.py
dovetail/testcase/ipv6.tc001.yml
dovetail/testcase/ipv6.tc002.yml
dovetail/testcase/ipv6.tc003.yml
dovetail/testcase/ipv6.tc004.yml
dovetail/testcase/ipv6.tc005.yml
dovetail/testcase/ipv6.tc006.yml
dovetail/testcase/ipv6.tc007.yml
dovetail/testcase/ipv6.tc008.yml
dovetail/testcase/ipv6.tc009.yml
dovetail/testcase/ipv6.tc010.yml
dovetail/testcase/ipv6.tc011.yml
dovetail/testcase/ipv6.tc012.yml
dovetail/testcase/ipv6.tc013.yml
dovetail/testcase/ipv6.tc014.yml
dovetail/testcase/ipv6.tc015.yml
dovetail/testcase/ipv6.tc016.yml
dovetail/testcase/ipv6.tc017.yml
dovetail/testcase/ipv6.tc018.yml
dovetail/testcase/ipv6.tc019.yml
dovetail/testcase/ipv6.tc020.yml
dovetail/testcase/ipv6.tc021.yml
dovetail/testcase/ipv6.tc022.yml
dovetail/testcase/ipv6.tc023.yml
dovetail/testcase/ipv6.tc024.yml
dovetail/testcase/ipv6.tc025.yml
dovetail/utils/dovetail_utils.py

index 56a5482..2171dbe 100644 (file)
@@ -25,6 +25,7 @@ functest_testsuite:
   - refstack_defcore
   - tempest_smoke_serial
   - tempest_full_parallel
+  - tempest_custom
   - rally_sanity
   - promise
 
index d1f1d6a..460506a 100644 (file)
@@ -14,5 +14,5 @@ functest:
     - 'echo test for postcondition in functest'
   result:
     dir: '/home/opnfv/functest/results'
-    file_path: 'dump.txt'
+    file_path: 'functest_results.txt'
   openrc: '/home/opnfv/functest/conf/openstack.creds'
index f7912d5..3b040ca 100644 (file)
@@ -63,8 +63,8 @@ class Container(object):
 
         # These are all just used by Functest's function push_results_to_db.
         # And has nothing to do with DoveTail running test cases.
-        ins_type = " -e INSTALLER_TYPE=vendor-specific"
-        scenario = " -e DEPLOY_SCENARIO=default"
+        ins_type = " -e INSTALLER_TYPE=unknown"
+        scenario = " -e DEPLOY_SCENARIO=unknown"
         node = " -e NODE_NAME=master"
         envs = "%s %s %s" % (ins_type, scenario, node)
 
@@ -72,8 +72,9 @@ class Container(object):
         if dovetail_config['report_dest'].startswith("http"):
             report = " -e TEST_DB_URL=%s " % dovetail_config['report_dest']
         if dovetail_config['report_dest'] == "file":
-            file_path = dovetail_config["functest"]['result']['dir']
-            file_path = file_path[0:file_path.rfind('/results')]
+            func_res_conf = dovetail_config["functest"]['result']
+            file_path = os.path.join(func_res_conf['dir'],
+                                     func_res_conf['file_path'])
             report = " -e TEST_DB_URL=file://%s " % file_path
         return "%s %s" % (envs, report)
 
@@ -99,7 +100,7 @@ class Container(object):
         return "%s %s" % (envs, log_vol)
 
     @classmethod
-    def create(cls, type):
+    def create(cls, type, testcase_name):
         sshkey = "-v /root/.ssh/id_rsa:/root/.ssh/id_rsa "
         dovetail_config = dt_cfg.dovetail_config
         docker_image = cls.get_docker_image(type)
@@ -113,7 +114,8 @@ class Container(object):
         # CI_DEBUG is used for showing the debug logs of the upstream projects
         # BUILD_TAG is the unique id for this test
         envs = ' -e CI_DEBUG=true'
-        envs = envs + ' -e BUILD_TAG=%s' % dovetail_config['build_tag']
+        envs = envs + ' -e BUILD_TAG=%s-%s' % (dovetail_config['build_tag'],
+                                               testcase_name)
 
         config = ""
         if type.lower() == "functest":
index 3dd636c..c7eff3d 100644 (file)
@@ -110,7 +110,12 @@ class Report(object):
         for testcase in report_data['testcases_list']:
             pattern = re.compile(
                 '|'.join(dt_cfg.dovetail_config['testarea_supported']))
-            area = pattern.findall(testcase['name'])[0]
+            area = pattern.findall(testcase['name'])
+            if not area:
+                cls.logger.error("testcase %s not in supported testarea",
+                                 testcase['name'])
+                return None
+            area = area[0]
             testarea_scope.append(area)
             sub_report[area] += '-%-25s %s\n' %\
                 (testcase['name'], testcase['result'])
@@ -178,14 +183,14 @@ class Report(object):
             cls.logger.error('crawler is None:%s', testcase.name())
             return None
 
-        if validate_testcase in cls.results[type]:
-            return cls.results[type][validate_testcase]
+        if validate_testcase in cls.results[type]:
+        #    return cls.results[type][validate_testcase]
 
         result = crawler.crawl(testcase)
 
         if result is not None:
             cls.results[type][validate_testcase] = result
-            testcase.script_result_acquired(True)
+            testcase.script_result_acquired(True)
             cls.logger.debug('testcase: %s -> result acquired',
                              validate_testcase)
         else:
@@ -224,6 +229,7 @@ class FunctestCrawler(object):
         timestop = 0
         duration = 0
         testcase_name = testcase.validate_testcase()
+        build_tag = '%s-%s' % (dovetail_config['build_tag'], testcase.name())
         file_path = \
             os.path.join(dovetail_config['result_dir'],
                          dovetail_config[self.type]['result']['file_path'])
@@ -241,7 +247,8 @@ class FunctestCrawler(object):
             for jsonfile in f:
                 try:
                     data = json.loads(jsonfile)
-                    if testcase_name == data['case_name']:
+                    if testcase_name == data['case_name'] and \
+                        build_tag == data['build_tag']:
                         criteria = data['criteria']
                         timestart = data['start_date']
                         timestop = data['stop_date']
@@ -270,7 +277,7 @@ class FunctestCrawler(object):
         return json_results
 
     def crawl_from_url(self, testcase=None):
-        url = "%s/results?case=%s&last=1" % \
+        url = "%s?case=%s&last=1" % \
             (dt_cfg.dovetail_config['report_dest'],
              testcase.validate_testcase())
         self.logger.debug("Query to rest api: %s", url)
@@ -377,6 +384,8 @@ class FunctestChecker(object):
 
     @staticmethod
     def get_sub_testcase(sub_testcase, result):
+        if not result:
+            return False
         reg = sub_testcase + '[\s+\d+]'
         find_reg = re.compile(reg)
         match = find_reg.findall(result)
index 556f813..f268f92 100755 (executable)
@@ -57,8 +57,8 @@ def run_test(testsuite, testarea, logger):
         if testcase.exceed_max_retry_times():
             run_testcase = False
 
-        if testcase.script_result_acquired():
-            run_testcase = False
+        if testcase.script_result_acquired():
+        #    run_testcase = False
 
         if run_testcase:
             testcase.run()
@@ -82,7 +82,7 @@ def check_tc_result(testcase, logger):
         else:
             if dt_utils.check_db_results(dt_cfg.dovetail_config['report_dest'],
                                          dt_cfg.dovetail_config['build_tag'],
-                                         testcase.validate_testcase(),
+                                         testcase.name(),
                                          logger):
                 logger.info("Results have been pushed to database.")
             else:
index 2c1b7fd..cfc4901 100644 (file)
@@ -39,7 +39,8 @@ class DockerRunner(object):
             if not Container.pull_image(self.testcase.validate_type()):
                 self.logger.error("Failed to pull the image.")
                 return
-        container_id = Container.create(self.testcase.validate_type())
+        container_id = Container.create(self.testcase.validate_type(),
+                                        self.testcase.name())
         if not container_id:
             self.logger.error('failed to create container')
             return
index 13a31fd..408599f 100644 (file)
@@ -159,7 +159,7 @@ class Testcase(object):
                         src_file.write(sub_test + '\n')
             self.logger.debug('save testcases to %s', file_path)
         except Exception:
-            self.logger.error('Failed to save: %s', src_file)
+            self.logger.error('Failed to save: %s', file_path)
 
         src_file_path = os.path.join(dt_cfg.dovetail_config['result_dir'],
                                      testcase_src_file)
index 598e1ca..a70d41e 100644 (file)
@@ -4,16 +4,12 @@ dovetail.ipv6.tc001:
   objective: Bulk creation and deletion of IPv6 networks, ports and subnets
   validate:
     type: functest
-    testcase: tempest_smoke_serial
-    pre_condition:
-      - 'echo test for precondition in testcase'
-    cmds:
-      - 'functest env prepare'
-      - 'functest testcase run {{validate_testcase}} -r'
-    post_condition:
-      - 'echo test for precondition in testcase'
+    testcase: tempest_custom
+    pre_copy:
+      src_file: tempest_custom.txt
+      dest_path: /home/opnfv/repos/functest/functest/opnfv_tests/openstack/tempest/custom_tests/test_list.txt
   report:
     sub_testcase_list:
-      - tempest.api.network.test_networks.BulkNetworkOpsIpV6Test.test_bulk_create_delete_network
-      - tempest.api.network.test_networks.BulkNetworkOpsIpV6Test.test_bulk_create_delete_port
-      - tempest.api.network.test_networks.BulkNetworkOpsIpV6Test.test_bulk_create_delete_subnet
+      - tempest.api.network.test_networks.BulkNetworkOpsIpV6Test.test_bulk_create_delete_network[id-d4f9024d-1e28-4fc1-a6b1-25dbc6fa11e2,smoke]
+      - tempest.api.network.test_networks.BulkNetworkOpsIpV6Test.test_bulk_create_delete_port[id-48037ff2-e889-4c3b-b86a-8e3f34d2d060,smoke]
+      - tempest.api.network.test_networks.BulkNetworkOpsIpV6Test.test_bulk_create_delete_subnet[id-8936533b-c0aa-4f29-8e53-6cc873aec489,smoke]
index 37406a2..48aeafa 100644 (file)
@@ -4,9 +4,12 @@ dovetail.ipv6.tc002:
   objective: VIM ipv6 operations, to create/update/delete an IPv6 network and subnet
   validate:
     type: functest
-    testcase: tempest_smoke_serial
+    testcase: tempest_custom
+    pre_copy:
+      src_file: tempest_custom.txt
+      dest_path: /home/opnfv/repos/functest/functest/opnfv_tests/openstack/tempest/custom_tests/test_list.txt
   report:
     sub_testcase_list:
-      - tempest.api.network.test_networks.NetworksIpV6Test.test_create_update_delete_network_subnet
+      - tempest.api.network.test_networks.NetworksIpV6Test.test_create_update_delete_network_subnet[id-0e269138-0da6-4efc-a46d-578161e7b221,smoke]
       - tempest.api.network.test_networks.NetworksIpV6TestAttrs.test_create_update_delete_network_subnet
 
index d7c7f71..d9c9379 100644 (file)
@@ -4,8 +4,11 @@ dovetail.ipv6.tc003:
   objective: VIM ipv6 operations, to check external network visibility
   validate:
     type: functest
-    testcase: tempest_smoke_serial
+    testcase: tempest_custom
+    pre_copy:
+      src_file: tempest_custom.txt
+      dest_path: /home/opnfv/repos/functest/functest/opnfv_tests/openstack/tempest/custom_tests/test_list.txt
   report:
     sub_testcase_list:
-      - tempest.api.network.test_networks.NetworksIpV6Test.test_external_network_visibility
+      - tempest.api.network.test_networks.NetworksIpV6Test.test_external_network_visibility[id-af774677-42a9-4e4b-bb58-16fe6a5bc1ec,smoke]
       - tempest.api.network.test_networks.NetworksIpV6TestAttrs.test_external_network_visibility
index 984dd1b..a69b9fc 100644 (file)
@@ -4,10 +4,13 @@ dovetail.ipv6.tc004:
   objective: VIM ipv6 operations, to list IPv6 networks and subnets of a tenant
   validate:
     type: functest
-    testcase: tempest_smoke_serial
+    testcase: tempest_custom
+    pre_copy:
+      src_file: tempest_custom.txt
+      dest_path: /home/opnfv/repos/functest/functest/opnfv_tests/openstack/tempest/custom_tests/test_list.txt
   report:
     sub_testcase_list:
-      - tempest.api.network.test_networks.NetworksIpV6Test.test_list_networks
-      - tempest.api.network.test_networks.NetworksIpV6Test.test_list_subnets
+      - tempest.api.network.test_networks.NetworksIpV6Test.test_list_networks[id-f7ffdeda-e200-4a7a-bcbe-05716e86bf43,smoke]
+      - tempest.api.network.test_networks.NetworksIpV6Test.test_list_subnets[id-db68ba48-f4ea-49e9-81d1-e367f6d0b20a,smoke]
       - tempest.api.network.test_networks.NetworksIpV6TestAttrs.test_list_networks
       - tempest.api.network.test_networks.NetworksIpV6TestAttrs.test_list_subnets
index d6e74ae..52cae5f 100644 (file)
@@ -4,10 +4,13 @@ dovetail.ipv6.tc005:
   objective: VIM ipv6 operations, to show information of an IPv6 network and subnet
   validate:
     type: functest
-    testcase: tempest_smoke_serial
+    testcase: tempest_custom
+    pre_copy:
+      src_file: tempest_custom.txt
+      dest_path: /home/opnfv/repos/functest/functest/opnfv_tests/openstack/tempest/custom_tests/test_list.txt
   report:
     sub_testcase_list:
-      - tempest.api.network.test_networks.NetworksIpV6Test.test_show_network
-      - tempest.api.network.test_networks.NetworksIpV6Test.test_show_subnet
+      - tempest.api.network.test_networks.NetworksIpV6Test.test_show_network[id-2bf13842-c93f-4a69-83ed-717d2ec3b44e,smoke]
+      - tempest.api.network.test_networks.NetworksIpV6Test.test_show_subnet[id-bd635d81-6030-4dd1-b3b9-31ba0cfdf6cc,smoke]
       - tempest.api.network.test_networks.NetworksIpV6TestAttrs.test_show_network
       - tempest.api.network.test_networks.NetworksIpV6TestAttrs.test_show_subnet
index aa9f5e2..dc6b2da 100644 (file)
@@ -4,7 +4,10 @@ dovetail.ipv6.tc006:
   objective: VIM ipv6 operations, to create an IPv6 port in allowed allocation pools
   validate:
     type: functest
-    testcase: tempest_smoke_serial
+    testcase: tempest_custom
+    pre_copy:
+      src_file: tempest_custom.txt
+      dest_path: /home/opnfv/repos/functest/functest/opnfv_tests/openstack/tempest/custom_tests/test_list.txt
   report:
     sub_testcase_list:
-      - tempest.api.network.test_ports.PortsIpV6TestJSON.test_create_port_in_allowed_allocation_pools
+      - tempest.api.network.test_ports.PortsIpV6TestJSON.test_create_port_in_allowed_allocation_pools[id-0435f278-40ae-48cb-a404-b8a087bc09b1,smoke]
index 813a690..b2658ec 100644 (file)
@@ -4,7 +4,10 @@ dovetail.ipv6.tc007:
   objective: VIM ipv6 operations, to create an IPv6 port without security groups
   validate:
     type: functest
-    testcase: tempest_smoke_serial
+    testcase: tempest_custom
+    pre_copy:
+      src_file: tempest_custom.txt
+      dest_path: /home/opnfv/repos/functest/functest/opnfv_tests/openstack/tempest/custom_tests/test_list.txt
   report:
     sub_testcase_list:
-      - tempest.api.network.test_ports.PortsIpV6TestJSON.test_create_port_with_no_securitygroups
+      - tempest.api.network.test_ports.PortsIpV6TestJSON.test_create_port_with_no_securitygroups[id-4179dcb9-1382-4ced-84fe-1b91c54f5735,smoke]
index 3dbbb70..597a471 100644 (file)
@@ -4,7 +4,10 @@ dovetail.ipv6.tc008:
   objective: VIM ipv6 operations, to create/update/delete an IPv6 port
   validate:
     type: functest
-    testcase: tempest_smoke_serial
+    testcase: tempest_custom
+    pre_copy:
+      src_file: tempest_custom.txt
+      dest_path: /home/opnfv/repos/functest/functest/opnfv_tests/openstack/tempest/custom_tests/test_list.txt
   report:
     sub_testcase_list:
-      - tempest.api.network.test_ports.PortsIpV6TestJSON.test_create_update_delete_port
+      - tempest.api.network.test_ports.PortsIpV6TestJSON.test_create_update_delete_port[id-c72c1c0c-2193-4aca-aaa4-b1442640f51c,smoke]
index cb0f3ac..013a76e 100644 (file)
@@ -4,7 +4,10 @@ dovetail.ipv6.tc009:
   objective: VIM ipv6 operations, to list IPv6 ports of a tenant
   validate:
     type: functest
-    testcase: tempest_smoke_serial
+    testcase: tempest_custom
+    pre_copy:
+      src_file: tempest_custom.txt
+      dest_path: /home/opnfv/repos/functest/functest/opnfv_tests/openstack/tempest/custom_tests/test_list.txt
   report:
     sub_testcase_list:
-      - tempest.api.network.test_ports.PortsIpV6TestJSON.test_list_ports
+      - tempest.api.network.test_ports.PortsIpV6TestJSON.test_list_ports[id-cf95b358-3e92-4a29-a148-52445e1ac50e,smoke]
index ebe4040..48191f0 100644 (file)
@@ -4,7 +4,10 @@ dovetail.ipv6.tc010:
   objective: VIM ipv6 operations, to show information of an IPv6 port
   validate:
     type: functest
-    testcase: tempest_smoke_serial
+    testcase: tempest_custom
+    pre_copy:
+      src_file: tempest_custom.txt
+      dest_path: /home/opnfv/repos/functest/functest/opnfv_tests/openstack/tempest/custom_tests/test_list.txt
   report:
     sub_testcase_list:
-      - tempest.api.network.test_ports.PortsIpV6TestJSON.test_show_port
+      - tempest.api.network.test_ports.PortsIpV6TestJSON.test_show_port[id-c9a685bd-e83f-499c-939f-9f7863ca259f,smoke]
index 40c3d46..18373ef 100644 (file)
@@ -4,7 +4,10 @@ dovetail.ipv6.tc011:
   objective: VIM ipv6 operations, to add multiple interfaces for an IPv6 router
   validate:
     type: functest
-    testcase: tempest_smoke_serial
+    testcase: tempest_custom
+    pre_copy:
+      src_file: tempest_custom.txt
+      dest_path: /home/opnfv/repos/functest/functest/opnfv_tests/openstack/tempest/custom_tests/test_list.txt
   report:
     sub_testcase_list:
-      - tempest.api.network.test_routers.RoutersIpV6Test.test_add_multiple_router_interfaces
+      - tempest.api.network.test_routers.RoutersIpV6Test.test_add_multiple_router_interfaces[id-802c73c9-c937-4cef-824b-2191e24a6aab,smoke]
index 5777d34..620fdd6 100644 (file)
@@ -4,7 +4,10 @@ dovetail.ipv6.tc012:
   objective: VIM ipv6 operations, to add and remove an IPv6 router interface with port_id
   validate:
     type: functest
-    testcase: tempest_smoke_serial
+    testcase: tempest_custom
+    pre_copy:
+      src_file: tempest_custom.txt
+      dest_path: /home/opnfv/repos/functest/functest/opnfv_tests/openstack/tempest/custom_tests/test_list.txt
   report:
     sub_testcase_list:
-      - tempest.api.network.test_routers.RoutersIpV6Test.test_add_remove_router_interface_with_port_id
+      - tempest.api.network.test_routers.RoutersIpV6Test.test_add_remove_router_interface_with_port_id[id-2b7d2f37-6748-4d78-92e5-1d590234f0d5,smoke]
index 1b12248..8f739bc 100644 (file)
@@ -4,7 +4,10 @@ dovetail.ipv6.tc013:
   objective: VIM ipv6 operations, to add and remove an IPv6 router interface with subnet_id
   validate:
     type: functest
-    testcase: tempest_smoke_serial
+    testcase: tempest_custom
+    pre_copy:
+      src_file: tempest_custom.txt
+      dest_path: /home/opnfv/repos/functest/functest/opnfv_tests/openstack/tempest/custom_tests/test_list.txt
   report:
     sub_testcase_list:
-      - tempest.api.network.test_routers.RoutersIpV6Test.test_add_remove_router_interface_with_subnet_id
+      - tempest.api.network.test_routers.RoutersIpV6Test.test_add_remove_router_interface_with_subnet_id[id-b42e6e39-2e37-49cc-a6f4-8467e940900a,smoke]
index d4eb0fe..8d3ed34 100644 (file)
@@ -4,7 +4,10 @@ dovetail.ipv6.tc014:
   objective: VIM ipv6 operations, to create, update, delete, list and show an IPv6 router
   validate:
     type: functest
-    testcase: tempest_smoke_serial
+    testcase: tempest_custom
+    pre_copy:
+      src_file: tempest_custom.txt
+      dest_path: /home/opnfv/repos/functest/functest/opnfv_tests/openstack/tempest/custom_tests/test_list.txt
   report:
     sub_testcase_list:
-      - tempest.api.network.test_routers.RoutersIpV6Test.test_create_show_list_update_delete_router
+      - tempest.api.network.test_routers.RoutersIpV6Test.test_create_show_list_update_delete_router[id-f64403e2-8483-4b34-8ccd-b09a87bcc68c,smoke]
index 246bff5..19a9806 100644 (file)
@@ -4,7 +4,10 @@ dovetail.ipv6.tc015:
   objective: VIM ipv6 operations, to create, update, delete, list and show an IPv6 security group
   validate:
     type: functest
-    testcase: tempest_smoke_serial
+    testcase: tempest_custom
+    pre_copy:
+      src_file: tempest_custom.txt
+      dest_path: /home/opnfv/repos/functest/functest/opnfv_tests/openstack/tempest/custom_tests/test_list.txt
   report:
     sub_testcase_list:
-      - tempest.api.network.test_security_groups.SecGroupIPv6Test.test_create_list_update_show_delete_security_group
+      - tempest.api.network.test_security_groups.SecGroupIPv6Test.test_create_list_update_show_delete_security_group[id-bfd128e5-3c92-44b6-9d66-7fe29d22c802,smoke]
index f8f6ba4..f589905 100644 (file)
@@ -4,7 +4,10 @@ dovetail.ipv6.tc016:
   objective: VIM ipv6 operations, to create, delete and show security group rules
   validate:
     type: functest
-    testcase: tempest_smoke_serial
+    testcase: tempest_custom
+    pre_copy:
+      src_file: tempest_custom.txt
+      dest_path: /home/opnfv/repos/functest/functest/opnfv_tests/openstack/tempest/custom_tests/test_list.txt
   report:
     sub_testcase_list:
-      - tempest.api.network.test_security_groups.SecGroupIPv6Test.test_create_show_delete_security_group_rule
+      - tempest.api.network.test_security_groups.SecGroupIPv6Test.test_create_show_delete_security_group_rule[id-cfb99e0e-7410-4a3d-8a0c-959a63ee77e9,smoke]
index 006efb0..8bef603 100644 (file)
@@ -4,7 +4,10 @@ dovetail.ipv6.tc017:
   objective: VIM ipv6 operations, to list all security groups
   validate:
     type: functest
-    testcase: tempest_smoke_serial
+    testcase: tempest_custom
+    pre_copy:
+      src_file: tempest_custom.txt
+      dest_path: /home/opnfv/repos/functest/functest/opnfv_tests/openstack/tempest/custom_tests/test_list.txt
   report:
     sub_testcase_list:
-      - tempest.api.network.test_security_groups.SecGroupIPv6Test.test_list_security_groups
+      - tempest.api.network.test_security_groups.SecGroupIPv6Test.test_list_security_groups[id-e30abd17-fef9-4739-8617-dc26da88e686,smoke]
index 78d7022..93ae123 100644 (file)
@@ -4,7 +4,10 @@ dovetail.ipv6.tc018:
   objective: VIM ipv6 operations, to show information of an IPv6 port
   validate:
     type: functest
-    testcase: tempest_full_parallel
+    testcase: tempest_custom
+    pre_copy:
+      src_file: tempest_custom.txt
+      dest_path: /home/opnfv/repos/functest/functest/opnfv_tests/openstack/tempest/custom_tests/test_list.txt
   report:
     sub_testcase_list:
-      - tempest.scenario.test_network_v6.TestGettingAddress.test_dhcp6_stateless_from_os
+      - tempest.scenario.test_network_v6.TestGettingAddress.test_dhcp6_stateless_from_os[compute,id-d7e1f858-187c-45a6-89c9-bdafde619a9f,network,slow]
index a4ad477..fab0acd 100644 (file)
@@ -4,7 +4,10 @@ dovetail.ipv6.tc019:
   objective: VIM ipv6 operations, to do IPv6 address assignment - dual stack, DHCPv6 stateless
   validate:
     type: functest
-    testcase: tempest_full_parallel
+    testcase: tempest_custom
+    pre_copy:
+      src_file: tempest_custom.txt
+      dest_path: /home/opnfv/repos/functest/functest/opnfv_tests/openstack/tempest/custom_tests/test_list.txt
   report:
     sub_testcase_list:
-      - tempest.scenario.test_network_v6.TestGettingAddress.test_dualnet_dhcp6_stateless_from_os
+      - tempest.scenario.test_network_v6.TestGettingAddress.test_dualnet_dhcp6_stateless_from_os[compute,id-76f26acd-9688-42b4-bc3e-cd134c4cb09e,network,slow]
index 2d92c05..b31cd72 100644 (file)
@@ -4,7 +4,10 @@ dovetail.ipv6.tc020:
   objective: VIM ipv6 operations, to do IPv6 Address Assignment - Multiple Prefixes, DHCPv6 Stateless
   validate:
     type: functest
-    testcase: tempest_full_parallel
+    testcase: tempest_custom
+    pre_copy:
+      src_file: tempest_custom.txt
+      dest_path: /home/opnfv/repos/functest/functest/opnfv_tests/openstack/tempest/custom_tests/test_list.txt
   report:
     sub_testcase_list:
-      - tempest.scenario.test_network_v6.TestGettingAddress.test_multi_prefix_dhcpv6_stateless
+      - tempest.scenario.test_network_v6.TestGettingAddress.test_multi_prefix_dhcpv6_stateless[compute,id-7ab23f41-833b-4a16-a7c9-5b42fe6d4123,network,slow]
index 104993f..f8820f1 100644 (file)
@@ -4,7 +4,10 @@ dovetail.ipv6.tc021:
   objective: VIM ipv6 operations, to do IPv6 Address Assignment - Dual Stack, Multiple Prefixes, DHCPv6 Stateless
   validate:
     type: functest
-    testcase: tempest_full_parallel
+    testcase: tempest_custom
+    pre_copy:
+      src_file: tempest_custom.txt
+      dest_path: /home/opnfv/repos/functest/functest/opnfv_tests/openstack/tempest/custom_tests/test_list.txt
   report:
     sub_testcase_list:
-      - tempest.scenario.test_network_v6.TestGettingAddress.test_dualnet_multi_prefix_dhcpv6_stateless
+      - tempest.scenario.test_network_v6.TestGettingAddress.test_dualnet_multi_prefix_dhcpv6_stateless[compute,id-cf1c4425-766b-45b8-be35-e2959728eb00,network]
index 58813da..6c61702 100644 (file)
@@ -4,7 +4,10 @@ dovetail.ipv6.tc022:
   objective: VIM ipv6 operations, to do IPv6 Address Assignment - SLAAC
   validate:
     type: functest
-    testcase: tempest_full_parallel
+    testcase: tempest_custom
+    pre_copy:
+      src_file: tempest_custom.txt
+      dest_path: /home/opnfv/repos/functest/functest/opnfv_tests/openstack/tempest/custom_tests/test_list.txt
   report:
     sub_testcase_list:
-      - tempest.scenario.test_network_v6.TestGettingAddress.test_slaac_from_os
+      - tempest.scenario.test_network_v6.TestGettingAddress.test_slaac_from_os[compute,id-2c92df61-29f0-4eaa-bee3-7c65bef62a43,network,slow]
index 5b6dbb0..2519370 100644 (file)
@@ -4,7 +4,10 @@ dovetail.ipv6.tc023:
   objective: VIM ipv6 operations, to do IPv6 Address Assignment - Dual Stack, SLAAC
   validate:
     type: functest
-    testcase: tempest_full_parallel
+    testcase: tempest_custom
+    pre_copy:
+      src_file: tempest_custom.txt
+      dest_path: /home/opnfv/repos/functest/functest/opnfv_tests/openstack/tempest/custom_tests/test_list.txt
   report:
     sub_testcase_list:
-      - tempest.scenario.test_network_v6.TestGettingAddress.test_dualnet_dhcp6_stateless_from_os
+      - tempest.scenario.test_network_v6.TestGettingAddress.test_dualnet_dhcp6_stateless_from_os[compute,id-76f26acd-9688-42b4-bc3e-cd134c4cb09e,network,slow]
index ab6970f..9a5f331 100644 (file)
@@ -4,7 +4,10 @@ dovetail.ipv6.tc024:
   objective: VIM ipv6 operations, to do IPv6 address assignment - multiple prefixes, SLAAC
   validate:
     type: functest
-    testcase: tempest_full_parallel
+    testcase: tempest_custom
+    pre_copy:
+      src_file: tempest_custom.txt
+      dest_path: /home/opnfv/repos/functest/functest/opnfv_tests/openstack/tempest/custom_tests/test_list.txt
   report:
     sub_testcase_list:
-      - tempest.scenario.test_network_v6.TestGettingAddress.test_multi_prefix_slaac
+      - tempest.scenario.test_network_v6.TestGettingAddress.test_multi_prefix_slaac[compute,id-dec222b1-180c-4098-b8c5-cc1b8342d611,network,slow]
index 396098e..4cf3a00 100644 (file)
@@ -4,7 +4,10 @@ dovetail.ipv6.tc025:
   objective: VIM ipv6 operations, to do IPv6 address assignment - dual stack, multiple prefixes, SLAAC
   validate:
     type: functest
-    testcase: tempest_full_parallel
+    testcase: tempest_custom
+    pre_copy:
+      src_file: tempest_custom.txt
+      dest_path: /home/opnfv/repos/functest/functest/opnfv_tests/openstack/tempest/custom_tests/test_list.txt
   report:
     sub_testcase_list:
-      - tempest.scenario.test_network_v6.TestGettingAddress.test_dualnet_multi_prefix_slaac
+      - tempest.scenario.test_network_v6.TestGettingAddress.test_dualnet_multi_prefix_slaac[compute,id-9178ad42-10e4-47e9-8987-e02b170cc5cd,network]
index fa99e00..020617b 100644 (file)
@@ -49,14 +49,14 @@ def exec_cmd(cmd, logger=None, exit_on_error=False, info=False,
     p = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE,
                          stderr=subprocess.STDOUT)
     stdout = ''
-    count = 1
-    DEBUG = os.getenv('DEBUG')
+    count = 1
+    DEBUG = os.getenv('DEBUG')
     for line in iter(p.stdout.readline, b''):
         exec_log(verbose, logger, line.strip(), level, True)
         stdout += line
-        if DEBUG is None or DEBUG.lower() != "true":
-            show_progress_bar(count)
-            count += 1
+        if DEBUG is None or DEBUG.lower() != "true":
+        #    show_progress_bar(count)
+        #    count += 1
     stdout = stdout.strip()
     returncode = p.wait()
     p.stdout.close()
@@ -132,7 +132,7 @@ def get_ext_net_name(env_file, logger=None):
 
 
 def check_db_results(db_url, build_tag, testcase, logger):
-    url = "%s/results?build_tag=%s&case=%s" % (db_url, build_tag, testcase)
+    url = "%s?build_tag=%s-%s" % (db_url, build_tag, testcase)
     logger.debug("Query to rest api: %s", url)
     try:
         data = json.load(urllib2.urlopen(url))