51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 22728|回复: 30
打印 上一主题 下一主题

如何针对数据库进行有效性测试?(09-04-20)(获奖名单已公布)

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2009-4-20 15:33:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如何针对数据库进行有效性测试?

如果你也有问题想提出来和大家一起讨论,请点击此处>>
说不定下期讨论的问题就是由你提出的哦,请快快参与吧!



获奖名单
奖项
获奖名单
奖励
答案链接
三等奖
rolei
100论坛积分
10#



相关文章:

数据库性能问题的定位方法之一

Robot进行数据库的并发测试

数据库设计中的敏捷方法

更多内容请点击>>>
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2009-4-20 22:32:18 | 只看该作者

回复 1# 的帖子

对数据库的测试,指的是对表的测试吗?
sql 可以正确的做insert/update/delete table操作。
数据库的表可以保存所定义的长度.
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2009-4-21 09:18:24 | 只看该作者

占个位置等大家回答

貌似对能力要求很高.
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2009-4-21 11:53:58 | 只看该作者
原帖由 icilwendyzhou 于 2009-4-20 22:32 发表
对数据库的测试,指的是对表的测试吗?
sql 可以正确的做insert/update/delete table操作。
数据库的表可以保存所定义的长度.

除了简单的增删改查,对表的每个字段还有定义的字符类型和精度的测试呢,对字符类型就需要区分有效等价类和无效等价类,对精度测试需要考虑边界值分析
没有单独针对数据库进行过测试,但是之前测试过的系统是有使用oracle数据库的,不清楚单独测试数据库的有效性是怎么个概念,很想学习一下
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2009-4-21 16:43:13 | 只看该作者
先占个座,总结完了发上来
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2009-4-21 21:15:07 | 只看该作者
测试新手,来学习前辈们的经验来了
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2009-4-22 09:52:15 | 只看该作者
先占个座位,慢慢看,写好了发上来
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2009-4-22 16:49:56 | 只看该作者
新来的,学习您们的经验
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2009-4-22 17:34:10 | 只看该作者
针对数据库进行有效的测试
个人感觉应该是数据的正确性,增删改查是必需的,还要检查每个字段中的边界值.
呵呵 这是个人理解,让高手评价...
回复 支持 反对

使用道具 举报

该用户从未签到

10#
发表于 2009-4-22 17:36:28 | 只看该作者

数据库?

是数据库产品?还是数据库应用?

1、数据库产品
接触过不少数据库产品,没测过,不敢妄言;

2、数据库应用--应用数据库的目的在于对于数据存取的有效管理

针对数据库的操作:增、删、改、查,以及基于此的数据库性能表现。

不论是C/S还是B/S结构的系统,使用到数据库时,对于测试人员来讲,一般采用的测试方法是黑盒测试,也就是通过页面展现对数据库数据的管理进行验证,这样的做的优点是省时省力,缺点是针对数据不能有效的发现深层次的问题,特别是在大量运用到数据分析统计的系统中。

可采用的改进方法:
数据库测试尽可能早的进行,不要等到系统实现了才去跟据页面测试数据库的应用。
数据操作由简到繁,数据验证采用页面展现和直接操作底层数据库的方式,以验证数据正确性。

对测试人员的要求也相对较高。

1)了解数据库特性。
a、了解数据库的特性,跟据系统数据管理的需要选择正确的数据库做为系统支持;
b、了解数据库的安装、连接、配置。如果不会这些,也就谈不上去测试数据库的应用;
c、熟悉数据库的参数设置及调优,不同的数据库差别很大。这些特性会对数据库的使用,特别是性能方面造成很大的影响;(性能测试最用得着)
d、熟练操作SQL,可以方便的进行数据库数据的查询和修改;(造假数据时最用得着)
e、如果可能,了解数据库固有的问题,会能帮助你暴露问题、有效进行测试;数据库本身就是个系统,其稳定性比较高,但是问题总是会存在。

2)进行有效的数据库设计评审--首先得有数据库设计
a、主要是针对设计的有效性,如字段长度是否合适,有没有主、外键,主外键约束是不是合理等;(对数据库技能方面的要求比较高,请数据库设计方面的专家典评下,再不行就找本数据库方面的书恶补下)(曾见过某个系统用到的一个字段在数据库的十几张表中都存在,结果造成数据更新操作异常繁琐且数据一致性混乱)
b、数据库设计与页面展现的一致性,也就是页存取操作的数据属性与数据库中的定义是否一致,主要是异常处理;(建议采用页面错误处理和库据库自身设计处理两种方式进行)

3)测试数据库的性能
数据库的性能调试会严得影响到系统相关的应用,也就需要针对数据库进行相应的性能测试和性能调优。
如果你不是数据库方面的专家,建议不要改动数据库默认设置,这一部分的工作最好是和数据库系统方面的专家一起进行。因为数据库的性能不是将某一个参数加大就能解决的,参数设置不当反而会造成系统性能更差。

