asp.net-mvc - 如何在 web api 控制器中对 void 方法执行单元测试
问题描述
嗨,我在 webAPI 中有一个更新方法,这是一个 void 方法,我想对该方法执行单元测试。我该怎么做?
未找到任何解决方案。
下面是 webapi 控制器方法:-
[HttpPut]
public void UpdatePushNotification(PushNotificationQueueBO pushnotificationqueueBO)
{
PushNotificationQueueBO.UpdatePushNotificationQueue(pushnotificationqueueBO);
}
以下是上述方法的单元测试用例
[TestMethod]
public void UpdatePushNotificationQueue_ShouldUpdate()
{
var item = GetDemoPushNotificationQueue();
var controller = new PushNotificationQueueController();
var result = controller.UpdatePushNotification(item) as ;
Assert.IsNotNull(result);
}
我想要我在之后写什么
var result = controller.UpdatePushNotification(item) as ???
解决方案
您可以用不同的方式测试 void 函数,这取决于 void 方法的作用。例如,如果 void 方法增加其类的属性的数值,那么您可以在测试中使用该属性。在您的情况下,您的 void 方法执行此操作;
PushNotificationQueueBO.UpdatePushNotificationQueue(pushnotificationqueueBO);
首先,确定此操作的作用和影响。例如,如果此方法的操作对队列对象执行操作,那么您可以测试该对象作为 void 方法的结果。
推荐阅读
- python - 2 名玩家以 6 个标记开始。每轮掷出 3 个标准骰子。找到游戏的获胜者并估计玩家 2 获胜的概率
- powerbi - 创建一个返回多列 Power BI 的度量
- javascript - 停止在 Javascript 中导入时初始化的模块
- linux - 涉及符号链接时如何获取脚本目录的目录?
- java - 规范对象设计模式的构建
- visual-studio-templates - Visual Studio 模板 - 如何将 .gitignore 文件复制到 .sln 文件所在的根文件夹?
- video - 在同一视频文件的连接部分期间,输出流 0:0 中的非单调 DTS
- lambda - Terraform 12 - 无法将 [count.index] 放入 output.tf
- java - 我们必须在 java 中创建一个类 Final 的项目相关场景是什么?
- linux - 从 /proc/meminfo 文件中提取字段