计02  001500  郭  杰
001485  孔伟桐
001482  王郭明
本文档建立软件实现细节,包括控制机制。
(1)模块接口设计:可用系统结构图(或构件图)描述
1.用户登陆/注册、提交订书单模块
(2)模块主要算法设计:可用PDL(或活动图+顺序图(协作图))
活动图:
1.用户登陆、提交订书单活动图
计02  001500  郭  杰
001482  王郭明
001485  孔伟桐
针对主要模块,从接口上进行检验/查错。(灰盒测试) 
u                 针对系统结构的控制层次,确定模块测试的顺序和资源
u                  确认每一个算法实现的前置条件和后置条件,设计相应测试用例,特别注重非法的输入条件      
1. 用户注册/登陆/修改信息模块 
| 输入条件 | 模块测试项 | 
| 用户登陆 | 1. 能在数据库中正确查找该用户名 (1) 2. 若存在该用户名且密码正确,应能使用户登陆 (2) 3. 若不存在该用户名或密码错误,应能给出错误提示 (3) | 
| 用户注册 | 1.能在数据库中正确查找该用户名是否已存在 (4) 2.若用户名不存在,数据库应能正确添加该用户 (5) 3.若用户名已存在,应能给出错误提示 (6) | 
| 用户修改信息 | 数据库相应信息应更新为用户的输入 (7) | 
测试用例:
| 编号 | 测试用例 | 用例覆盖的测试项 | 
| 1.1 | 用户信息数据库中不存在用户”Jack”, 用该用户名登陆; 或存在用户”Jack”,密码为”greatJack”,但用Jack用户名登陆所用密码不是”greatJack”。 | (3) | 
| 1.2 | 用户信息数据库中还没有用户”Jack”,用“Jack”名注册。 | (4)(5) | 
| 1.3 | 用户信息数据库中已存在用户”Jack”,密码为”greatJack”,用该用户名和密码登陆。 | (1)(2) | 
| 1.4 | 用户信息数据库中已有用户”Jack”,用“Jack”名注册。 | (6) | 
| 1.5 | 用户信息数据库中已存在用户”Jack”,密码为”greatJack”,用该用户名和密码登陆后,修改某些信息,并修改密码为”greatJacky”。 | (7) | 
2. 用户选书/提交订单模块   
| 输入条件 | 模块测试项 | 
| 用户浏览图书 | 用户浏览到的图书应在库存数据库中有记录 (1) | 
| 用户搜索图书 | 可分类搜索,可按照书名关键字、出版年、作者等进行搜索 (2) | 
| 用户将图书放入购物车 | “购物车”中应正确记录用户”放入”的图书信息 (3) | 
| 用户下订单 | 订单中正确记录用户ID、所购书的书号和购买的数量等信息 (4) (以下进入“检查订单子模块”) | 
测试用例:(接用例1.5)
| 编号 | 测试用例 | 用例覆盖的测试项 | 
| 2.1 | 点击某本书的图片链接。 | (1) | 
| 2.2 | 填写所查内容后点击“立即查询”执行查询; 或点击“高级查询”按钮进入高级查询页面,填写所查内容后执行查询。 | (2) | 
| 2.3 | 点击某本书的“购物车”按钮; 或点击某本书的图片链接后,在弹出的页面中点击“放入购物车”按钮。 | (3) | 
| 2.4 | 点击某本书的“购买”按钮; 或点击某本书的图片链接后,在弹出的页面中点击“我要立即购买”按钮。 | (4) | 
3. 销售模块
3.1 检查订单子模块       
| 输入条件 | 模块测试项 | 
| 用户提交订单 | 在库存数据库中检索订单中图书的存量,看是否能满足订单 (1) | 
| 用户订单不可满足 | (进入“订单不可满足子模块”) | 
| 用户订单可满足 | (进入“订单可满足子模块”) | 
   
测试用例:(接用例2.4)
| 编号 | 测试用例 | 用例覆盖的测试项 | 
| 3.1.1 | 对用例2.4中下的订单,在库存数据库中搜索核对,得到核对结果。 (若订单可满足则进入“订单可满足子模块”,否则进入“订单不可满足子模块”) | (1) | 
3.2 订单不可满足子模块      
| 输入条件 | 模块测试项 | 
| 用户订单不可满足 | 1. 程序应能产生暂存订单 (1) 2. 程序应能发出订货通知 (2) | 
| 接到到货通知 | 核对到货通知和暂存订单,判断暂存订单是否可满足 (3) | 
| 暂存订单不可满足 | (进入“订单不可满足子模块”) | 
| 暂存订单可满足 | (进入“订单可满足子模块”) | 
   
测试用例:(接用例3.1.1)
| 编号 | 测试用例 | 用例覆盖的测试项 | 
| 3.2.1 | 已判定订单不可满足,程序应得到正确的暂存订单和订货通知。 | (1),(2) | 
| 3.2.2 | (进入“采购模块”,得到“到货通知”) 核对到货通知和暂存订单,判断暂存订单是否可满足。 (若可满足则进入“订单可满足子模块”,否则进入“订单不可满足子模块”) | (3) | 
3.3 订单可满足子模块
| 输入条件 | 模块测试项 | 
| 用户订单可满足 | 程序产生发货票(也是收款单) (1) | 
| 用户购书 | 1.图书库存数据库中,修改库存数量 (2) 2.图书库存数据库中,修改图书销售历史和推荐程度 (3) 3.用户信息数据库中,增加用户经验值 (4) 4.收款单为有效 (5) | 
   
测试用例:(接用例3.1.1或用例3.2.2)
| 编号 | 测试用例 | 用例覆盖的测试项 | 
| 3.3.1 | 已判定订单可满足,程序应得到正确的发货票。 | (1) | 
| 3.3.2 | 假设用户购书,得到了有效收款单,程序应对相应数据库做出相应更新。 | (2)(3)(4)(5) | 
4. 采购模块
| 输入条件 | 模块测试项 | 
| 接到订货通知 | 程序进行分类合计,产生订货单(发给厂商) (1) | 
| 接到厂方发货单 | 程序核对发货单和原订单 (2) | 
| 发货单核对正确 | 1. 图书库存数据库中,对库存数量等作相应修改 (3) 2. 程序发出到货通知 (4) 3. 程序产生付款单,厂商确认后付款单为有效 (5) | 
   
测试用例:(接用例3.2.2)
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] 下一页