@patch("dao.qualcomm_transaction_service.QualcommTransactionService.get_max_qualcomm_id",20)
def test_lambda_handler():
lambda_handler(event, None)我使用了mocking,看到你的例子,我的方法期望返回20,无论何时在lambda函数测试中,当我们在到达上面的方法时,我们做了.but,我得到了一个异常,int类型的对象不可调用。请告诉我这里有什么问题。
这是我试图模拟的实际被调用的方法,它被称为lambda函数(在本地测试lambda ):
last_max_id = QualcommTransactionService().get_max_qualcomm_id(self.subscriber_id)我的文件夹结构是这样的:
functions
-subscription_lambda
-qt_lambda_event.py
layers
-subscription-service
-python
-soap
-qt
-qualcomm-transaction-main.py
-config
-data-access-layer
-python
-dao
-qualcomm_transaction-service.py发布于 2019-01-24 18:30:57
在回答我自己的问题时,我要做的就是在路径中传递20,我返回了Mock()对象,返回值为20
maxidMock = Mock()
maxidMock.return_value = 20
@patch("dao.qualcomm_transaction_service.QualcommTransactionService.get_max_qualcomm_id",20)
def test_lambda_handler():
lambda_handler(event, None)
maxidMock.assert_called_with(6)https://stackoverflow.com/questions/54342661
复制相似问题