我不明白,我怎么能在另一个动作之后运行Python方法。
我的.py
文件示例:
# First test
for filename in first_folder:
if "Sasha Great" in open(filename).read():
log.debug(filename + " Done")
else:
print("First test failure for " + filename)
如果所有测试都通过,则打印到控制台:
Test for all files successful passed
例如,如果我的一个测试失败了SashaExample.txt
:
First test failure for SashaExample.txt
;First test failure for AnotherExample.txt
,打印错误到控制台并继续测试;exit(1)
。如果我使用Travis CI或AppVeyor,我需要exit(1)
,我可以看到,我的测试中有错误。
如果:
for filename in first_folder:
if "Sasha Great" in open(filename).read():
log.debug(filename + " Done")
else:
print("First test failure for " + filename)
exit(1)
程序在第一次错误后结束。但我需要看到所有的错误。
atexit
,但我不明白,我怎么能解决这个问题。这是一个简单的编程概念,称为FLAGS。谷歌有点,你会看到很简单。
all_passed = True
# First test
for filename in first_folder:
if "Sasha Great" in open(filename).read():
log.debug(filename + " Done")
else:
print("First test failure for " + filename)
all_passed=False
continue
if all_passed:
print('All test passed')
问题似乎是如果有任何失败,你需要在程序结束时调用exit(1)
。如果是这种情况,您可以使用变量,例如failureFound
,初始化为False
(因为您还没有找到),并在发现故障时设置为True
。然后,在程序结束时,如果failureFound
为真,请调用exit(1)
。