敏捷开发的必要技巧10:验收测试(Acceptance Test)

2024-01-08 14:32

本文主要是介绍敏捷开发的必要技巧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.删除系统里面已有的参会者信息,防止p001p002p004已经存在。<o:p></o:p>

  3.运行系统,将上面的文件导入到数据库里面。<o:p></o:p>

  4.检查系统是不是正确的导入了文件。这里面,我们肯定有一个用户例事是让用户输入一个参会者的ID,然后系统显出这个参会者的所有信息。我们可以先实现这个用户例事,然后输入p001,看看系统会不会显示p001的正确信息(123456Mary Lam等等),然后再输入p002p004<o:p></o:p>

  5.检查系统有没有发邮件。我们可以联系MaryJohnPaul,确认一下他们有没有收到邮件,邮件里面的内容是不是正确的。<o:p></o:p>

<o:p> </o:p>

  这样的测试就叫“验收测试”或者“功能测试”。这样的测试只是测试系统的外部行为,忽略系统里面有哪此类,哪些模块。


        具体的内容在附件里面的pdf,请下载观看详细内容。

这篇关于敏捷开发的必要技巧10:验收测试(Acceptance Test)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/583777

相关文章

Redis多种内存淘汰策略及配置技巧分享

《Redis多种内存淘汰策略及配置技巧分享》本文介绍了Redis内存满时的淘汰机制,包括内存淘汰机制的概念,Redis提供的8种淘汰策略(如noeviction、volatile-lru等)及其适用场... 目录前言一、什么是 Redis 的内存淘汰机制?二、Redis 内存淘汰策略1. pythonnoe

基于Python开发电脑定时关机工具

《基于Python开发电脑定时关机工具》这篇文章主要为大家详细介绍了如何基于Python开发一个电脑定时关机工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 简介2. 运行效果3. 相关源码1. 简介这个程序就像一个“忠实的管家”,帮你按时关掉电脑,而且全程不需要你多做

怎么关闭Ubuntu无人值守升级? Ubuntu禁止自动更新的技巧

《怎么关闭Ubuntu无人值守升级?Ubuntu禁止自动更新的技巧》UbuntuLinux系统禁止自动更新的时候,提示“无人值守升级在关机期间,请不要关闭计算机进程”,该怎么解决这个问题?详细请看... 本教程教你如何处理无人值守的升级,即 Ubuntu linux 的自动系统更新。来源:https://

Java中的Opencv简介与开发环境部署方法

《Java中的Opencv简介与开发环境部署方法》OpenCV是一个开源的计算机视觉和图像处理库,提供了丰富的图像处理算法和工具,它支持多种图像处理和计算机视觉算法,可以用于物体识别与跟踪、图像分割与... 目录1.Opencv简介Opencv的应用2.Java使用OpenCV进行图像操作opencv安装j

将Python应用部署到生产环境的小技巧分享

《将Python应用部署到生产环境的小技巧分享》文章主要讲述了在将Python应用程序部署到生产环境之前,需要进行的准备工作和最佳实践,包括心态调整、代码审查、测试覆盖率提升、配置文件优化、日志记录完... 目录部署前夜:从开发到生产的心理准备与检查清单环境搭建:打造稳固的应用运行平台自动化流水线:让部署像

基于Qt开发一个简单的OFD阅读器

《基于Qt开发一个简单的OFD阅读器》这篇文章主要为大家详细介绍了如何使用Qt框架开发一个功能强大且性能优异的OFD阅读器,文中的示例代码讲解详细,有需要的小伙伴可以参考一下... 目录摘要引言一、OFD文件格式解析二、文档结构解析三、页面渲染四、用户交互五、性能优化六、示例代码七、未来发展方向八、结论摘要

Java 枚举的常用技巧汇总

《Java枚举的常用技巧汇总》在Java中,枚举类型是一种特殊的数据类型,允许定义一组固定的常量,默认情况下,toString方法返回枚举常量的名称,本文提供了一个完整的代码示例,展示了如何在Jav... 目录一、枚举的基本概念1. 什么是枚举?2. 基本枚举示例3. 枚举的优势二、枚举的高级用法1. 枚举

不删数据还能合并磁盘? 让电脑C盘D盘合并并保留数据的技巧

《不删数据还能合并磁盘?让电脑C盘D盘合并并保留数据的技巧》在Windows操作系统中,合并C盘和D盘是一个相对复杂的任务,尤其是当你不希望删除其中的数据时,幸运的是,有几种方法可以实现这一目标且在... 在电脑生产时,制造商常为C盘分配较小的磁盘空间,以确保软件在运行过程中不会出现磁盘空间不足的问题。但在

如何测试计算机的内存是否存在问题? 判断电脑内存故障的多种方法

《如何测试计算机的内存是否存在问题?判断电脑内存故障的多种方法》内存是电脑中非常重要的组件之一,如果内存出现故障,可能会导致电脑出现各种问题,如蓝屏、死机、程序崩溃等,如何判断内存是否出现故障呢?下... 如果你的电脑是崩溃、冻结还是不稳定,那么它的内存可能有问题。要进行检查,你可以使用Windows 11

在 VSCode 中配置 C++ 开发环境的详细教程

《在VSCode中配置C++开发环境的详细教程》本文详细介绍了如何在VisualStudioCode(VSCode)中配置C++开发环境,包括安装必要的工具、配置编译器、设置调试环境等步骤,通... 目录如何在 VSCode 中配置 C++ 开发环境:详细教程1. 什么是 VSCode?2. 安装 VSCo