Мой скрипт Python не записывает результаты теста в выходной файл - PullRequest
0 голосов
/ 30 июня 2019

У меня есть файл runner.py, в котором я запускаю все свои сценарии.Когда один из сценариев дает сбой, мой вывод не записывается в файл output.html.

Я попытался добавить блок try и catch, но это не помогло.Пожалуйста, предложите.Также мой сценарий должен выполняться до последней строки, даже если какой-либо сценарий в начале не выполняется.

import os
import utils
import Scenario1
import Scenario2
import Scenario3
from jinja2 import Environment, FileSystemLoader

PATH = os.path.dirname(os.path.abspath(__file__))
TEMPLATE_ENVIRONMENT = Environment(
    autoescape=False,
    loader=FileSystemLoader(os.path.join(PATH, 'templates')),
    trim_blocks=False)
direct = os.getcwd()

testResult = {
              "scenarios": []
             }


def main():
  global testResult

  try:
   Scenario1
   sc1Res = Scenario1.Testcase1.getResult()
   print('sc1Res', sc1Res)
   testResult['scenarios'].append(sc1Res)
   print('sc1Res', testResult)
  except:
    pass

  try:
   Scenario2
   sc2Res = Scenario2.Testcase2.getResult()
   print('sc2Res', sc2Res)
   testResult['scenarios'].append(sc2Res)
   print('sc2Res', testResult)  
  except:
   pass

  try:
   Scenario3
   sc3Res = Scenario3.Testcase3.getResult()
   print('sc3Res', sc3Res)
   testResult['scenarios'].append(sc3Res)
   print('sc3Res', testResult)
  except:
   pass

   print('in here')
   with open(direct + "\output.html", 'w') as f:
    html = render_template("save.html", testResult)
    f.write(html) 


 # Scenario2
 # Scenario3
 # Scenario4
 # Scenario5
 # Scenario6
 # Scenario7
 # Scenario8
 # Scenario9
 # Scenario10

def render_template(template_filename, testResult):
 print(testResult)
 return TEMPLATE_ENVIRONMENT.get_template(template_filename).render(testResult)


if __name__ == "__main__":
    main()

В настоящее время сценарий 3 не выполняется, а результаты теста не записываются в output.html.

...