问题描述
我确信这可能是一个简单的问题,但我是编程新手,我很难理解模拟。我想知道是否可以在 python 中测试一个写入队列而不实际写入队列的函数。
def write_to_queue():
#call queue client
#do some status checking
return status
def post() :
#do something
return write_to_queue()
有没有办法在不实际写入队列的情况下测试 write_to_queue?
解决方法
模拟通常是这样工作的:
- 确保要模拟的对象被注入到测试代码中,而不仅仅是在那里创建。
- 在测试场景中注入模拟而不是真实的东西。
- 通过验证预期方法调用的执行位置来断言预期行为。