收藏本站 收藏本站
积木网首页 - 软件测试 - 常用手册 - 站长工具 - 技术社区
软件测试 > LoadRunner > 正文

首页 | 领域细分: 游戏测试 安全测试 手机测试 Web测试 | 技术研究: 单元测试 入门教程 用例设计 性能测试 功能测试 | 测试职场: 面试精选 职场发展 面试试题

测试管理: 配置及流程 - 需求管理 - 质量验收 - 缺陷管理 - 其它管理相关 | 开发语言: PHP技巧 - PHP基础 - PHP实例 - PHP错误代码

测试工具: LoadRunner JiRa QuickTestPro RoBot WinRunner TestDirector 其它测试工具 | 数据库: Mysql数据库 Oracle数据库 CSS/DIV基础 HTML基础

数据库单元测试实例

来源:互联网 日期:2012-07-31 07:00
我自己编写了一个数据库单元测试的实例,该SP实现的功能虽然很简单,但麻雀虽小,五胀具全,供大家参考和讨论.

use pubs
go
create procedure test_exemple
@Begdate varchar(10),
@Enddate varchar(10)
as
begin
select * from sales
where ord_date >@Begdate
and ord_date<@Enddate
End

上面SP完成了按照起始日期查询PUBS库里面的sales表记录的
那我们该如何来测试呢?请看下面的测试思路和过程
做代码的codeview
发现几个问题
1.关键字一般都应该大写
2.当你想在SELECT子句中列出所有的COLUMN时,使用动态SQL列引用 ‘*’ 是一个方便的方法.
不幸的是,这是一个非常低效的方法. 实际上,ORACLE在解析的过程中, 会将’*’ 依次转换成所有的列名,
这个工作是通过查询数据字典完成的, 这意味着将耗费更多的时间
3.应该在sales前面加上DBO做为表的前缀,sales默认的表属主,加上会提高效率,否则会先到当前用户去查找
准备测试用例进行动态测试
4.日期所定义的长度10位不够
三组
第一组:@Begdate='1993-03-11 00:00:00.000',@Enddate'1994-09-14 00:00:00.000'
下面执行该测试用例
EXEC test_exemple '1993-03-11 00:00:00.000','1994-09-14 00:00:00.000'
第二组:EXEC test_exemple '1994-09-14 00:00:00.000 ','1994-09-14 00:00:00.000'
这一组出现了问题,因为数据库在这个启始日期是有记录的,该存储过程是没有查询出记录,需要调整
第三组:EXEC test_exemple '2000-05-12','2000-05-12'

备注:如果大家要调试先安装SQL SERVER,打开查询分析器
所以该SP有很多问题需要调整,希望大家多找出BUG,进行完善。。。。期待中
至于C/C++/JAVA开发的函数测试过程和思路给以上很类似,有时间会给大家整理例子,谢谢大家

本周排行

别人正在浏览

强悍的草根IT技术社区,这里应该有您想要的!
Copyright © 2010 Gimoo.Net. All Rights Rreserved  京ICP备05050695号