导读:作者Rizwan Jafri是一名软件测试专家,他总结了自己在测试程序过程中一些经验,写了一篇文章《Database Testing–Practical Tips and Insight on How to Test Database》。在他看来,测试数据库可以从创建查询、查询数据表和从开发人员查询3个方式进行。
以下是文章摘要:
软件应用程序已经离不开数据库。无论是在Web、桌面应用、客户端服务器、企业和个人业务,都需要数据库在后端操作。同样的在金融、租凭、零售、邮寄、医疗领域中,数据库也是不可缺少的。
随着应用的复杂程度增加需要更强大和安全系数高的数据库才可以满足需求。为了满足高频率的应用程序事务(如银行或财务应用),数据库的安全性成为首要之重。
目前,市场中有很多活跃的数据库工具,例如MS-Access2010,MS SQL Server2008 r2,Oracle 10g,Oracle Financial,MySQL,PostgreSQL,DB2等等。它们在成本、可靠性、功能和安全性都有各自的优势。
下面为大家简单的介绍数据库中‘CRUD’所代表的操作。
C:创建——创建用户。
R:检索——执行检索视图操作。
U:更新——更新数据库信息。
D:删除——执行删除数据库操作。
普遍用户在操作数据时,都会用到以上四种操作。
数据库测试预备工作:
ACID属性
ACID,指数据库事务正确执行的四个基本要素的缩写。包含:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。在数据库测试期间必须测试这四个要素,确保正确。
数据完整性
考虑到不同模块的应用程序以不同的方式使用相同的数据,并执行对数据所有的CRUD操作。确保数据库中包含的数据尽可能地准确和一致的数据性质,这就是数据完整性。
业务准确性
数据库发展至今,已不再是单纯的用来存储记录。事实上,数据库系统已经发展成为强大的工具,为开发者们提供了足够的扩展支持。数据库系统比以前具有了更多的强大功能,例如参考完整性,关系约束,触发器和存储过程。
如何测试数据库:
创建查询
为了测试测试数据库正确和准确性。首先,测试人员要熟练掌握SQL和DML(数据库语言)语句。其次,测试人员应该掌握数据库的结构。如果满足这两个条件,即可放心测试。对于小、中型技术开发出的应用程序是个很好的测试方法。此外,如果程序相对的复杂,测试人员需要求助开发人员帮忙。但是我建议大家从初级开始测试,既有信心也能提高自己的SQL技术。
查询数据表
测试人员可以通过查看数据表来验证应用程序GUI的操作结果。但是,这种方式对于拥有大量数据的数据库,查询是相当的乏味和繁琐。验证多个数据表也是相当困难。
从开发人员查询
这个是测试数据库最简单的方法,从GUI执行任何CRUD操作和执行各自的SQL查询,从开发人员获得验证及其结果。这种方式似乎是最好的测试数据库方式。如果开发人员查询出语句错误或是不符合用户的要求,可以尽快的修改错误语句。
总结
数据库是每个软件程序的核心部分。数据库测试已被被高度重视,测试人员需要具备良好的SQL技术。为了保证测试结果正确无误,应将上述四个元素分配给不同的测试人员交叉测试,确保万无一失。