4)结合页面展现,直接操作数据库验证数据的有效性和正确性。

[ 本帖最后由 rolei 于 2009-4-28 15:52 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

11#
发表于 2009-4-22 20:46:59 | 只看该作者
不太明白什么叫针对数据库进行有效性测试?
不过,SQL的增删改查,数据字段的定义 之类的测试应该是做数据库软件人的事情吧?跟我们所测的软件没什么关系的吧??
我想有效性是不是指在所测应用程序上做了关于数据的操作,数据库中的数据能否发生正确的改变。比如,插入一个订单,那要查看数据库中插入后的订单信息是否和录入的信息一致。
回复 支持 反对

使用道具 举报

该用户从未签到

12#
发表于 2009-4-22 21:00:32 | 只看该作者
如果是这样的话,可以在有数据增删改查操作的用例 加上查看数据库的步骤。可以用相应的SQL操作,人工查看数据库中显示的数据和所测应用程序显示的是否一致,是否符合需求。
自动化测试中,可以插入数据库检查点。
回复 支持 反对

使用道具 举报

该用户从未签到

13#
发表于 2009-4-23 13:45:59 | 只看该作者
学习一下。
回复 支持 反对

使用道具 举报

该用户从未签到

14#
发表于 2009-4-23 14:07:05 | 只看该作者
数据库的有效性测试不是很明白,是测试数据的完整性和一致性吗?望高手们出来指点指点
回复 支持 反对

使用道具 举报

该用户从未签到

15#
发表于 2009-4-23 16:49:21 | 只看该作者
原帖由 七明芝 于 2009-4-22 20:46 发表
不太明白什么叫针对数据库进行有效性测试?
不过,SQL的增删改查,数据字段的定义 之类的测试应该是做数据库软件人的事情吧?跟我们所测的软件没什么关系的吧??
我想有效性是不是指在所测应用程序上做了关于数据 ...

同意,初级的数据库测试就是测数据是否正确的录入数据库内,高级一点的嘛,那就涉及的东西比较多了,我对数据库也就了解这么点
回复 支持 反对

使用道具 举报

该用户从未签到

16#
发表于 2009-4-23 16:53:08 | 只看该作者

对数据库测试应该分类

对数据库测试明确你要测试的系统的体系架构是什么样,是C/S还是B/S的,他们有共同点和不同点,比如对用户的增删改查,验证数据库是不是里是不是成功修改了,增加一条数据,数据库是不是增加了一条数据,还有对数据库一些事务的验证,比如对银行来说你取钱没有成功数据库是不是有回滚操作啊,再就是性能的测试了
回复 支持 反对

使用道具 举报

该用户从未签到

17#
发表于 2009-4-23 17:13:47 | 只看该作者
新人,学习下...
回复 支持 反对

使用道具 举报

该用户从未签到

18#
发表于 2009-4-23 23:24:29 | 只看该作者
原帖由 七明芝 于 2009-4-22 20:46 发表
不太明白什么叫针对数据库进行有效性测试?
不过,SQL的增删改查,数据字段的定义 之类的测试应该是做数据库软件人的事情吧?跟我们所测的软件没什么关系的吧??
我想有效性是不是指在所测应用程序上做了关于数据 ...


这一定是与某一软件相关的数据库。
“有效性”就指的是可用性,要可用就必须保证合法性和正确性。
数据库的有效性测试就是相应数据库中的所有内容,包括
它与相关软件是否能有效关联(这是重点要测的);
在数据库中对相应软件信息的所有操作是否能正常进行(包括 增、删、改、查、备份与还原等);
不同用户访问数据库的的权限等(安全性也是保证有效性的的一个重要方面)。
回复 支持 反对

使用道具 举报

该用户从未签到

19#
发表于 2009-4-24 09:04:38 | 只看该作者
页面的操作直接影响数据库。

一般手工测试人员,都会在页面在对数据库进行操作,返回的结果即可看到是否正确(这个不能绝对,因为有些数据不一定显示在页面上),这个方法是对数据库进行最简单的操作了。
深层次点的会研究数据库结构,主外键关联?使用的类型是否过大或者过小?表结构是否合理,是否用最少的表建立实现一系列操作?哪些地方需要用到存储过程,哪些地方又需要用到索引?存储字符长度?
更深层次点的恐怕就是专业到不行的DBA了,通过经验和专业的软件去分析和得出数据库结构的性能,查找瓶颈漏洞来优化和填补,防止大数据量导致数据库性能低下活DOWN机从而影响用户操作。
回复 支持 反对

使用道具 举报

该用户从未签到

20#
发表于 2009-4-24 10:44:56 | 只看该作者

数据库测试

最近做一些数据库方面的测试,主要对数据索引方面(insert、select),数据不同表结构测试(主要考虑不同表结构下的数据库大小),表结构不同占用磁盘空间也不一样,有近40倍的差距,同时也会影响表的查询反映时间
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-5-6 05:56 , Processed in 0.089164 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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