У меня есть файл 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
.