摘要:
根据以往软件测试经验,对数据库测试的内容和方法,进行了详细的分析,阐
明了数据库测试在软件开发中的重要性。
Abstract: According to the experience of software testing, the paper analyzes the content and
method of database testing in detail, clarifies the importance of database testing in software
development.
关键词:
数据库测试;性能测试;DataFactory
Key words: database test;performance test;DataFactory
中图分类号:
TP311 文献标识码:A 文章编号:1006-4311(2012)15-0206-02
0 引言
数据库系统的开发在应用软件开发中所占的比重越来越大,随之而来的问题也越来越
突出。比如:数据冗余,功能和性能方面存在的问题已经严重影响应用软件的使用。软件测
试人员往往重视对软件功能和编码的测试,而忽略对软件性能,特别是数据库访问并发测
试。因为,他们固有的思想中认为数据库设计存在问题对系统性能影响不大,或从根本上忽
略了数据库在软件开发中的地位,直到出现了问题,才想到对数据库的测试,但往往也是
仅仅通过对编码的测试工作中捎带对数据库进行一定的测试,这远远是不够的。目前,中铁
网上订票系统在大用户同时在线订票中系统频频瘫痪,就是最好的佐证。
所以,在应用软件的测试工作中,应该将数据库作为一个独立的部分进行充分的测试,
这样才可以得到应用软件所需要的性能优化的数据库。那么,应该对哪些内容进行测试,如
何进行测试呢?
1 数据库设计的测试
数据库是应用的基础,其性能直接影响应用软件的性能。为了使数据库具有较好的性能,
需要对数据库中的表进行规范化设计。规范化的范式可分为第一范式、第二范式、第三范式 、
BCNF 范式、第四范式和第五范式。一般来说,逻辑数据库设计应满足第三范式的要求,这是
因为满足第三范式的表结构容易维护,且基本满足实际应用的要求。因此,实际应用中一般
都按照第三范式的标准进行规范化。但是,规范化也有缺点:由于将一个表拆分成为多个表,
在查询时需要多表连接,降低了查询速度。故数据库设计的测试包括前期需求分析产生数据
库逻辑模型和后期业务系统开发中的测试两部分(这里指的是后者),我在这里称为实体
测试。
数据库是由若干的实体组成的,包括(表,视图,存储过程等),数据库最基本的测
试就是实体测试,通过对这些实体的测试,可以发现数据库实体设计得是否充分,是否有
遗漏,每个实体的内容是否全面,扩展性如何。