本文主要是介绍敏捷开发的必要技巧10:验收测试(Acceptance Test),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
第10章验收测试.rar 第10章验收测试.rar |
第10章 验收测试(Acceptance Test)
我们是不是正确的实现了一个用户例事<o:p></o:p>
(用户例事:user story,在第8章有讲)<o:p></o:p>
<o:p> </o:p>
假设这个项目的客户是一个会议展览的组织者。他们希望我们开发一款软件,可以帮助他们管理会议的所有参会者信息。我们编制好发布计划,在目前的迭代周期中,我们要实现4个用户例事。下面是其中的一个用户例事:<o:p></o:p>
<o:p></o:p>
名称:导入参会者信息<o:p></o:p>
事件:<o:p></o:p>
1.一个用户让系统读取一个记录了一批参会者信息的文本文件。里面的信息有ID,密码,名称,地址跟邮箱。<o:p></o:p>
2.系统将这些参会者的信息保存下来。之后,只要用户输入一个参会者的ID,系统就可以取出对应的参会者信息。<o:p></o:p>
3.系统导入完成后,各给每个参会者发送一封邮件,里面包含该参会者的ID和密码。<o:p></o:p>
<o:p> </o:p>
我们开始询问客户这个用户例事的细节。比如:<o:p></o:p>
这个文本文件的格式是什么样的?假定客户说,文本文件里面的每行字符串包含一个参会者。这个参会者每项数据会用制表符隔开。<o:p></o:p>
ID,密码,姓名,地址还有邮箱都是一定会出现在文本文件里面的吗?假定客户说有些参会者的地址会留空,其他数据都要出现。否则,系统将跳过这行。<o:p></o:p>
如果参会者的ID已经存在的话怎么办?假定客户说,那这行会被跳过。 <o:p></o:p>
等等。<o:p></o:p>
<o:p> </o:p>
我们问完客户,用CRC卡或者其他的方法来快速组织跟讨论设计,写代码,同时改进设计。假定两天以后,我们完成了所有的代码,代码结构的设计也很合理了。好,现在我们还要做一件重要的事件:测试我们的代码是不是正确的实现了用户例事。<o:p></o:p>
<o:p> </o:p>
怎么测试<o:p></o:p>
<o:p> </o:p>
怎么测试?比如,我们运行下面的“测试用例”:<o:p></o:p>
<o:p> </o:p>
测试用例1:导入参会者<o:p></o:p>
<o:p> </o:p>
1.创建下面这样的文件:<o:p></o:p>
p001 123456 Mary Lam abc mary@hotmail.com<o:p></o:p>
p004 888999 John Chan def john@yahoo.com<o:p></o:p>
p002 mypasswd Paul Lei ghi paul@excite.com<o:p></o:p>
<o:p> </o:p>
2.删除系统里面已有的参会者信息,防止p001,p002,p004已经存在。<o:p></o:p>
3.运行系统,将上面的文件导入到数据库里面。<o:p></o:p>
4.检查系统是不是正确的导入了文件。这里面,我们肯定有一个用户例事是让用户输入一个参会者的ID,然后系统显出这个参会者的所有信息。我们可以先实现这个用户例事,然后输入p001,看看系统会不会显示p001的正确信息(123456,Mary Lam等等),然后再输入p002和p004。<o:p></o:p>
5.检查系统有没有发邮件。我们可以联系Mary,John和Paul,确认一下他们有没有收到邮件,邮件里面的内容是不是正确的。<o:p></o:p>
<o:p> </o:p>
这样的测试就叫“验收测试”或者“功能测试”。这样的测试只是测试系统的外部行为,忽略系统里面有哪此类,哪些模块。
具体的内容在附件里面的pdf,请下载观看详细内容。
这篇关于敏捷开发的必要技巧10:验收测试(Acceptance Test)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!