我在做一个unit testing,我在检查两个数据库集合中的字段,所以在这期间我必须做一个multi-if条件,比如:
for doc1,doc2 in itertools.izip(docs1, docs2):
if ... :
if ... :
response = 'Error'
else:
response = 'OK'
else... :
if ... :
response = 'Error'
else:
response = 'OK'
if ... :
if ... :
response = 'Error'
else ... :
response = 'OK'
else ... :
if ... :
response = 'Error'
else ... :
response = 'OK'
因此,如果错误发生在其中一个ifs中,我想断言一个响应,给出如下答案:
self.assert400(response, message="Bad request, empty body.")
当整个过程正常时,我们会给出一个正常的回答。你知道吗
我只想避免写这个:
if ... :
if ... :
self.assert400(response, message="Bad request, empty body.")
else:
self.assert200(response, message="OK.")
else... :
if ... :
self.assert400(response, message="Bad request, empty body.")
else:
self.assert200(response, message="OK.")
那么,如何实现这一点呢?你知道吗
我想在它的末尾创建一个if条件,但这不会停止for循环吗?请帮帮我?你知道吗
在这种情况下,您应该考虑使用默认值并只检查错误情况:
这就使得只有一个错误就足以使整个事情失败。我有点不清楚你到底想做什么,所以做评论,如果这不是你所期望的。你知道吗
在我看来,您并不是真正的单元测试。函数和单元测试中的结构完全相同。因此,如果您的代码更改,测试也必须更改。我认为测试“=”操作符不值得你花时间。你知道吗
我可能错了,但我认为你应该有一个函数,获取doc1和doc2并返回一个响应。然后对特定输入值的返回值进行单元测试。像这样:
一般来说,让你的代码“单元可测试”会更好。你知道吗
相关问题 更多 >
编程相关推荐