相关疑难解决方法(0)

单元测试文件上传,怎么样?

使用MVC3.NET我在控制器中有一个文件上传方法,可以使用以下签名正常工作 public ActionResult UploadFile(IEnumerable<HttpPostedFileBase> file)

如何使用NUnit对此进行单元测试?我环顾四周,每个人似乎都指向Moq,但我是单位测试新手,无法让Moq工作.

我找到了有趣的博客,例如:http://danielglyde.blogspot.com/2011/07/tdd-with-aspnet-mvc-3-moq-and.html但我很难弄清楚如何做同样的事情"伪造"文件上传,并且我也很谨慎,我现在设法找到的moq示例中的很多内容似乎已经弃用了代码.

我只想知道如何模拟HttpPostedFileBase,以便我可以使用Moq或其他方式测试我的上传代码 - 如果有人可以给我一些关于如何执行此操作的代码示例,我将非常感激.

以下代码取自其他示例:

var file = new Mock<HttpPostedFileBase>();
            file.Setup(f => f.ContentLength).Returns(1);
            file.Setup(f => f.FileName).Returns("test.txt");

controller.upload(file);
Run Code Online (Sandbox Code Playgroud)

我尝试编译时生成以下错误:

无法从'Moq.Mock'转换为'System.Web.HttpPostedFileBase'

我已经改变了方法,现在采用单个HttpPostedFileBase而不是IEnumerable,因为能够"模拟"一个是我试图关注的问题.

testing upload moq file asp.net-mvc-3

15
推荐指数
1
解决办法
1万
查看次数

标签 统计

asp.net-mvc-3 ×1

file ×1

moq ×1

testing ×1

upload ×1