gpt4 book ai didi

c# - 如何对返回 PartialViewResult 的 MVC 操作进行单元测试?

转载 作者:太空狗 更新时间:2023-10-29 22:24:31 25 4
gpt4 key购买 nike

我有一个 Action 如下:

public PartialViewResult MyActionIWantToTest(string someParameter) 
{
// ... A bunch of logic
return PartialView("ViewName", viewModel);
}

当我检查结果时,它有一些属性,但它们要么为 null,要么为空。唯一有任何内容的属性是 ViewEngineCollection,它不包含任何特定于我的方法的内容。

有没有人有一些测试 PartialViewResult 的示例代码?

最佳答案

假设您有一个看起来像这样的 Action:

public PartialViewResult MyActionIWantToTest(string someParameter)
{
var viewModel = new MyPartialViewModel { SomeValue = someParameter };
return PartialView("MyPartialView", viewModel);
}

注意:MyPartialViewModel 是一个只有一个属性的简单类 - SomeValue

NUnit 示例可能如下所示:

[Test]
public void MyActionIWantToTestReturnsPartialViewResult()
{
// Arrange
const string myTestValue = "Some value";
var ctrl = new StringController();

// Act
var result = ctrl.MyActionIWantToTest(myTestValue);

// Assert
Assert.AreEqual("MyPartialView", result.ViewName);
Assert.IsInstanceOf<MyPartialViewModel>(result.ViewData.Model);
Assert.AreEqual(myTestValue, ((MyPartialViewModel)result.ViewData.Model).SomeValue);
}

关于c# - 如何对返回 PartialViewResult 的 MVC 操作进行单元测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4485685/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com