如何对数据库进行测试

如何对数据库进行测试
如何对数据库进行测试

如何对数据库进行测试

2011-01-20 15:35:20| 分类:软件开发小技巧|字号大中小订阅

数据库测试软件测试

随着软件业的迅猛发展,我们的开发也从以前的单层结构进入了三层架构甚至现在多层架构的设计,而数据库从以前一个默默无闻的后台仓库,逐渐成为了数据库系统,而数据库开发设计人员成为了炙手可热的核心人员。以前我们往往把数据库操作写在应用层,从而提高各个模块的独立性和易用性,而现在越来越多的数据库操作被作为存储过程直接放在数据库上进行执行来提高执行效率和提高安全性。

数据库开发既然在软件开发的比重逐步提高,随之而来的问题也突出。我们以前往往重视对代码的测试工作,随着流程技术的日益完善,软件质量得到了大幅度的提高,但数据库方面的测试仍然处于空白。我们从来没有真正将数据库作为一个独立的系统进行测试,而是通过对代码的测试工作间接对数据库进行一定的测试。随着数据库开发的日益升温,数据库测试也需要独立出来进行符合自身特点的测试工作。数据库开发和应用开发并没有实质上的区别,所以软件测试的方法同样适用于数据库测试

从测试过程的角度来说我们也可以把数据库测试分为

系统测试

传统软件系统测试的测试重点是需求覆盖,而对于我们的数据库测试同样也需要对需求覆盖进行保证。那么数据库在初期设计中也需要对这个进行分析,测试.例如存储过程,视图,触发器,约束,规则等我们都需要进行需求的验证确保这些功能设计是符合需求的.另一方面我们需要确认数据库设计文档和最终的数据库相同,当设计文档变化时我们同样要验证改修改是否落实到数据库上。

这个阶段我们的测试主要通过数据库设计评审来实现。

集成测试

集成测试是主要针对接口进行的测试工作,从数据库的角度来说和普通测试稍微有些区别对于数据库测试来说,需要考虑的是

数据项的修改操作

数据项的增加操作

数据项的删除操作

数据表增加满

数据表删除空

删除空表中的记录

数据表的并发操作

针对存储过程的接口测试

结合业务逻辑做关联表的接口测试

同样我们需要对这些接口考虑采用等价类、边界值、错误猜测等方法进行测试

单元测试

单元测试侧重于逻辑覆盖,相对对于复杂的代码来说,数据库开发的单元测试相对简单些,可以通过语句覆盖和走读的方式完成

系统测试相对来说比较困难,这要求有很高的数据库设计能力和丰富的数据库测试经验。而集成测试和单元测试就相对简单了。

而我们也可以从测试关注点的角度对数据库进行分类

功能测试

对数据库功能的测试我们可以依赖与工具进行

DBunit

一款开源的数据库功能测试框架,可以使用类似与Junit的方式对数据库的基本操作进行白盒的单元测试,对输入输出进行校验

QTP

大名鼎鼎的自动测试工具,通过对对象的捕捉识别,我们可以通过QTP来模拟用户的操作流程,通过其中的校验方法或者结合数据库后台的监控对整个数据库中的数据进行测试。个人觉得比较偏向灰盒。

DataFactory

一款优秀的数据库数据自动生成工具,通过它你可以轻松的生成任意结构数据库,对数据库进行填充,帮助你生成所需要的大量数据从而验证我们数据库中的功能是否正确。这是属于黑盒测试

数据库性能

虽然我们的硬件最近几年进步很快,但是我们需要处理的数据以更快的速度在增加。几亿条记录的表格在现在是司空见惯的,如此庞大的数据量在大量并发连接操作时,我们不能像以前一样随意的使用查询,连接查询,嵌套查询,视图,这些操作如果不当会给系统带来非常巨大的压力,严重影响系统性能

性能优化

1、物理存储方面

2、逻辑设计方面

3、数据库的参数调整

4、SQL语句优化.

我们如何对性能方面进行测试呢,业界也提供了很多工具

通过数据库系统的SQL语句分析工具,我们可以分析得到数据库语句执行的瓶颈,从而优化SQL语句

Loadrunner

这个不用多说,我们可以通过对协议的编程来对数据库做压力测试

Swingbench(这是一个重量级别的feature,类似LR,而且非常强大,只不过专门针对oracle而已)

数据库厂商也意识到这点,例如

oracle11g已经提供了real application test,提供数据库性能测试,分析系统的应用瓶颈。

还有很多第三方公司开发了SQL语句优化工具来帮助你自动的进行语句优化工作从而提高执行效率。

安全测试

软件日益复杂,而数据又成为了系统中重中之重的核心,从以往对系统的破坏现在更倾向于对数据的获取和破坏。而数据库的安全被提到了最前端

自从SQL 注入攻击被发现,冒失万无一失的数据库一下从后台变为了前台,而一旦数据库被攻破,整个系统也会暴露在黑客的手下,通过数据库强大的存储过程,黑客可以轻松的获得整个系统的权限。而SQL的注入看似简单缺很难防范,对于安全测试来说,如何防范系统被注入是测试的难点。

业界也有相关的数据库注入检测工具,来帮助用户对自身系统进行安全检测。

对于这点来说业界也有标准,例如ISO IEC 21827,也叫做SSE CMM 3.0,是CMM 和ISO的集成的产物,专门针对系统安全领域的

另外一方面,数据库的健壮性,容错性和恢复能力也是我们测试的要点

我们也可以发现功能测试,性能测试,安全测试,是一个由简到繁的过程,也是数据库测试人员需要逐步掌握的技能,这也是以后公司对数据库测试人员的要求。

数据库期末考试习题及答案

