我正在运行测试用例,我想以这样的方式设置我的日志记录,使其自动记录测试失败的所有情况 - 但我想获得自定义响应,例如,如果断言失败我'我想获得对我的测试发出的请求的响应,而不仅仅是断言失败的默认消息。目前我只知道断言失败了,但不知道程序返回了什么。
假设我正在测试一个视图函数,例如我有一个看起来大致像这样的测试(整个 TestCase 类的一部分)
def edit_profile(self):
return self.app.get("/edit_profile", follow_redirects=True)
def test_edit_profile(self):
rv = self.edit_profile()
assert "Edit your profile admin" in rv.data
有没有办法让我配置日志记录,以便每次测试失败都会将 rv.data 记录到日志文件中?
目前我只是在之前测试失败的断言之前添加logging.debug(rv.data),再次运行测试,调试问题,然后继续,但是这是无效的,很容易忘记那些logging.debug()稍后,如果我有一个功能可以在测试请求失败时自动记录我的网页对测试请求的响应,那么速度会快得多。
self.assertIn('Edit your profile admin', rv.data, msg=rv.data)
Use the assertWhatever
方法。我不完全明白为什么,但你不应该使用assert
断言的陈述unittest
。 (其他框架允许您断言assert
.)
作为参考,将消息添加到assert
断言的工作原理如下:
assert 'Edit your profile admin' in rv.data, rv.data
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)