zx_*_*ing 1 python testing nose
我正在使用鼻子运行一堆测试用例.我想将每个案例的输出记录到单独的文件中,并且知道每个案例的结果[成功/失败].不幸的是,我无法弄清楚如何用鼻子做到这一点.任何人都可以提供一些线索吗?谢谢
首先,这听起来像是不寻常的用法,并且可能表明您应该重新考虑您的测试方案.
我可以想出几种解决这个问题的方法.最简单的方法是让每个测试记录本身而不是让鼻子为你做.如果您只进行了一些测试,或者只关心记录一些测试的结果,那肯定是这样做的方法.
一种更复杂和通用的方法是编写一个鼻子插件,记录每个测试完成后的结果.为此,您需要编写一个实现afterTest()方法的插件.
from nose.plugins import Plugin
import datetime
class SeparateReports(Plugin):
"Log the results of each test into a separate file."
def afterTest(self, test):
logname = test.id() + '.log'
success = test.passed
date = datetime.datetime.now()
# print logname, datetime.datetime.now(), success
with open(logname, 'a') as log:
log.write("%s: %s\n" % (date, success))
Run Code Online (Sandbox Code Playgroud)
这将附加到以特定测试命名的日志文件为日期戳,如果成功则为True,对于失败则附加为False.几个笔记:
| 归档时间: |
|
| 查看次数: |
1205 次 |
| 最近记录: |