测试ASP.NET MVC网站

Joh*_*oge 6 asp.net-mvc mstest

我正在使用具有图像上传功能的MVC网站,我想编写一个将上传图像的测试.

我创建了一个名为TestImage.jpg的图像,并将Copy to Output设置为"Copy if Newer".在我的测试中,我尝试使用以下代码加载它:

System.Drawing.Image testImage = System.Drawing.Image.FromFile(@"TestImage.jpg");
Run Code Online (Sandbox Code Playgroud)

"复制到输出"不应该将其复制到运行测试的同一目录中吗?如果没有,我怎样才能找到它被复制到的位置?最好的是某种项目根相对路径,所以我可以随意移动解决方案而不会破坏.

Mar*_*ann 16

在MSTest中,框架将所有.dll复制到名为TestResults的文件夹中.不幸的是,它只将.dlls,.pdbs和.configs从输出文件夹复制到TestResults文件夹,因此不会复制您的文件.

要复制这些文件,您需要

  • DeploymentItem属性添加到相关测试中
  • 通过在"部署"选项卡中添加适当的文件来编辑.testrunco​​nfig文件

更好的选择是将测试专用文件作为嵌入式资源嵌入测试中,然后直接从资源流中读取它们.


Han*_*sir 1

在解决方案资源管理器中的解决方案项目下,双击 LocalTestRun.testrunco​​nfig 转到部署并添加图像

http://img17.imageshack.us/img17/5219/sanstitrelca.jpg