51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 6170|回复: 9
打印 上一主题 下一主题

[翻译] Key Concepts for Database Testing (Part 2)

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2006-5-21 15:42:47 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
Key Concepts for Database Testing (Part 2)
Jesse Watkins-Gibbs, Project Manager, LogiGear Corporation

In a previous article on database testing considerations, I discussed referential integrity and security. This article will cover the additional topics of interfaces and data formats.

Interfaces

In today's complex applications, data must pass between one or more (typically many more) interfaces. Some of the typical types of interfaces which exist between the user entering or reading data, and the database may include, but are not limited to:

    * Graphical user interfaces (GUIs) on the web or desktop
    * Java, COM, or .net classes
    * Web Services
    * Screen-scraping of a legacy mainframe application
    * Application programming interfaces (APIs) for access the database, such as ODBC, JDBC, and OLEDB

Bugs can be introduced at any of these interfaces, no matter whether you are reading, writing, updating, or deleting data.

Testing the interactions between all of these interfaces can be very complex, but I would suggest that at a minimum, you:

   1. Understand all of the interfaces that data passes through between the user and the database.
   2. Learn about the technologies used to implement each interface, and what the possible bugs are due to that interface.

It is possible to create tests which are run against each of these interfaces; however some of these tests may require some programming. If you are going to test against an interface other than the UI, it is important to understand what formats of data are expected at that interface. This leads us to the next topic, data formats.

Data Formats

Data in a database may be input from and displayed on a number of different types of systems, including Web-based applications, desktop applications, and handheld devices. Each of these types of systems has unique system limitations, which may dictate how data should be stored and/or formatted in your database.

Take dates as an example. Most Windows applications can accept dates up to the year 9999, but many handheld devices can only accept dates up to the year 2039, due to memory capacity limitations. If your database allows users to store dates past 2039, what happens when you try to display one of these dates on a mobile handset?

The format of data may also change as it passes through various interfaces between the user interface and the database. For instance, data may first be extracted from the database in tabular format, then converted into XML format so it can be transferred via a web service, then be transformed into HTML for display within a browser. At each one of these interfaces, the format of the data will be changed, and new bugs may be introduced.

Again, you can test the data at each of the interfaces, but it may require some programming. At a minimum, you should be able to identify all of the formats used to transfer the data between each interface, and understand some of the fundamental limitations of the technologies being used. This will allow you to create better test cases, and more intelligently analyze data-related bugs that appear during testing or pop up in production.

Conclusion

