【发布时间】:2012-12-31 09:43:36
【问题描述】:
我是行为驱动开发的新手,我正在努力学习它。我使用 MSpec 和 Watin 进行验收测试,使用 MSpec 进行 ASP.Net MVC 4 的单元测试。我有一个简单的用户注册场景。
当用户输入用户名、密码、邮箱等并点击注册按钮时
它应该验证电子邮件地址
它应该检查用户名是否已经不存在
它应该注册用户
它应该发送一封欢迎电子邮件
它应该重定向到主页
有些我想测试的东西无法使用 Watin 进行测试,例如发送电子邮件、检查用户是否存在等。这些将是控制器测试的一部分。这是否意味着我的验收测试只会是当用户注册时他应该被重定向到主页?如何将整个过程分解为测试?
如果这些检查是在各种测试和不同级别中实现的,那么我如何获得一份 MSpec 提供的摘要报告,说明我已经实现了所有功能?我对人们如何打破这些任务以及他们如何获得集体报告等感到有些困惑。
【问题讨论】:
-
我认为答案值得一本书 :) - 尝试阅读 Growing Object-Oriented Software, Guided by Tests。它没有谈论 BDD,但它描述了最好的 TDD 方法(包括验收测试)。这是一本了不起的书。以防万一,本书使用 Java 作为示例,但理解它们或将它们翻译成另一种语言应该不会太难。
标签: unit-testing tdd bdd watin mspec