gpt4 book ai didi

asp.net-mvc - 有人用过 Steve Sanderson 的 MvcIntegrationTestFramework 吗?

转载 作者:行者123 更新时间:2023-11-28 19:41:32 26 4
gpt4 key购买 nike

我正在寻找其他方法来测试 ASP.NET MVC 应用程序并遇到了 Steve Sanderson 的 MvcIntegrationTestFramework .该方法看起来很有前途,但我想知道是否有人可以分享任何实际经验。

最佳答案

我从中得到了一些非常好的结果。我不在乎这里的其他人怎么说需要测试 View ,只要将第一行代码添加到 View 中,即使代码严格与表示相关,也会引入潜在的错误编写自动化测试是个好主意。我的主要兴趣是尽可能多地捕获白屏和蓝屏异常/错误。为此,我一直在使用 Steven 的介绍性博客文章中的片段来确保页面正确呈现而不会引发任何异常:

Assert.IsTrue(result.ResponseText.Contains("<!DOCTYPE html"));

我在这个框架中看到的小陷阱可能是:

  • 如果您的网站在 View 和操作方法之间进行一些非常复杂的模型绑定(bind),您可能会发现自己创建了一些非常大的 NameValueCollections,例如本例(一个实际采用 LogonModel View 模型对象的操作方法),因为我看不到任何通过使用此框架将任何复杂的 View 模型对象类型传递到您的操作方法的方法:

var result = browsingSession.ProcessRequest("/account/logon", HttpVerbs.Post, new NameValueCollection
{
{“用户名”,“我的名字”},
{“密码”,“我的密码”},
{"returnUrl", "/home/myActionMethod"}
});

  • 执行 browsingSession.ProcessRequest("url") 会创建一个应用程序主机/上下文,它使用您正在测试的项目中的配置实际执行您正在测试的 Web 代码。这意味着测试运行得有点慢,并且可能会修改真实数据,因为我没有看到一种快速简便的方法可以通过使用内置的任何工具将被测 Web 项目中的数据访问存储库换成假版本测试框架。换句话说,您可能需要使用一些基于 web.config 的方法来滚动您自己的。

关于asp.net-mvc - 有人用过 Steve Sanderson 的 MvcIntegrationTestFramework 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1273502/

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