如何解决单元测试Python Azure计时器功能
天青provide documentation for unit testing HTTP and Queue Python functions。这可以通过创建模拟QueueMessage或HTTPRequest来完成。但是,没有用于为Timer functions创建单元测试的文档。
有一个TimerRequest class,但是创建它的新实例失败并出现以下错误:
req = func.TimerRequest()
TypeError:无法使用抽象实例化抽象类TimerRequest 方法past_due
为Python Azure计时器函数创建单元测试的正确方法是什么?
解决方法
As discussed in a GitHub issue,这可以通过将True
或False
传递给构造函数来完成,例如
from functionTimer import main
main(False)
,
接受的答案不再适用于我,最后我创建了一个将过去的到期属性设置为 True 的类,并且成功了:
import unittest
from azure.functions import TimerRequest
from my_func import main
class MockTimer():
def __init__(self):
self.past_due = True
class TestFunction(unittest.TestCase):
def test_my_function(self):
timer = MockTimer()
resp = main(timer)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。