使用VisualStudio2005TeamSystem进行单元测试[2]

发表于:2010-05-12来源:作者:点击数: 标签:单元
使用VisualStudio2005TeamSystem进行单元测试[2] 软件测试 UI: “您使用 XML 文档了吗?” 中间层: “在构造函数中,但许多方法都不使用。” UI: “显示如何创建、执行并删除对象的示例代码,怎么样?” 中间层: “我已经附加了一个示例 WinForms 应用程序

  使用VisualStudio2005TeamSystem进行单元测试[2]   软件测试

  UI:

  “您使用 XML 文档了吗?”

  中间层:

  “在构造函数中,但许多方法都不使用。”

  UI:

  “显示如何创建、执行并删除对象的示例代码,怎么样?”

  中间层:

  “我已经附加了一个示例 WinForms 应用程序(从我的工作区),它应该能够提供一些您所需的内容……,虽然它不在 Microsoft Visual SourceSafe 中。”

  在考虑如何进行这样有趣的 项目之后,您打定了主意,决定检验中间层的单元测试套件。在深入钻研该代码之后,您注意到该窗体有两个未标记的文本框,以及三个标记为 button1、button2 和 button3 的按钮(幸运的话,它们将排列在窗体上)。接下来,在查看与这些按钮相关的事件之后,您认识到这些代码都未经注释,并且数据变量都被命名为 x、y、z。如果幸运,您还会注意到 button1 和 button2 执行该对象的 Save() 方法,而 button3 执行 Delete() 方法。执行时,您会接收到很多 System.Exception 错误,这是因为遗漏了很多配置设置。

  这显然是一个特例,我希望多数开发团队不要进行这一试验,下面让我们看一下该方案中“单元测试”遇到的问题:

  "

  这种形式的单元测试代码不是结构化的:代码充斥到按钮单击事件中并且难以编译。

  "

  这种形式的单元测试代码记录得不太好。

  "

  这种形式的单元测试并不基于“已知”为好或坏的数据 — 它完全依赖于输入到那些未标记的文本框的内容。

  "

  单元测试代码不能自动重复,它基于输入的代码。

原文转自:http://www.ltesting.net