2004-2005学年第二学期期末考试 C 2002级计算机科学与技术专业《数据库原理与应用》课程试题一、选择题(15分,每空1分): 1.在数据库中,产生数据不一致的根本原因是____。 A.数据存储量太大 B.没有严格保护数据 C.未对数据进行完整性控制 D.数据冗余 2.相对于其他数据管理技术,数据库系统有①、减少数据冗余、保持数据的一致性、②和③的特点。 ①A.数据统一 B.数据模块化 C.数据结构化 D.数据共享 ②A数据结构化 B.数据无独立性 C.数据统一管理 D.数据有独立性 ③A.使用专用文件 B.不使用专用文件 C.数据没有安全与完整性保障 D.数据有安全与完整性保障 3.关系运算中花费时间可能最长的运算是____。 A.投影 B.选择 C.笛卡尔积 D.除 4.关系数据库用①来表示实体之间的联系,关系的数学定义是②。 ①A.层次模型 B.网状模型 C.指针链 D.二维表格数据 ②A.若干域(domain)的集合 B.若干域的笛卡尔乘积(Cartesian product) C.若干域的笛卡尔乘积的子集 D.若干元组(tuple)的集合 5.集合R与S的连接可以用关系代数的5种基本运算表示为________。 A.R-(R-S) B.σ F (R×S) C.空 D.空 6.在关系代数中,对一个关系做投影操作后,新关系的元组个数____原来关系的元组个数。 A.小于 B.小于或等于 C.等于 D.大于 7.下列SQL语句中,创建关系表的是____。 A.ALTER B.CREATE C.UPDATE D.INSERT 8.关系数据库设计中的陷阱(pitfalls)是指________。 A.信息重复和不能表示特定信息 B.不该插入的数据被插入 C.应该删除的数据未被删除 D.应该插入的数据未被插入 9.数据库的____是为了保证由授权用户对数据库所做的修改不会影响数据一致性的损失。 A.安全性 B.完整性 C.并发控制 D.恢复 10.事务是数据库进行的基本工作单位。如果一个事务执行成功,则全部更新提交;如果一个事务

《数据库程序设计》在线测试汇总

《数据库程序设计》第01章在线测试 A B C D 的主要功能不包括 A B C D 、多用户数据库要解决的关键问题是: A B C D 、除了能存储已知的事实外,还能存储用于逻辑推理的规则的数据库为: A B C D 中能从管理上对项目的开发与维护给予有效支持的的辅助设计工具为: A B C D

D、弹出式菜单平时不显示,仅当使用时才弹出。 2、数据库管理系统的功能包括: A、数据定义功能 B、数据操作功能 C、数据通讯功能 D、控制和管理功能 3、VFP的交互操作方式有 A、批处理 B、命令执行方式 C、图形界面操作 D、程序执行方式 4、数据库系统的特点是 A、能实现数据共享 B、数据结构化更强 C、数据独立性 D、可控冗余度 E、适合网络传送 5、项目管理器可以对项目中的进行管理。 A、文档 B、数据表 C、程序 D、菜单 E、类库 第三题、判断题(每题1分,5道题共5分)

正确错误、菜单项为灰色表示该项暂时不能使用。 正确错误、分布式数据库使用时没有集中式数据库存取速度快。 正确错误、数据库设计时,冗余度越小,质量越高。 正确错误、访问分布式数据库,需要指明数据的存放地点。 正确错误《数据库程序设计》第02章在线测试 A B C D 、通用型字段的嵌入和链接可以区别在于 A、嵌入的对象不会随原对象的变化而变化,链接的对象会随原对象的变化而变化。 B 对象会随原对象的变化而变化。 C链接和嵌入的对象都不会随原对象的变化而变化。D 、如果需要将一个表 A B C D Sb表中“

A、dele for 部门=“21” B、dele for 部门=“21” pack C、pack for 部门=“21” D、zap for 部门=“21” 5、删除SB表中的“部门”字段,命令为 A、drop 部门 c(2) B、alter table sb drop 部门 C、alter table sb drop 部门 c(2) D、drop 部门 第二题、多项选择题(每题2分,5道题共10分) 1、一个表打开时,那些文件会被打开 A、.dbf文件 B、相关的所有文件 C、备份文件 D、如果有备注,相应的.fpt文件也被打开 2、命令窗口不显示时,要使它再现,可以用 A、窗口菜单 B、SHIFT+F2 C、CTRL+F2 D、数据工作期 E、项目管理器 3、能获得当天日期的表达式或函数为 A、_diarydate B、date() C、time() D、year(date()) 4、在SB表中,显示编号首位为1的设备信息。 A、list for left(编号,1)=1

数据库设计综合练习题及答案

1、有一课程管理系统,有如下特点:一个系可开设多门课程,但一门课只在一个系部开设,一个学生可选修多门课程,每门课可供若干学生选修,一名教师只教一门课程,但一门课程可有几名教师讲授,每个系聘用多名教师,但一个教师只能被一个系所聘用,要求这个课程管理系统能查到任何一个学生某门课程的成绩,以及这个学生的这门课是哪个老师所教的。 (1)请根据以上描述,绘制相应的E-R图,并直接在E-R图上注明实体名、属性、联系类型; (2)将E-R图转换成关系模型,画出相应的数据库模型图,并说明主键和外键。 (3)分析这些关系模式中所包含的函数依赖,根据这些函数依赖,分析相应的关系模式达到了第几范式。对这些关系模式进行规范化。 1、参考答案:

2、设某汽车运输公司数据库中有三个实体集。一是“车队”实体集,属性有车队号、车队名等;二是“车辆”实体集,属性有牌照号、厂家、出厂日期等;三是“司机”实体集,属性有司机编号、姓名、电话等。 车队与司机之间存在“聘用”联系,每个车队可聘用若干司机,但每个司机只能应聘于一个车队,车队聘用司机有“聘用开始时间”和“聘期”两个属性; 车队与车辆之间存在“拥有”联系,每个车队可拥有若干车辆,但每辆车只能属于一个车队; 司机与车辆之间存在着“使用”联系,司机使用车辆有“使用日期”和“公里数”两个属性,每个司机可使用多辆汽车,每辆汽车可被多个司机使用。 (1)请根据以上描述,绘制相应的E-R图,并直接在E-R图上注明实体名、属性、联系类型; (2)将E-R图转换成关系模型,画出相应的数据库模型图,并说明主键和外键。 (3)分析这些关系模式中所包含的函数依赖,根据这些函数依赖,分析相应的关系模式达到了第几范式。对这些关系模式进行规范化。 2、参考答案:

北邮数据库系统概论测试--阶段作业1

