如何从 JsonResult 对象获取实际的 JSON 进行单元测试?
我想知道如何在单元测试中获取 JsonResult 并获取字符串化的 JSON 来验证它。我已经看到了使用动态类型来验证数据的方法,但我需要实际验证数据是否正确转换为字符串。
这是我创建它的代码:
JsonResult result = new JsonResult {Data = new {EncryptedValue = value}};
我传入的 value 对象实际上是我编写的一个类型,它可以接受一个值(int、double、DateTime),当转换为字符串时,它会加密该值,我需要确保 JsonResult 在字符串化时将其正确转换为字符串。
I am wondering how I can take a JsonResult in a unit test and get the stringified JSON to validate it. I have seen ways to use dynamic types to verify the data, but I need to actually verify the data gets converted to strings appropriately.
Here is my code where I create it:
JsonResult result = new JsonResult {Data = new {EncryptedValue = value}};
The value object I am passing in is actually an type I wrote that can take a value (int, double, DateTime) and when cast to a string, it encrypts the value and I need to ensure that the JsonResult is casting it to a string correctly when stringifying.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
只需使用 result.Data
http://www.heartysoft。 com/ASPNET-MVC-单元测试-JsonResult-返回匿名类型
Just use result.Data
http://www.heartysoft.com/ASPNET-MVC-Unit-Testing-JsonResult-Returning-Anonymous-Types
为此,您需要模拟 HttpContext 和 ControllerContext。请参阅下面的链接。
http://blogs .msdn.com/b/miah/archive/2009/02/25/unit-testing-the-mvc-jsonresult.aspx
You would need to mock the HttpContext and ControllerContext for that. See the link below.
http://blogs.msdn.com/b/miah/archive/2009/02/25/unit-testing-the-mvc-jsonresult.aspx
您可以通过多种方式做到这一点,这是很有可能的。
这篇博文 编写并解释了自定义测试的非常好的实现。
在这篇文章中,作者使用了自定义类型正在返回并执行相同的操作。
You can do this in a number of ways, it is very possible.
This blog post has a very nice implementation of custom tests written and explained.
In this post the author uses a custom type which is being returned and does the same thing.