Bottlenecks testcase rebuild 63/38563/2
authorAce Lee <liyin11@huawei.com>
Tue, 1 Aug 2017 10:48:21 +0000 (10:48 +0000)
committerAce Lee <liyin11@huawei.com>
Wed, 2 Aug 2017 00:56:44 +0000 (00:56 +0000)
JIRA: BOTTLENECK-175

After this patch,
Bottlenecks will try to find the stress of the openstack system.
we try to create 20 stacks one time.
And 20 stacks the other time.
we will try to find if openstack will pass threshhold twice.
This patch only affact latest version

Change-Id: I6146cf5c6fe0ac4968337cc36e07f715b64191d0
Signed-off-by: Ace Lee <liyin11@huawei.com>
testsuites/posca/testcase_cfg/posca_factor_ping.yaml
testsuites/posca/testcase_script/posca_factor_ping.py
utils/parser.py

index ed1e347..2565435 100644 (file)
@@ -16,8 +16,9 @@ load_manager:
     tool: ping
     test_times: 100
     package_size:
-    num_stack: 5, 10, 20
-    package_loss: 10%
+    num_stack: 20, 20
+    threshhold: 20
+    package_loss: 0%
 
   runners:
     stack_create: yardstick
index b212971..2b71965 100644 (file)
@@ -89,13 +89,14 @@ def do_test():
     return out_value
 
 
-def config_to_result(num, out_num, during_date):
+def config_to_result(num, out_num, during_date, result):
     testdata = {}
     test_result = {}
-    test_result["number_of_users"] = float(num)
+    test_result["number_of_stacks"] = float(num)
     test_result["success_times"] = out_num
     test_result["success_rate"] = out_num / num
     test_result["duration_time"] = during_date
+    test_result["result"] = result
     testdata["data_body"] = test_result
     testdata["testcase"] = testcase
     return testdata
@@ -149,15 +150,18 @@ def run(test_config):
         LOG.info("%s thread success %d times" % (num, out_num))
         during_date = (endtime - starttime).seconds
 
-        data_reply = config_to_result(num, out_num, during_date)
+        if out_num >= con_dic["scenarios"]['threshhold']:
+            criteria_result = "PASS"
+        else:
+            criteria_result = "FAIL"
+
+        data_reply = config_to_result(num, out_num, during_date,
+                                      criteria_result)
         if "dashboard" in test_config["contexts"].keys():
             DashBoard.dashboard_send_data(test_config['contexts'], data_reply)
         conf_parser.result_to_file(data_reply, test_config["out_file"])
 
-        if out_num < num:
-            success_rate = ('%d/%d' % (out_num, num))
-            LOG.error('error thread: %d '
-                      'the successful rate is %s'
-                      % (num - out_num, success_rate))
+        if criteria_result is "FAIL":
             break
     LOG.info('END POSCA stress ping test')
+    return criteria_result
index 65072c0..f130de4 100644 (file)
@@ -83,8 +83,14 @@ class Parser():
 
     @classmethod
     def testcase_out_dir(cls, testcase):
-        file_time = time.strftime('%H_%M', time.localtime(time.time()))
-        out_name = cls.bottlenecks_config["log_dir"] + testcase + file_time
+        suffix_name = os.getenv("SUFFIX_STRING")
+        if suffix_name is None:
+            file_suffix = time.strftime('%H_%M', time.localtime(time.time()))
+        else:
+            file_suffix = suffix_name
+        suffix_name = str(suffix_name)
+        suffix_name = "_" + suffix_name
+        out_name = cls.bottlenecks_config["log_dir"] + testcase + file_suffix
         outfile_name = out_name + ".out"
         return outfile_name