33import  requests 
44import  paramiko 
55import  base64 
6+ import  traceback 
67import  io 
78import  json 
89import  time 
910import  pandas  as  pd 
1011
1112
1213# Test case selection 
13- testcase_name_list  =  ['TC_B_06_CS' , 'TC_B_07_CS' , 'TC_C_02_CS' ]
14- # testcase_name_list = ['TC_B_06_CS']
14+ # testcase_name_list = ['TC_B_06_CS', 'TC_B_07_CS', 'TC_C_02_CS']
15+ testcase_name_list  =  ['TC_B_06_CS' ]
1516
1617# Result data set 
1718df  =  pd .DataFrame (columns = ['FN_BLOCK' , 'Testcase' , 'Pass' , 'Heap usage (Bytes)' ])
@@ -146,20 +147,20 @@ def run_measurements():
146147    response  =  requests .post ('https://cicd.micro-ocpp.com:8443/api/memory/reset' , 
147148                             auth = (json .loads (os .environ ['MO_SIM_API_CONFIG' ])['user' ],
148149                                   json .loads (os .environ ['MO_SIM_API_CONFIG' ])['pass' ]))
149-     print (f'Status code  { response .status_code }  ' )
150+     print (f'Simulator API /memory/reset: \n  >  { response .status_code }  ' )
150151
151152    response  =  requests .get ('https://cicd.micro-ocpp.com:8443/api/memory/info' , 
152153                             auth = (json .loads (os .environ ['MO_SIM_API_CONFIG' ])['user' ],
153154                                   json .loads (os .environ ['MO_SIM_API_CONFIG' ])['pass' ]))
154-     print (f'Status code  { response .status_code }  , current heap={ response .json ()["total_current" ]}  , max heap={ response .json ()["total_max" ]}  ' )
155+     print (f'Simulator API /memory/info: \n  >  { response .status_code }  , current heap={ response .json ()["total_current" ]}  , max heap={ response .json ()["total_max" ]}  ' )
155156    base_memory_level  =  response .json ()["total_max" ]
156157
157158    print ("Start Test Driver" )
158159
159160    response  =  requests .post (os .environ ['TEST_DRIVER_URL' ] +  '/ocpp2.0.1/CS/session/start/'  +  os .environ ['TEST_DRIVER_CONFIG' ], 
160161                             headers = {'Authorization' : 'Bearer '  +  os .environ ['TEST_DRIVER_KEY' ]},
161162                             verify = False )
162-     print (f'Status code  { response .status_code }  ' )
163+     print (f'Test Driver /*/*/session/start/*: \n  >  { response .status_code }  ' )
163164    #print(json.dumps(response.json(), indent=4)) 
164165
165166    for  testcase  in  testcases :
@@ -178,7 +179,7 @@ def run_measurements():
178179            response  =  requests .get (os .environ ['TEST_DRIVER_URL' ] +  '/sut_connection_status' , 
179180                                    headers = {'Authorization' : 'Bearer '  +  os .environ ['TEST_DRIVER_KEY' ]},
180181                                    verify = False )
181-             print (f'Status code  { response .status_code }  ' )
182+             print (f'Test Driver /sut_connection_status: \n  >  { response .status_code }  ' )
182183            #print(json.dumps(response.json(), indent=4)) 
183184            if  response .status_code  ==  200 :
184185                simulator_connected  =  True 
@@ -194,27 +195,27 @@ def run_measurements():
194195        response  =  requests .post ('https://cicd.micro-ocpp.com:8443/api/memory/reset' , 
195196                             auth = (json .loads (os .environ ['MO_SIM_API_CONFIG' ])['user' ],
196197                                   json .loads (os .environ ['MO_SIM_API_CONFIG' ])['pass' ]))
197-         print (f'Status code  { response .status_code }  ' )
198+         print (f'Simulator API /memory/reset: \n  >  { response .status_code }  ' )
198199
199200        test_response  =  requests .post (os .environ ['TEST_DRIVER_URL' ] +  '/testcases/'  +  testcase ['testcase_name' ] +  '/execute' , 
200201                                 headers = {'Authorization' : 'Bearer '  +  os .environ ['TEST_DRIVER_KEY' ]},
201202                                 verify = False )
202-         print (f'Status code  { test_response .status_code }  ' )
203+         print (f'Test Driver /testcases/ { testcase [ "testcase_name" ] } /execute: \n  >  { test_response .status_code }  ' )
203204        #print(json.dumps(test_response.json(), indent=4)) 
204205
205-         mo_sim_response  =  requests .get ('https://cicd.micro-ocpp.com:8443/api/memory/info' , 
206+         sim_response  =  requests .get ('https://cicd.micro-ocpp.com:8443/api/memory/info' , 
206207                             auth = (json .loads (os .environ ['MO_SIM_API_CONFIG' ])['user' ],
207208                                   json .loads (os .environ ['MO_SIM_API_CONFIG' ])['pass' ]))
208-         print (f'Status code  { mo_sim_response .status_code }  , current heap={ mo_sim_response .json ()["total_current" ]}  , max heap={ mo_sim_response .json ()["total_max" ]}  ' )
209+         print (f'Simulator API /memory/info: \n  >  { sim_response .status_code }  , current heap={ sim_response .json ()["total_current" ]}  , max heap={ sim_response .json ()["total_max" ]}  ' )
209210
210-         df .loc [testcase ['testcase_name' ]] =  [testcase ['functional_block' ], testcase ['description' ], 'x'  if  test_response .json ()['data' ][0 ]['verdict' ] ==  "pass"  else  '-' , str (mo_sim_response .json ()["total_max" ] -  base_memory_level )]
211+         df .loc [testcase ['testcase_name' ]] =  [testcase ['functional_block' ], testcase ['description' ], 'x'  if  test_response .json ()['data' ][0 ]['verdict' ] ==  "pass"  else  '-' , str (sim_response .json ()["total_max" ] -  base_memory_level )]
211212
212213    print ("Stop Test Driver" )
213214
214215    response  =  requests .post (os .environ ['TEST_DRIVER_URL' ] +  '/session/stop' , 
215216                             headers = {'Authorization' : 'Bearer '  +  os .environ ['TEST_DRIVER_KEY' ]},
216217                             verify = False )
217-     print (f'Status code  { response .status_code }  ' )
218+     print (f'Test Driver /session/stop: \n  >  { response .status_code }  ' )
218219    #print(json.dumps(response.json(), indent=4)) 
219220
220221    cleanup_simulator ()
@@ -224,12 +225,14 @@ def run_measurements():
224225    # Add some meta information 
225226    max_memory  =  0 
226227    for  index , row  in  df .iterrows ():
227-         max_memory  =  max (max_memory , int (row [3 ]))
228+         memory  =  row ['Heap usage (Bytes)' ]
229+         if  memory .isdigit ():
230+             max_memory  =  max (max_memory , int (memory ))
228231
229232    functional_blocks  =  set ()
230233    for  index , row  in  df .iterrows ():
231-         functional_blocks .add (row [0 ])
232-      
234+         functional_blocks .add (row ['FN_BLOCK' ])
235+ 
233236    print (functional_blocks )
234237
235238    for  i  in  functional_blocks :
@@ -246,7 +249,7 @@ def run_measurements():
246249
247250    df .to_csv ('docs/assets/tables/heap_v201.csv' ,index = False ,columns = ['Testcase' ,'Pass' ,'Heap usage (Bytes)' ])
248251
249- run_measurements ( )
252+      print ( 'Stored test results to CSV' )
250253
251254def  run_measurements_and_retry ():
252255
@@ -273,11 +276,13 @@ def run_measurements_and_retry():
273276        except :
274277            print (f'Error detected ({ i + 1 }  )' )
275278
279+             traceback .print_exc ()
280+ 
276281            print ("Stop Test Driver" )    
277282            response  =  requests .post (os .environ ['TEST_DRIVER_URL' ] +  '/session/stop' , 
278283                                    headers = {'Authorization' : 'Bearer '  +  os .environ ['TEST_DRIVER_KEY' ]},
279284                                    verify = False )
280-             print (f'Status code  { response .status_code }  ' )
285+             print (f'Test Driver /session/stop: \n  >  { response .status_code }  ' )
281286            #print(json.dumps(response.json(), indent=4)) 
282287
283288            cleanup_simulator ()
0 commit comments