有什么建议么?在 C# 中使用 Visual Studio。

有没有可以使用的特定工具或方法来解决这个问题?

更新:

抱歉,我应该更具体一点。我正在使用 ASP.Net 2.0,并且一直在寻找像 jUnit for Java 这样的工具。我查看了 NUnit 和 NUnitAsp,看起来非常有前途。我什至不知道 Visual Studio Pro 有测试套件,所以我将查看所有这些选项(我今年夏天刚刚开始使用 Visual Studio/Asp.net/C#)。

有帮助吗?

解决方案

男孩,这是一个非常普遍的问题。我会尽力而为,但要做好眼睁睁看着我错失良机的准备。

假设

  1. 您使用的是 ASP.NET,而不是普通的 ASP
  2. 您并不是真的想测试您的网页,但是 逻辑 在他们后面。对实际的 .ASPX 页面进行单元测试相当痛苦,但有框架可以做到这一点。 单元天冬氨酸 是一。

要做的第一件事是组织(或计划)您的代码,以便对其进行测试。当时最流行的两种设计模式似乎是 MVP 和 MVC。两者分开 逻辑 应用程序远离 看法 这样您就可以在视图(网页)不妨碍您的情况下测试逻辑。

MVP 或 MVC 都会有效。MVC的优点是拥有微软框架 几乎准备出发.

一旦选择了鼓励可测试性的框架模式,您就需要使用单元测试工具。 单位 是一个很好的起点。Visual Studio Professional 有一个 测试套件构建了它, ,但是 NUnit + 测试驱动网 也可以在 IDE 中运行。

这有点像霰弹枪式的信息爆炸。我希望有一些,如果它命中的话。实用书架有一个 涵盖该主题的好书.

其他提示

大约一年前,Podcast 上有一个截屏视频系列,对 ASP.NET 中的 MVP 实现进行了非常好的介绍。通过这种方式实现,单元测试可以更自然地进行。

http://polymorphicpodcast.com/shows/mv-patterns/

这些框架可用于 一体化 测试,但他们不能提供单元测试,即测试与持久性、业务逻辑等隔离的视图。

为了 单元 测试 Asp.Net Webforms 以及 MVC,您可以使用 伊沃娜. 。例如,您可以模拟数据库访问并验证模拟的记录是否显示在数据网格中。或者,您可以模拟会员资格提供商并测试登录场景,而无需导航到登录页面并输入您的凭据,就像集成测试一样。

等待 是我发现的最好的。它集成到 Visual Studio 单元测试或 nunit 中,您可以在浏览器中执行几乎所有您需要的操作(单击链接、提交表单、查找文本/图像等),而且它是用 .net 编写的,因此您不需要安装 ruby​​(就像安装 watir 一样,它仍然是一个很棒的工具)

看一眼 http://selenium.openqa.org/ 它提供了一种很好的自动化方法来构建连接到浏览器的单元测试。有一个很好的 Firefox 插件用于记录测试,并且可以利用几乎任何单元测试框架。上个月,我们在本地用户组会议上进行了演示/演示,看起来棒极了。

最好的选择是将模型逻辑与表示分离,并使用 NUnit 或类似工具对模型进行彻底的单元测试。测试用户与网页的交互可能很繁琐。

如果您确实想对用户与网页的交互进行单元测试,那么上述提到的一些工具(例如 waitn)似乎不错,我听说过的一个补充是

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top