一、单项选择题(共10道小题,共100.0分) 1.下面系统中不属于关系数据库管理系统的是______。 A.Oracle B.MS SQL Server C.IMS D.DB2 知识点: 数据库系统的应用实例 学生答案: [C;] 标准答案: C; 得分: [10] 试题分值: 10.0 提示: 2. 3.DBS是采用了数据库技术的计算机系统。DBS是一个集合体,包含数据库、计算机硬件、软 件和_____。 A.系统分析员 B.程序员 C.数据库管理员 D.操作员 知识点: 数据库系统的组成 学生答案: [C;] 标准答案: C; 得分: [10] 试题分值: 10.0 提示: 4. 5.对某个具体的数据库应用来说,下列说法中正确的是______。 A.E-R 图是唯一的 B.数据模型是唯一的 C.数据库文件是唯一的 D.以上三个都不是唯一的 知识点: 数据库系统的组成 学生答案: [D;] 标准答案: D; 得分: [10] 试题分值: 10.0 提示: 6. 7.以下不属于数据库系统组成的是____________。 A.硬件系统

B.数据库管理系统及相关软件 C.数据库管理员(DBA) D.文件系统 知识点: 数据库系统的组成 学生答案: [D;] 标准答案: D; 得分: [10] 试题分值: 10.0 提示: 8. 9.下列四项中说法不正确的是______。 A.数据库减少了数据冗余 B.数据库中的数据可以共享 C.数据库避免了一切数据的重复 D.数据库具有较高的数据独立性 知识点: 数据管理的发展 学生答案: [C;] 标准答案: C; 得分: [10] 试题分值: 10.0 提示: 10. 11.与文件管理系统相比,______不是数据库系统的优点。 A.数据结构化 B.访问速度快 C.数据独立性 D.冗余度可控 知识点: 数据管理的发展 学生答案: [B;] 标准答案: B; 得分: [10] 试题分值: 10.0 提示: 12. 13.下列四项中,不属于关系数据库特点的是_______。 A.数据冗余小 B.数据独立性高 C.数据共享性好 D.多用户访问 知识点: 数据管理的发展 学生答案: [D;] 标准答案: D;

数据库期末考试试题及答案

