小编var*_*eep的帖子

我无法模拟 ServiceBusReceivedMessage 和 ServiceBusMessageActions

我们想为服务总线消息触发器编写单元测试。我们正在使用Azure.Messaging.ServiceBus nuget 包

     [FunctionName("serviebustrigger")]
  public async Task Run ([ServiceBusTrigger("xxxxtopic", "xxxxsubscription", Connection = "Abs-Connection", AutoCompleteMessages = false)] ServiceBusReceivedMessage message, ServiceBusMessageActions messageActions)

    {
        _logger.LogInformation($"{nameof(Run)} execution started for MessageId:{{MessageId}}", message.MessageId);
        try
        {
                //some code
             await messageActions.CompleteMessageAsync(message);
        }
        catch (Exception ex)
         {
             await messageActions.DeadLetterMessageAsync(message);
         }
    }
Run Code Online (Sandbox Code Playgroud)

现在我想为上面的代码编写单元测试。但我无法模拟ServiceBusReceivedMessageServiceBusMessageActions ,因为它们具有内部构造函数。有人可以建议我更好的方法来编写单元测试

.net c# mocking azureservicebus azure-functions

21
推荐指数
1
解决办法
9392
查看次数

标签 统计

.net ×1

azure-functions ×1

azureservicebus ×1

c# ×1

mocking ×1