Adapt automatic reporting to new Test API 81/15381/2
authorMorgan Richomme <morgan.richomme@orange.com>
Fri, 10 Jun 2016 15:15:28 +0000 (17:15 +0200)
committerMorgan Richomme <morgan.richomme@orange.com>
Fri, 10 Jun 2016 15:53:56 +0000 (17:53 +0200)
JIRA: FUNCTEST-303

Change-Id: Ie9cb7151301ab2c26a72746683c35305ba560bbc
Signed-off-by: Morgan Richomme <morgan.richomme@orange.com>
utils/test/reporting/functest/reporting-tempest.py
utils/test/reporting/functest/reporting-vims.py
utils/test/reporting/functest/reportingConf.py
utils/test/reporting/functest/reportingUtils.py

index 70fb577..e9662d5 100644 (file)
@@ -7,10 +7,10 @@ installers = ["apex", "compass", "fuel", "joid"]
 items = ["tests", "Success rate", "duration"]
 
 PERIOD = 7
-
+print "Generate Tempest automatic reporting"
 for installer in installers:
     # we consider the Tempest results of the last PERIOD days
-    url = "http://testresults.opnfv.org/testapi/results?case=Tempest"
+    url = "http://testresults.opnfv.org/test/api/v1/results?case=Tempest"
     request = Request(url + '&period=' + str(PERIOD)
                       + '&installer=' + installer + '&version=master')
 
@@ -21,7 +21,7 @@ for installer in installers:
     except URLError, e:
         print 'No kittez. Got an error code:', e
 
-    test_results = results['test_results']
+    test_results = results['results']
     test_results.reverse()
 
     scenario_results = {}
@@ -41,7 +41,7 @@ for installer in installers:
         # For each scenario, we build a result object to deal with
         # results, criteria and error handling
         for result in scenario_results[s]:
-            result["creation_date"] = result["creation_date"].split(".")[0]
+            result["start_date"] = result["start_date"].split(".")[0]
 
             # retrieve results
             # ****************
@@ -96,5 +96,7 @@ for installer in installers:
                                  items=items,
                                  installer=installer)
 
-    with open("./release/index-tempest-" + installer + ".html", "wb") as fh:
+    with open("./release/master/index-tempest-" +
+              installer + ".html", "wb") as fh:
         fh.write(outputText)
+print "Tempest automatic reporting Done"
index 78ca9f5..5ba92d6 100644 (file)
@@ -24,7 +24,7 @@ installers = ["fuel", "compass", "joid", "apex"]
 step_order = ["initialisation", "orchestrator", "vIMS", "sig_test"]
 
 for installer in installers:
-    request = Request('http://testresults.opnfv.org/testapi/results?case=vIMS&installer=' + installer)
+    request = Request('http://testresults.opnfv.org/test/api/v1/results?case=vIMS&installer=' + installer)
 
     try:
         response = urlopen(request)
@@ -33,7 +33,7 @@ for installer in installers:
     except URLError, e:
         print 'No kittez. Got an error code:', e
 
-    test_results = results['test_results']
+    test_results = results['results']
     test_results.reverse()
 
     scenario_results = {}
@@ -45,7 +45,7 @@ for installer in installers:
     for s, s_result in scenario_results.items():
         scenario_results[s] = s_result[0:5]
         for result in scenario_results[s]:
-            result["creation_date"] = result["creation_date"].split(".")[0]
+            result["start_date"] = result["start_date"].split(".")[0]
             sig_test = result['details']['sig_test']['result']
             if not sig_test == "" and isinstance(sig_test, list):
                 format_result = sig_test_format(sig_test)
@@ -77,7 +77,7 @@ for installer in installers:
 
     outputText = template.render( scenario_results = scenario_results, step_order = step_order, installer = installer)
 
-    with open("./release/index-vims" + installer + ".html", "wb") as fh:
+    with open("./release/master/index-vims-" + installer + ".html", "wb") as fh:
         fh.write(outputText)
 
 
index e4c4548..e390a18 100644 (file)
@@ -11,7 +11,7 @@
 # ****************************************************
 installers = ["apex", "compass", "fuel", "joid"]
 # installers = ["compass"]
-versions = ["brahmaputra", "master"]
-versions = ["master"]
+versions = ["brahmaputra", "master"]
+versions = ["master"]
 PERIOD = 10
 MAX_SCENARIO_CRITERIA = 18
index f8d64aa..7170b83 100644 (file)
@@ -19,7 +19,7 @@ def getApiResults(case, installer, scenario, version):
     # urllib2.install_opener(opener)
     # url = "http://127.0.0.1:8000/results?case=" + case + \
     #       "&period=30&installer=" + installer
-    url = ("http://testresults.opnfv.org/testapi/results?case=" + case +
+    url = ("http://testresults.opnfv.org/test/api/v1/results?case=" + case +
            "&period=" + str(reportingConf.PERIOD) + "&installer=" + installer +
            "&scenario=" + scenario + "&version=" + version)
     request = Request(url)
@@ -37,7 +37,8 @@ def getApiResults(case, installer, scenario, version):
 def getScenarios(case, installer, version):
 
     case = case.getName()
-    url = ("http://testresults.opnfv.org/testapi/results?case=" + case +
+    print case
+    url = ("http://testresults.opnfv.org/test/api/v1/results?case=" + case +
            "&period=" + str(reportingConf.PERIOD) + "&installer=" + installer +
            "&version=" + version)
     request = Request(url)
@@ -46,11 +47,10 @@ def getScenarios(case, installer, version):
         response = urlopen(request)
         k = response.read()
         results = json.loads(k)
+        test_results = results['results']
     except URLError, e:
         print 'Got an error code:', e
 
-    test_results = results['test_results']
-
     if test_results is not None:
         test_results.reverse()
 
@@ -78,7 +78,7 @@ def getNbtestOk(results):
     for r in results:
         for k, v in r.iteritems():
             try:
-                if "passed" in v:
+                if "PASS" in v:
                     nb_test_ok += 1
             except:
                 print "Cannot retrieve test status"
@@ -90,7 +90,7 @@ def getResult(testCase, installer, scenario, version):
     # retrieve raw results
     results = getApiResults(testCase, installer, scenario, version)
     # let's concentrate on test results only
-    test_results = results['test_results']
+    test_results = results['results']
 
     # if results found, analyze them
     if test_results is not None:
@@ -106,7 +106,7 @@ def getResult(testCase, installer, scenario, version):
         for r in test_results:
             # print r["creation_date"]
             # print r["criteria"]
-            scenario_results.append({r["creation_date"]: r["criteria"]})
+            scenario_results.append({r["start_date"]: r["criteria"]})
         # sort results
         scenario_results.sort()
         # 4 levels for the results