敏捷开发的必要技巧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

相关文章

Python+wxPython开发一个文件属性比对工具

《Python+wxPython开发一个文件属性比对工具》在日常的文件管理工作中,我们经常会遇到同一个文件存在多个版本,或者需要验证备份文件与源文件是否一致,下面我们就来看看如何使用wxPython模... 目录引言项目背景与需求应用场景核心需求运行结果技术选型程序设计界面布局核心功能模块关键代码解析文件大

C++多线程开发环境配置方法

《C++多线程开发环境配置方法》文章详细介绍了如何在Windows上安装MinGW-w64和VSCode,并配置环境变量和编译任务,使用VSCode创建一个C++多线程测试项目,并通过配置tasks.... 目录下载安装 MinGW-w64下载安装VS code创建测试项目配置编译任务创建 tasks.js

CPython与PyPy解释器架构的性能测试结果对比

《CPython与PyPy解释器架构的性能测试结果对比》Python解释器的选择对应用程序性能有着决定性影响,CPython以其稳定性和丰富的生态系统著称;而PyPy作为基于JIT(即时编译)技术的替... 目录引言python解释器架构概述CPython架构解析PyPy架构解析架构对比可视化性能基准测试测

一文详解Python如何开发游戏

《一文详解Python如何开发游戏》Python是一种非常流行的编程语言,也可以用来开发游戏模组,:本文主要介绍Python如何开发游戏的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录一、python简介二、Python 开发 2D 游戏的优劣势优势缺点三、Python 开发 3D

基于Python开发Windows自动更新控制工具

《基于Python开发Windows自动更新控制工具》在当今数字化时代,操作系统更新已成为计算机维护的重要组成部分,本文介绍一款基于Python和PyQt5的Windows自动更新控制工具,有需要的可... 目录设计原理与技术实现系统架构概述数学建模工具界面完整代码实现技术深度分析多层级控制理论服务层控制注

Java中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例解析

《Java中的分布式系统开发基于Zookeeper与Dubbo的应用案例解析》本文将通过实际案例,带你走进基于Zookeeper与Dubbo的分布式系统开发,本文通过实例代码给大家介绍的非常详... 目录Java 中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例一、分布式系统中的挑战二

90%的人第一步就错了! 顺利登录wifi路由器后台的技巧

《90%的人第一步就错了!顺利登录wifi路由器后台的技巧》登录Wi-Fi路由器,其实就是进入它的后台管理页面,很多朋友不知道该怎么进入路由器后台设置,感兴趣的朋友可以花3分钟了解一下... 你是不是也遇到过这种情况:家里网速突然变慢、想改WiFi密码却不知道从哪进路由器、新装宽带后完全不知道怎么设置?别慌

基于Go语言开发一个 IP 归属地查询接口工具

《基于Go语言开发一个IP归属地查询接口工具》在日常开发中,IP地址归属地查询是一个常见需求,本文将带大家使用Go语言快速开发一个IP归属地查询接口服务,有需要的小伙伴可以了解下... 目录功能目标技术栈项目结构核心代码(main.go)使用方法扩展功能总结在日常开发中,IP 地址归属地查询是一个常见需求:

录音功能在哪里? 电脑手机等设备打开录音功能的技巧

《录音功能在哪里?电脑手机等设备打开录音功能的技巧》很多时候我们需要使用录音功能,电脑和手机这些常用设备怎么使用录音功能呢?下面我们就来看看详细的教程... 我们在会议讨论、采访记录、课堂学习、灵感创作、法律取证、重要对话时,都可能有录音需求,便于留存关键信息。下面分享一下如何在电脑端和手机端上找到录音功能

Python函数的基本用法、返回值特性、全局变量修改及异常处理技巧

《Python函数的基本用法、返回值特性、全局变量修改及异常处理技巧》本文将通过实际代码示例,深入讲解Python函数的基本用法、返回值特性、全局变量修改以及异常处理技巧,感兴趣的朋友跟随小编一起看看... 目录一、python函数定义与调用1.1 基本函数定义1.2 函数调用二、函数返回值详解2.1 有返