数据库期末考试试题及答案 一、选择题(每题1分,共20分) 1(在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。 在这几个阶段中,数据独立性最高的是( A )阶段。 A. 数据库系统 B. 文件系统 C. 人工管理 D.数据项管理 2(数据库三级视图,反映了三种不同角度看待数据库的观点,用户眼中的数据库称为(D)。 A. 存储视图 B. 概念视图 C. 内部视图 D. 外部视图 3(数据库的概念模型独立于(A)。 A. 具体的机器和DBMS B. E-R图 C. 信息世界 D. 现实世界 4(数据库中,数据的物理独立性是指(C)。 A. 数据库与数据库管理系统的相互独立 B. 用户程序与DBMS的相互独立 C. 用户的应用程序与存储在磁盘上的数据库中的数据是相互独立的 D. 应用程序与数据库中数据的逻辑结构相互独立 5(关系模式的任何属性(A)。 A. 不可再分 B. 可再分 C. 命名在该关系模式中可以不惟一 D.以上都不是 6(下面的两个关系中,职工号和设备号分别为职工关系和设备关系的关键字: 职工(职工号,职工名,部门号,职务,工资) 设备(设备号,职工号,设备名,数量) 两个关系的属性中,存在一个外关键字为( C )。

A. 职工关系的“职工号” B. 职工关系的“设备号” C. 设备关系的“职工号” D. 设备关系的“设备号” 7(以下四个叙述中,哪一个不是对关系模式进行规范化的主要目的( C )。 A. 减少数据冗余 B. 解决更新异常问题 C. 加快查询速度 D. 提高存储空间效率 8(关系模式中各级范式之间的关系为( A )。 A. B. C. D. 9(保护数据库,防止未经授权或不合法的使用造成的数据泄漏、非法更改或破坏。这是指 数据的( A )。 A. 安全性 B.完整性 C.并发控制 D.恢复 10(事务的原子性是指( B )。 A. 事务一旦提交,对数据库的改变是永久的 B. 事务中包括的所有操作要么都做,要么都不做 C. 一个事务内部的操作及使用的数据对并发的其他事务是隔离的 D. 事务必须使数据库从一个一致性状态变到另一个一致性状态 11(下列哪些运算是关系代数的基本运算( D )。 A. 交、并、差 B. 投影、选取、除、联结 C. 联结、自然联结、笛卡尔乘积 D. 投影、选取、笛卡尔乘积、差运算 12(现实世界“特征” 术语, 对应于数据世界的( D )。 A(属性 B. 联系 C. 记录 D. 数据项 13(关系模型中3NF是指( A )。 A.满足2NF且不存在传递依赖现象 B.满足2NF且不存在部分依赖现象

软件系统测试的主要方法

软件系统测试的主要方法 软件系统测试的主要方法 系统测试,英文是System Testing。 它的的任务是尽可能彻底地检查出程序中的错误,提高软件系统的可靠性,其目的是检验系统"做得怎样?"。这阶段又可分为三个步骤:模块测试,测试每个模块的程序是否有错误;组装测试,测试模块之间的接口是否正确;确认测试,测试整个软件系统是否满足用户功能和性能的要求。该阶段结束应交付测试报告,说明测试数据的选择,测试用例以及测试结果是否符合预期结果。测试发现问题之后要经过调试找出错误原因和位置,然后进行改正。是基于系统整体需求说明书的黑盒类测试,应覆盖系统所有联合的部件。系统测试是针对整个产品系统进行的测试,目的是验证系统是否满足了需求规格的定义,找出与需求规格不相符合或与之矛盾的地方。 接下来说一下有关系统测试的主要方法 系统测试一般采取黑盒测试,系统测试的方法也比较多,其中常用的方法有:多任务测试、临界测试、中断测试、等价划分测试 多任务测试 多任务测试是指在非idle状态下,测试对象处于工作状态时,有新的事件发生,如手机进行通话时有短信进行,手机有电话呼入,这种情况就是“多任务” Eg:手机项目中,查看短信时,有来电时。。。 备注: 1.多任务是黑盒尤其是嵌入式设备中所必须进行的一项最基本的测试,也是最容易发现软件问题的测试 2.多任务测试是测试系统模块之间相互影响的一种重要测试,这种测试一般会检测出如死机,系统重启,内存混乱,数据丢失等严重情况 3.多任务测试应放在用户经常使用的模块组合上,测试时应将用户可能遇到的这些组合考虑进去,同时注意模块重合的时间点 临界测试 在事件、任务刚刚发生、结束以及储存系统处于临界等边界状态下所进行测试 Eg:系统用户的容量为200,那么当人数达到到201时。。。 备注: 1.临界测试时系统测试中很容易发现问题。最重要的一点事临界值的把握,有概率性的出现就是一个测试点的问题 2.一般事件发生的开始和结束瞬间以及涉及到内存处于满和空时临界侧四关注的重点,这些情况也是最容易出现问题

数据库选择测试题

【自测题1:绪论】 测试总分:100分 1.单选题:下列四项中,不属于数据库系统特点的是(b )。 A. 数据独立性高 B. 数据冗余度高 C. 数据完整性 D. 数据共享 2.单选题:概念数据模型是现实世界的第一层抽象,这一类模型中最著名的模型是(c )。 A. 网状模型 B. 关系模型 C. 实体-联系模型 D. 层次模型 3.单选题:数据库三级模式中,真正存在的是(b )。 A. 子模式 B. 内模式 C. 外模式 D. 模式 4.单选题:下述(a )不是DBA数据库管理员的职责。 A. 数据库管理系统设计 B. 定义数据库模式 C. 数据库安全 D. 完整性约束说明 5.单选题:数据库系统与文件系统的主要区别是(c )。 A. 文件系统只能管理程序文件,而数据库系统能够管理各种类型的文件 B. 文件系统管理的数据量较少,而数据库系统可以管理庞大的数据量 C. 文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决 D. 数据库系统复杂,而文件系统简单 6.单选题:数据库的概念模型独立于(a)。 A. 具体的机器和DBMS B. 现实世界 C. 信息世界 D. E-R图

7.单选题:数据库中,数据的物理独立性是指(c)。 A. 用户程序与DBMS的相互独立 B. 应用程序与数据库中数据的逻辑结构相互独立 C. 用户的应用程序与存储在磁盘上的数据库中的数据是相互独立的 D. 数据库与数据库管理系统的相互独立 8.单选题:关系数据模型是目前最重要的一种数据模型,它的三个要素分别是(b )。 A. 实体完整性、参照完整性、用户自定义完整性 B. 外模式、模式、内模式 C. 数据增加、数据修改、数据查询 D. 数据结构、关系操作、完整性约束 9.单选题:要保证数据库的逻辑数据独立性,需要修改的是(d)。 A. 模式 B. 三级模式 C. 模式与内模式之间的映射 D. 模式与外模式之间的映射 10.单选题:在数据库中,下列说法(c)是不正确的。 A. 若系统是完全可以控制的,则系统可确保更新时的一致性 B. 数据库减少了数据冗余 C. 数据库避免了一切数据的重复 D. 数据库中的数据可以共享 11.单选题:模式和内模式(d )。 A. 可以有多个 B. 最多只能有一个 C. 至少两个 D. 只能有一个 12.单选题:数据库系统是采用了数据库技术的计算机系统,数据库系统由数据库、数据库管理系统、应用系统和(d )组成。 A. 系统分析员 B. 操作员 C. 程序员 D. 数据库管理员 13.单选题:一般地,一个数据库系统的外模式(c )。 A. 只能有一个 B. 至少两个 C. 可以有多个

数据库设计习题参考答案

第6章数据库设计习题参考答案 1.数据库的设计过程。(P205页) 答:按照规范设计的方法,考虑数据库及其应用系统开发全过程,将数据库设计分为以下六个阶段 需求分析. 概念结构设计. 逻辑结构设计. 物理结构设计. 数据库实施 . 数据库运行和维护 . 2.试述数据库设计过程的各个阶段上的设计描述.(P207页) 答: A.需求分析阶段 进行数据库设计首先必须准确了解与分析用户需求(包括数据与处理)。需求分析是整个设计过程的基础,是最困难、最费时的一步。作为地基的需求分析是否做得充分与准确,决定了在其上构建数据库的速度与质量。需求分析做得不好,甚至会导致整个数据库设计返工重做。 B.概念结构设计阶段 概念结构设计是整个数据库设计的关键,它通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。 C.逻辑结构设计阶段 逻辑结构设计是将概念结构转换为某个DBMS所支持的数据模型,并对其进行优化。 D. 数据库物理设计阶段 数据库物理设计是为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。 E.数据库实施阶段 在数据库实施阶段,设计人员运用DBMS提供的数据语言及其宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。 F.数据库运行和维护阶段 数据库应用系统经过试运行后即可投入正式运行。在数据库系统运行过程中必须不断地对其进行评价、调整与修改。 4.试述数据库设计的特点。(P204页) 答: A、数据库建设是硬件、软件和干件的结合。 B、数据库设计应该和应用系统设计相结合。 5.需求分析阶段的设计目标是什么(补充)调查的内容是什么(210页) 答: 需求分析阶段的设计目标是对系统的整个应用情况作全面的、详细的调查,确定企业组织的目标,收集支持系统总的设计的基础数据和对这些数据的要求,确定用户的需求,并把这些要求写成用户和数据库设计者都能接受的文档。 调查的内容是 (1)调查组织机构情况。(2)调查各部门的业务活动情况. (3)在熟悉业务活动的基础上,协助用户明确对新系统的各种要求,包括信息要求、处理要求、完全性与完整性要求。(4)确定新系统的边界。6.数据字典的内容和作用是什么(211页) 答:数据字典则是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果。数据字典在数据库设计中占有很重要的地位。 数据字典包括数据项、数据结构、数据流、数据存储和处理过程五个部分。其中数据项是数据的最小组成单位,若干个数据项可以组成一个数据结构,数据字典通过对数据项和数据结构的定义来描述数据流、数据存储的逻辑内容. 7.什么是数据库的概念结构,试述其特点和设计策略。(213—214页) 答:将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计。它是整个数据库设计的关键。 概念结构的主要特点是: (1)能真实、充分地反映现实世界,包括事物和事物之间的联系,能满足用户对数据的处理要求。是对现实世界的一个真实模型。 (2)易于理解,从而可以用它和不熟悉计算机的用户交换意见,用户的积极参与是数据库的设计成功的关键。 (3)易于更改,当应用环境和应用要求改变时,容易对概念模型修改和扩充。 (4)易于向关系、网状、层次等各种数据模型转换。 设计概念结构通常有四类方法: 自顶向下。即首先定义全局概念结构的框架,然后逐步细化,如图6.7(a)所示。 自底向上。即首先定义各局部应用的概念结构,然后将它们集成起来,得到全局概念结构,如图6.7(b)所示。 逐步扩张。首先定义最重要的核心概念结构,然后向外扩充,以滚雪球的方式逐步生成其他概念结构,直至总体概念结构,如图6.7(c)所示。 混合策略。即将自顶向下和自底向上相结合,用自顶向下策略设计一个全局概念结构的框架,以它为骨架集成由自底向上策略中设计的各局部概念结构。 8.什么叫数据抽象试举例说明。(P216) 答:所谓抽象是对实际的人、物、事和概念进行人为处理,抽取所关心的共同特性,忽略非本质的细节,并把这些特性用各种概念精确地加以描述,这些概念组成了某种模型。 例如:关系STUD(SNO,SNAME,SDEPT,SAGE)表示学生信息。 9.试述数据库概念结构设计的重要性(207页)和设计步骤(214页)。 答:概念结构设计是整个数据库设计的关键,它通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。 自底向上设计概念结构的方法通常分为两步:第1步是抽象数据并设计局部视图,第2步是集成局部视图,得到全局的概念结构, 10.什么是E-R图构成E-R图的基本要素是什么(18页) 答: E-R是概念模型的表示方法,通常称为是实体-联系方法。该方法用E-R图来描述现实世界的概念模型,E-R方法也称为E-R模型。 构成E-R图的基本要素是实体、属性和联系。 11.为什么要视图集成视图集成的方法是什么(224页) 答:各子系统的分E-R图设计好以后,下一步就是要将所有的分E-R图综合成一个系统的总E-R图,称为视图集成。 视图集成的方法有2种: A、多个分E-R图一次集成。 B、逐步集成,用累加的方式一次集成两个分E-R图 12.什么是数据库的逻辑结构设计(207页)试述其设计步骤。(229页)

数据库系统测试题2

一、选择题(30分,每小题2分) B 1.下列数据库产品中,哪一个属于微软公司开发的数据库软件? A.Oracle B.SQL Server C.MySQL D.DB2 D 2.事务并发执行时,每个事务不必关心其他事务,如同在单用户环境下执行一样,这个性质称为事务的____。 A. 持久性 B. 一致性 C.孤立性 D.隔离性 C 3.缓冲区管理程序是由DBMS的_________实现。 A.查询处理器 B.事务管理器 C.存储管理器 D. 资源管理器 A 4.在数据库技术中,独立于计算机系统的模型是________。 A.概念模型 B.数据模型 C.层次模型 D.关系模型 A 5.在E/R图中,表示实体集、联系和属性的几何图形分别为:________。 A.矩形、菱形和椭圆 B.菱形、矩形和椭圆 C.椭圆、矩形和菱形 D.椭圆、菱形和矩形 B 6.在数据库中,如果有8个不同实体集,它们之间存在着8个不同的二元联系(二元关系是指两个不同实体集间的联系),其中2个1∶N联系,6个M∶N联系,那么根据ER模型转换成关系模型的规则,这个ER结构转换成关系模式个数是: ________。 A.10 B.14 C.16 D.18 D 7.下面关于函数依赖的叙述中,不正确的是:________。 A.若X→Y,X→Z,则X→YZ B. 若XY→Z,则X→Z,Y→Z C.若X→Y,Y→Z,则X→Z D. 若X→Y,Y′ Y,则X→Y′ C? 8.设关系模式R(A,B,C),F是R上的函数依赖集,F={A→B,B→C}那么F在模式AB上的投影πAB(F)为 A.{A→B,B→C} B.{A→B} C.{AB→C } D.Φ(即不存在非平凡的函数依赖集) A 9.五种基本关系代数运算是:________。 A.∪,-,×,π和σ B. ∪,-,∞,π和σ C.∪,∩,×,π和σ D. ∪,∩,∞,π和σ D 10. 下列关系代数表达式式中,不正确的是:________。 A.R∪S=R∪(S-R) B.R∩S=R-(R-S) C.R∪S=S∪(S-R) D.R∩S=S-(S-R) B 11. SQL语言具有____的功能。 A.关系规范化、数据操纵、数据控制 B.数据定义、数据操纵、数据控制 C.数据定义、关系规范化、数据控制 D.数据定义、关系规范化、数据操纵 C 12. SQL语言中,条件“年龄BETWEEN 20 AN D 30”表示年龄在20至30之间,且____ A.包括20岁和30岁 B.不包括20岁和30岁 C.包括20岁但不包括30岁 D.包括30岁但不包括20岁 C 13.数据库中只存放视图的________。 A.操作 B.对应的数据 C.定义 D.限制 C 14.在SQL语言中授权的操作是通过_____语句实现。

sql数据库期末考试题及答案

一、单选题(共 10 道试题,共 50 分。)V 1. SQL Server中,保存着每个数据库对象的信息的系统表是( C)。 A. sysdatabases B. Syscolumns C. Sysobjects D. Syslogs 2. 在存在下列关键字的SQL语句中,不可能出现Where子句的是(D )。 A. Update B. Delete C. Insert D. Alter 3. 在查询语句的Where子句中,如果出现了“age Between 30 and 40”,这个表达式等同于(A )。 A. age>=30 and age<=40 B. age>=30 or age<=40 C. age>30 and age<40 D. age>30 or age<40 4. 如果要在一张管理职工工资的表中限制工资的输入范围,应使用(D )约束。 A. PDRIMARY KEY B. FOREIGN KEY C. unique D. check 5. 记录数据库事务操作信息的文件是(D )。 A. 数据文件 B. 索引文件 C. 辅助数据文件 D. 日志文件 6. 要查询XSH数据库CP表中产品名含有“冰箱”的产品情况,可用( C)命令。 A. SELECT * FROM CP WHERE 产品名称 LIKE ‘冰箱’ B. SELECT * FROM XSH WHERE 产品名称 LIKE ‘冰箱’ C. SELECT * FROM CP WHERE 产品名称 LIKE ‘%冰箱%’ D. SELECT * FROM CP WHERE 产品名称=‘冰箱’ 7. 储蓄所有多个储户,储户能够在多个储蓄所存取款,储蓄所与储户之间是(D )。 A. 一对一的联系 B. 一对多的联系 C. 多对一的联系 D. 多对多的联系 8. SQL的聚集函数COUNT、SUM、AVG、MAX、MIN不允许出现在查询语句的( D)子句之中。 A. SELECT B. HAVING C. GROUP BY… HAVING D. WHERE 9. 列值为空值(NULL),则说明这一列( C)。 A. 数值为0

系统测试的基本方法有哪些

系统测试的基本方法有哪些 计算机软件是基于计算机系统的一个重要组成部分,软件开发完毕后应与系统中其它成分集成在一起,此时需要进行一系列系统集成和确认测试。对这些测试的详细讨论已超出软件工程的范围,这些测试也不可能仅由软件开发人员完成。在系统测试之前,软件工程师应完成下列工作: (1)为测试软件系统的输入信息设计出错处理通路; (2)设计测试用例,模拟错误数据和软件界面可能发生的错误,记录测试结果,为系统测试提供经验和帮助; (3)参与系统测试的规划和设计,保证软件测试的合理性。 系统测试应该由若干个不同测试组成,目的是充分运行系统,验证系统各部件是否都能政党工作并完成所赋予的任务。下面简单讨论几类系统测试。 1、恢复测试 恢复测试主要检查系统的容错能力。当系统出错时,能否在指定时间间隔内修正错误并重新启动系统。恢复测试首先要采用各种办法强迫系统失败,然后验证系统是否能尽快恢复。对于自动恢复需验证重新初始化(reinitialization)、检查点(checkpointing mechanisms)、数据恢复(data recovery)和重新启动(restart)等机制的正确性;对于人工干预的恢复系统,还需估测平均修复时间,确定其是否在可接受的范围内。

2、安全测试 安全测试检查系统对非法侵入的防范能力。安全测试期间,测试人员假扮非法入侵者,采用各种办法试图突破防线。例如,①想方设法截取或破译口令;②专门定做软件破坏系统的保护机制;③故意导致系统失败,企图趁恢复之机非法进入;④试图通过浏览非保密数据,推导所需信息,等等。理论上讲,只要有足够的时间和资源,没有不可进入的系统。因此系统安全设计的准则是,使非法侵入的代价超过被保护信息的价值。此时非法侵入者已无利可图。 3、强度测试 强度测试检查程序对异常情况的抵抗能力。强度测试总是迫使系统在异常的资源配置下运行。例如,①当中断的正常频率为每秒一至两个时,运行每秒产生十个中断的测试用例;②定量地增长数据输入率,检查输入子功能的反映能力;③运行需要最大存储空间(或其他资源)的测试用例; ④运行可能导致虚存操作系统崩溃或磁盘数据剧烈抖动的测试用例,等等。 4、性能测试 对于那些实时和嵌入式系统,软件部分即使满足功能要求,也未必能够满足性能要求,虽然从单元测试起,每一测试步骤都包含性能测试,但只有当系统真正集成之后,在真实环境中才能全面、可靠地测试运行性能

数据库期末试题附答案

《数据库原理》课程考试模拟题四 、单项选择题(在每小题的四个备选答案中选出一个正确答案。本题共 )是不正确的。 B .数据库具有较高的数据独立性 D ?数据库加强了数据保护 2.按照传统的数据模型分类,数据库系统可以分为 ()三种类型 .西文、中文和兼容 .数据、图形和多媒体 是用户 与数据库系统的接口,是用户用到的那部 C .存储模式 D .模 ) ° B. 不同的列应有不同的列名 没有重复元组 SQL 和 ( ) ° C .嵌入式SQL D .解释式SQL 6. 设关系模 式 R (ABCD ) F 是R 上成立的FD 集,F={A ^B, B -C},则(BD )+为( ) 7. E-R 图是数据库设计的工具之一,它适用于建立数据库的 ( ) ° A .概念模型 B .逻辑模型 C .结构模型 D .物理模型 8. 若关系模式R (ABCD 已属于3NF,下列 说法中( ) 是正确的。 10. 数据库管理系统通常提供授权功能来控制不同用户访问数据的权限,这主要是为了实 现数据库的( ) ° 11. 一个事务一旦完成全部操作后,它对数据库的所有更新应永久地反映在数据库中,不 会丢失。这是指事务的( ) ° A.原子性 B. 一致性 C. 隔离性 D. 持久性 12. 在数据库中,软件错误属于() ° A.事务故障 B. 系统故障 C. 介质故障 D. 活锁 1.在数据库中,下列说法( A .数据库中没有数据冗余 C .数据库能为各种用户共享 A .大型、中型和小型 B C.层次、网状和关系 D 3. 在数据库的三级模式结构中,() 分数据的描述。 A .外模式 B .内模式 式 4. 下面选项中不是关系的基本特征的是 ( A.不同的列应有不同的数据类型 C.没有行序和列序 D. 5. SQL 语言具有两种使用方式,分别称为交互式 A.提示式SQL B .多用户SQL A . BCD B . BC C . ABC 16分,每小题1分) A .它一定消除了插入和删除异常 B C. 一定属于BCNF D 9. 解决并发操作带来的数据不一致性普遍采用 A .封锁技术 B .恢复技术 .仍存在一定的插入和删除异常 .A 和 C 都是 () ° C .存取控制技术 D .协商 A .可靠性 B . 一致性 C .完整性 D .安全性

数据库在线测试试题

数据库在线测试试题 选择题 1。下述( C)不是DBA数据库管理员的职责 完整性约束说明 定义数据库模式 数据库管理系统设计 数据库安全 2.用户或应用程序看到的那部分局部逻辑结构和特征的描述是( A ),它是模式的逻辑子集子模式 模式 内模式 物理模式 3。要保证数据库的逻辑数据独立性,需要修改的是(C) 模式与内模式之间的映射 模式 模式与外模式的映射 三层模式 4。要保证数据库的数据独立性,需要修改的是( A ) 三层之间的两种映射 模式与外模式 模式与内模式 三层模式

5.描述数据库全体数据的全局逻辑结构和特性的是( B) 外模式 模式 内模式 用户模式 6。数据库系统的数据独立性体现在( B ) 不会因为数据的变化而影响到应用程序 不会因为系统数据存储结构与数据逻辑结构的变化而影响应用程序 不会因为某些存储结构的变化而影响其他的存储结构 不会因为存储策略的变化而影响存储结构 7.下列四项中,不属于数据库系统特点的是(B ) 数据共享 数据冗余度高 数据完整性 数据独立性高 8.下面列出的数据库管理技术发展的三个阶段中,没有专门的软件对数据进行管理的是( D )。I。人工管理阶段 II.文件系统阶段 III.数据库阶段 I 和 II 只有 II II 和 III 只有 I 9.DBS是采用了数据库技术的计算机系统,它是一个集合体,包含数据库、计算机硬件、软件和( D ) 系统分析员 程序员

操作员 数据库管理员 10.数据库(DB),数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是(C)。 DBMS包括DB和DBS DBS就是DB,也就是DBMS DBS包括DB和DBMS DB包括DBS和DBMS 2填空题 1。数据库是长期存储在计算机内有组织、可共享、的数据集合。 2。DBMS是指(数据库管理系统),它是位于(用户),和(操作系统) , 之间的一层管理软件 3.数据库管理系统的主要功能有, 数据定义,数据操纵,数据库运行管理,数据库的建立维护维护等4个方面 4.数据独立性又可分为(逻辑独立性)和(物理独立性) 5。当数据的物理存储改变了,应用程序不变,而由DBMS处理这种改变,这是指数据的(物理独立性) 6。数据模型是由(数据结构) 、(数据操作)和(完整性约束)三部分组成的 7。(数据结构)是对数据系统的静态特性的描述,_(数据操作)是对数据库系统的动态特性的描述8.数据库体系结构按照(外模式)、(模式)和(内模式)三级结构进行组织 9.数据库体系结构按照___________ 、___________ 和_______________ 三级结构进行组织 10.实体之间的联系可抽象为三类,它们是(一对一)、(一对多)和(多对多) 11。数据冗余可能导致的问题有(存储空间大)和(数据不一致) 12.数据管理技术经历了(人工管理) 、(文件管理)和(数据库管理)三个阶段

数据库期末考试模拟试题及答案(一)

四、程序设计题(本大题共2小题,每小题15分,共30分) 1.对于教学数据库的三个基本表 学生student (sno,sname,sex,sage,sdept) 学习sc(sno,cno,grade) 课程course(cno,cname,cpno,ccredit) 试用SQL语句表示:下列语句。 (1)"查询全男同学信息情况" "select * from student where sex='男'" (2)"查询选修了1号课的学生的学号和成绩" "select sno,grade from sc where cno='1'" (3)"查询所有选修过课的学生的姓名,课程名及成绩" "select sname,cname,grade from student,sc,course where student.sno=sc.sno and https://www.360docs.net/doc/bd2007229.html,o=https://www.360docs.net/doc/bd2007229.html,o" (4)"查询选修了数据库原理课的最高成绩" "select max(grade) as '最高成绩' from student,sc,course where student.sno=sc.sno and https://www.360docs.net/doc/bd2007229.html,o=https://www.360docs.net/doc/bd2007229.html,o and cname='数据库原理'" (5)查询所有选修了1号课程的同学的姓名" " select sname from student where student.sno in (select sc.sno from sc where cno='1')" 2.设有一个SPJ数据库,包括S,P,J,SPJ四个关系模式(20分)供应商表S(SNO,SNAME,STATUS,CITY); 零件表P(PNO,PNAME,COLOR,WEIGHT); 工程项目表J(JNO,JNAME,CITY); 供应情况表SPJ(SNO,PNO,JNO,QTY);SPJ表 J表 S表 P表 请用关系代数完成如下查询: 1.求供应工程J1零件的供应商号 SNO 2.求供应工程J1零件P1的供应商号吗SNO 3.求供应工程J1零件为红色的供应商号码SNO 4.求没有使用天津供应商生产的红色零件的工程号JNO 5.求至少用了供应商S1所供应的全部零件的工程号JNO 1.∏sno(σJNO=‘J1’(SPJ)) 2.∏sno(σJNO=‘J1’ΛPNO=’P1’(SPJ)) 3.∏sno(σJNO=‘J1’(SPJ)∞σcolor=‘红’(P)) 4.∏jno(SPJ)-∏jno(∏sno(σcity=‘天津’(S))∞∏sno,jno (SPJ)∞∏jno σcolor=‘红’(P)) 5.∏jno, pno(SPJ)÷∏pno(σsno=‘s1’(SPJ)) 五、分析题(本大题共2小题,每小题15分本大题共30分) 1. 学生运动会模型: (1)有若干班级,每个班级包括: 班级号,班级名,专业,人数 (2)每个班级有若干运动员,运动员只能属于一个班,包括:运动员号,姓名,性别,年龄

测试十四种方法

软件测试是指使用人工或者自动的手段来运行或测定某个软件产品系统的过程,其目的是在于检验是否满足规定的需求或者弄清预期的结果与实际结果的区别。本文主要描述软件测试的类型。 1 数据和数据库完整性测试 数据与数据库完整测试是指测试关系型数据库完整性原则以及数据合理性测试。 数据库完整性原即: 主码完整性:主码不能为空; 外码完整性:外码必须等于对应的主码或者为空。 数据合理性指数据在数据库中的类型,长度,索引等是否建的比较合理。 在项目名称中,数据库和数据库进程应作为一个子系统来进行测试。在测试这些子系统时,不应将测试对象的用户界面用作数据的接口。对于数据库管理系统 (DBMS),还需要进行深入的研究,以确定可以支1持测试的工具和技术。 比如,有两张表:部门和员工。部门中有部门编号,部门名称,部门经理等字段,主码为部门编号;员工表中有员工编号,员工所属部门编号,员工名称,员工类型等字段,主码为员工编号,外码为员工所属部门编号,对应部门表。如果在某条部门记录中部门编号或员工记录员工编号为空,他就违反主码完整性原则。如果某个员工所属部门的编号为##,但是##在部门编号中确找不到,这就违反外码完整性原则。 员工类型如下定义:0:职工,1:职员,2:实习生。但数据类型为Int,我们都知道Int占有4个字节,如果定义成char(1).就比原来节约空间。 2 白盒测试 白盒测试是基于代码的测试,测试人员通过阅读程序代码或者通过使用开发工具中的单步调试来判断软件的质量,一般黑盒测试由项目经理在程序员开发中来实现。白盒测试分为动态白盒测试和静态白盒测试 2.1 静态白盒测试 利用眼睛,浏览代码,凭借经验,找出代码中的错误或者代码中不符合书写规范的地方。比如,代码规范中规定,函数必须为动宾结构。而黑盒测试发现一个函数定义如下: Function NameGet(){ …. } 这是属于不符合开发规范的错误。 有这样一段代码: if (i<0) & (i>=0) … 这段代码交集为整个数轴,IF语句没有必要 I=0; while(I>100){ J=J+100; T=J*PI; } 在循环体内没有I的增加,bug产生。 2.2 动态白盒测试 利用开发工具中的调式工具进行测试。比如一段代码有4个分支,输入4组不同的测试数据使4组分支都可以走通而且结果必须正确。 看一段代码 if(I<0){ P1 }else{ P2 } 在调试中输入I=-1,P1程序段通过, P2程序段未通过,属于动态黑盒测试的缺陷 3.功能测试 功能测试指测试软件各个功能模块是否正确,逻辑是否正确。

计算机多媒体技术及数据库系统基础测试题及答案

多媒体技术基础 一、单项选择题 1. 在一片直径为5英寸的CD-I光盘上,可以存储()MB的数据。 (A)128 (B)256 (C)650 (D)1024 2. 用户可以与计算机进行人机对话的操作是指()。 (A)兼容性(B)安全性(C)交互性(D)可靠性 3. 文件格式实际上是一种信息的()存储方式。 (A)数字化(B)文件化(C)多媒体(D)图形 4. 多媒体文件包含文件头和()两大部分。 (A)声音(B)图像(C)视频(D)数据 5. 选用合适的数据压缩技术,有可能将字符数据量压缩到原来的()%左右。(A)10 (B)20 (C)50 (D)80 6. 目前通用的压缩编码国际标准主要有()和MPEG。 (A)JPEG (B)A VI (C)MP3 (D)DVD 7. MPEG是一个()压缩标准。 (A)视频(B)音频(C)视频和音频(D)电视节目8. 矢量图形是用一组()集合来描述图形的内容。 (A)坐标(B)指令(C)点阵(D)曲线 9. 灰度图像中亮度表示范围有0~()个灰度等级。 (A)128 (B)255 (C)1024 (D)160万 10. 图像印刷分辨率单位一般用()表示。 (A)KB (B)像素(C)dpi (D)bit/s 11. GIF文件的最大缺点是最多只能处理()种色彩。 (A)128 (B)256 (C)512 (D)160万12. 截取模拟信号振幅值的过程称为()。 (A)采样(B)量化(C)压缩(D)编码13. 三维动画最基本的工作是:()、材质和动画。 (A)建模(B)设计(C)渲染(D)光照 14. 在三维动画中,往往把物体的色彩、光泽和纹理称为()。 (A)表面(B)材质(C)贴图(D)模型

《软件测试基础》期末A卷及参考答案

成都东软信息技术学院 期末试题——软件测试基础(A卷) 说明:本试卷共六大题,试卷满分100分,考试时间120分钟。 一、单项选择题:共20小题,每小题1 分,满分20分;请将答案填入题后括号中。 (说明:每题有且仅有一个正确答案) 1.在软件生命周期的哪一个阶段,软件缺陷修复费用最低() (A)需求分析(编制产品说明书)(B)设计 (C) 编码(D)产品发布 2.单元测试中用来模拟被测模块调用者的模块是() (A) 父模块(B)子模块 (C)驱动模块(D)桩模块 3.为了提高测试的效率,应该() (A)随机地选取测试数据; (B)取一切可能的输入数据作为测试数据; (C)在完成编码以后制定软件的测试计划; (D)选择发现错误可能性大的数据作为测试数据。 4.侧重于观察资源耗尽情况下的软件表现的系统测试被称为() (A)强度测试(B)压力测试 (C) 容量测试(D)性能测试 5.必须要求用户参与的测试阶段是() (A)单元测试(B)集成测试 (C) 确认测试(D)验收测试 6.软件测试员究竟做些什么。()

(A)软件测试员的目的是发现软件缺陷 (B)软件测试员的目的是发现软件缺陷,尽可能早一些 (C)软件测试员的目的是发现软件缺陷,尽可能早一些,并确保其得以修复 (D)软件测试员的目的是发现软件缺陷,尽可能早一些,并将其得以修复 7.下面四种说法中正确的是() (A)因果图法是建立在决策表法基础上的一种白盒测试方法; (B)等价类划分法是边界值分析法的基础; (C)健壮性等价类测试的测试用例要求在有效等价类中取值; (D)在任何情况下做黑盒测试皆应首先考虑使用错误推断法。 8.不属于单元测试内容的是() (A)模块接口测试(B)局部数据结构测试 (C) 路径测试(D)用户界面测试 9.划分软件测试属于白盒测试还是黑盒测试的依据是() (A)是否执行程序代码 (B)是否能看到软件设计文档 (C)是否能看到被测源程序 (D)运行结果是否确定 10.下列项目中不属于测试文档的是() (A)测试计划(B)测试用例 (C) 程序流程图(D)测试报告 11.几乎没有产品计划、进度安排和正规的开发过程的软件开发模式是() (A)大棒模式(B)边写边改模式 (C) 瀑布模式(D)快速原型开发模式 12.如果某测试用例集实现了某软件的路径覆盖,那么它一定同时实现了该软件的() (A)判定覆盖(B)条件覆盖 (C) 判定/条件覆盖(D)组合覆盖 13.下列说法不正确的是() (A)测试不能证明软件的正确性; (B)测试员需要良好的沟通技巧;

相关文档
最新文档