Database testing is one of the most challenging tasks facing a software QA team. At a minimum, team members should understand referential integrity and database security, and have a good grasp on the various technologies and data formats used to transfer data between the user and the database.
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

  • TA的每日心情
    无聊
    2015-8-18 14:50
  • 签到天数: 8 天

    连续签到: 1 天

    [LV.3]测试连长

    10#
    发表于 2006-7-31 12:46:55 | 只看该作者
    l加分鼓励呀
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    9#
     楼主| 发表于 2006-5-27 23:04:00 | 只看该作者
    加分鼓励了!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    8#
    发表于 2006-5-26 23:47:13 | 只看该作者
    screen-scraping 屏幕剥离?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7#
    发表于 2006-5-25 14:41:09 | 只看该作者
    恩,下回改进。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
    发表于 2006-5-25 13:31:38 | 只看该作者
    很不错哟!
    中文要是润色一下就绝了!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5#
    发表于 2006-5-25 10:15:44 | 只看该作者
    第一次翻译,还请大家批评指正。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    4#
    发表于 2006-5-25 10:14:45 | 只看该作者
    Key Concepts for Database Testing (Part 2)
    数据库测试的关键概念

    Key Concepts for Database Testing (Part 2)
    Jesse Watkins-Gibbs, Project Manager, LogiGear Corporation

    In a previous article on database testing considerations, I discussed
    referential integrity and security. This article will cover the additional topics of interfaces and data formats.
    在以前的有关数据库测试的文章中,我讨论了引用完整性和安全性问题。这篇文章我将讲述另外的论题,就是接口和数据格式。


    Interfaces
    接口

    In today's complex applications, data must pass between one or more (typically many more) interfaces. Some of the typical types of interfaces which exist between the user entering or reading data, and the database may include, but are not limited to:
    在今天的复杂的应用中,数据必须通过一个或是多个(更多)接口。一些典型的接口如用户从数据库写入数据、读出数据,但是并不局限于此。

        * Graphical user interfaces (GUIs) on the web or desktop
    在web或是桌面上的图形化的用户接口

        * Java, COM, or .net classes
    Java, COM, or .net类

    * Web Services
    web服务

        * Screen-scraping of a legacy mainframe application(Screen-scraping实在是不会翻译)

        * Application programming interfaces (APIs) for access the database, such as ODBC, JDBC, and OLEDB
    接入数据库的应用程序接口,比如ODBC, JDBC和 OLEDB

    Bugs can be introduced at any of these interfaces, no matter whether you are reading, writing, updating, or deleting data.
    在任何这些接口中,bug都能够被引入,无论你是读、写、更新或是删除数据。
    Testing the interactions between all of these interfaces can be very complex, but I would suggest that at a minimum, you:
    测试这些接口非常复杂,但是我建议你(做)

       1. Understand all of the interfaces that data passes through between the user and the database.
    理解所有有数据通过的接口,这些数据贯穿在用户和数据库之间。

       2. Learn about the technologies used to implement each interface, and what the possible bugs are due to that interface.
    学习相关的使用技术去实现每一个接口,学习对于那些接口可能引起的bug.

    It is possible to create tests which are run against each of these interfaces; however some of these tests may require some programming. If you are going to test against an interface other than the UI, it is important to understand what formats of data are expected at that interface. This leads us to the next topic, data formats.
    创建能运行在每一个接口上的测试用例是有可能的;然而这些测试也许要求一些规划设计。如果你将测试一个接口而不是一个用户接口,理解这个接口所规定的数据格式是很重要的。这就引导我们进入到下一个论题,数据格式。

    Data Formats
    数据格式

    Data in a database may be input from and displayed on a number of different types of systems, including Web-based applications, desktop applications, and handheld devices. Each of these types of systems has unique system limitations, which may dictate how data should be stored and/or formatted in your database.
    数据库中的数据也许是从(外部)输入并且显示在许多不同种的系统中的,其中包括基于web的应用,桌面应用和手持设备。每一个类型的系统都有唯一的系统限制,这些限制也许规定数据如何在数据库中存储和/或如何安排数据格式。

    Take dates as an example. Most Windows applications can accept dates up to the year 9999, but many handheld devices can only accept dates up to the year 2039, due to memory capacity limitations. If your database allows users to store dates past 2039, what happens when you try to display one of these dates on a mobile handset?
    比如,许多windows应用程序能够接受一直到9999年的日期数据。但是许多手持设备由于内存能力的限制却只能接受一直到2039年的日期数据。如果你的数据库允许用户存储超过 2039的日期数据,当你尝试在移动手机上显示这些数据的时候会发生什么。

    The format of data may also change as it passes through various interfaces between the user interface and the database. For instance, data may first be extracted from the database in tabular format, then converted into XML format so it can be transferred via a web service, then be transformed into HTML for display within a browser. At each one of these interfaces, the format of the data will be changed, and new bugs may be introduced.
    在用户界面和数据库之间,当数据通过不同的接口的时候,数据也许改变了。比如,数据首先以表格的形式从数据库中萃取,然后转变成XML格式,因此数据能够通过web服务器被传输,然后被转变成HTML在浏览器中显示出来。在每一个接口中,数据格式将被改变并且新的bug也许会被引入。

    Again, you can test the data at each of the interfaces, but it may require some programming. At a minimum, you should be able to identify all of the formats used to transfer the data between each interface, and understand some of the fundamental limitations of the technologies being used. This will allow you to create better test cases, and more intelligently analyze data-related bugs that appear during testing or pop up in production.
    再一次,你能够在每一个接口中测试数据,但是这些数据也许要求一些设计。在每个接口中,你应该能够识别用于传输的数据格式,并且理解所使用技术的基本限制。这将使你更好的建立测试用例,并且聪明的分析和数据相关的bug,这些bug出现在测试中或是在产品中弹出.

    Conclusion结论

    Database testing is one of the most challenging tasks facing a software QA team. At a minimum, team members should understand referential integrity and database security, and have a good grasp on the various technologies and data formats used to transfer data between the user and the database.
    面对软件QA团队,数据库测试是最富挑战的任务重中的一个。团队成员应该理解引用完整性和数据库安全性,并且在用户和数据库之间,能够很好的领会不同种的技术和用于传输的数据格式。

    [ 本帖最后由 Erica 于 2006-5-25 10:16 编辑 ]
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    3#
    发表于 2006-5-25 09:31:25 | 只看该作者
    <font color=red>test</font>
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    2#
    发表于 2006-5-22 17:52:57 | 只看该作者
    那位大侠翻译一下!!!
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-27 02:53 , Processed in 0.078136 second(s), 28 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表