数据库测试 – 概述
数据库测试包括执行数据有效性、数据完整性测试、与数据库相关的性能检查以及测试数据库中的过程、触发器和功能。
示例
考虑一个捕获用户日常交易详细信息并将详细信息存储在数据库中的应用程序。从数据库测试的角度来看,应执行以下检查 −
应用程序中的交易信息应存储在数据库中,并应向用户提供正确的信息。
信息加载到数据库时不应丢失。
只应存储已完成的交易,应用程序应中止所有未完成的操作。
应维护对数据库的访问权限。不应提供未经批准或未经授权的用户信息访问。
为什么需要执行数据库测试?
执行数据库测试的原因有多种。需要对数据库执行数据完整性、验证和数据一致性检查,因为后端系统负责存储数据并用于多种目的。
以下是进行数据库测试的一些常见原因 −
为了减轻对数据库后端调用的复杂性,开发人员增加了视图和存储过程的使用。
这些存储过程和视图包含关键任务,例如插入客户详细信息(姓名、联系信息等)和销售数据。这些任务需要在多个层面进行测试。
在前端执行黑盒测试很重要,但很难隔离问题。在后端系统进行测试可以提高数据的稳健性。这就是在后端系统上执行数据库测试的原因。
在数据库中,数据来自多个应用程序,并且有可能在数据库中存储有害或不正确的数据。因此,需要定期检查数据库组件。此外,还应定期检查数据完整性和一致性。
数据库测试与前端测试
数据库测试不同于前端 UI 测试。下表重点介绍了主要区别 −
数据库测试 | UI 测试 |
---|---|
数据库测试称为数据验证和完整性测试或后端测试。 |
UI 测试或前端测试也称为应用程序测试或 GUI 测试。 |
数据库测试涉及测试用户不可见的后端组件。 这包括数据库组件和 DBMS 系统,例如 My SQL、Oracle。 |
UI 测试涉及检查应用程序及其组件的功能,如表单、图形、菜单、报告、等。 这些组件是使用前端开发工具(如 VB.net、C#、Delphi 等)创建的。 |
数据库测试涉及检查存储过程、视图、数据库中的模式、表、索引、键、触发器、数据验证和数据一致性检查。 |
UI 测试涉及检查应用程序、按钮、表单和字段、日历和图像的功能、从一个页面到另一个页面的导航以及应用程序的整体功能。 |
要执行 DB 测试,测试人员需要对数据库概念有透彻的了解 −如过程和函数、视图、索引、键和良好的动手 SQL。 |
要执行 UI 测试,测试人员需要很好地理解业务需求、应用程序功能知识、编码等。 |
数据来自 Web 应用程序、Intranet 应用程序和各种其他应用程序的多个异构数据源。 |
数据手动输入到应用程序中。它涉及前端应用程序的功能测试。 |