集成测试连接到服务总线队列的 Azure 函数应用程序

Integration testing Azure function app that connect to Service Bus queue

我开发了一个由 Http 请求触发的函数应用程序,并在服务总线上查看相应队列(通过连接字符串连接到它)以获取具有特定参数值的消息,然后删除它们。

除了开发时的常规测试外,创建集成测试并在 CI/CD 进程中 运行 它们会很棒,但我不知道如何模拟队列功能应用程序也连接(创建一个驻留在服务总线上的测试队列仅用于测试目的不是一个选项)。有人知道如何进行吗?

其中一个选项是在执行集成测试套件并在结束时将其拆除之前,在开始时提供一个临时的 Azure 服务总线命名空间。命名空间将是标准层命名空间。可以使用 ARM 模板、PowerShell 或 Azure CLI 完成配置和拆除。

这种方法的另一个好处是安全。每个测试套件一个命名空间 运行 将确保来自外部贡献者的 PR 可以安全执行,以防您的存储库是 public.