background image

  摘要:

 根据以往软件测试经验,对数据库测试的内容和方法,进行了详细的分析,阐

明了数据库测试在软件开发中的重要性。

 

  

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 范式、第四范式和第五范式。一般来说,逻辑数据库设计应满足第三范式的要求,这是

因为满足第三范式的表结构容易维护,且基本满足实际应用的要求。因此,实际应用中一般

都按照第三范式的标准进行规范化。但是,规范化也有缺点:由于将一个表拆分成为多个表,

在查询时需要多表连接,降低了查询速度。故数据库设计的测试包括前期需求分析产生数据

库逻辑模型和后期业务系统开发中的测试两部分(这里指的是后者),我在这里称为实体

测试。

 

  数据库是由若干的实体组成的,包括(表,视图,存储过程等),数据库最基本的测

试就是实体测试,通过对这些实体的测试,可以发现数据库实体设计得是否充分,是否有

遗漏,每个实体的内容是否全面,扩展性如何。