问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

数据库中视图怎么进行软件测试

发布网友 发布时间:2022-04-01 22:32

我来回答

1个回答

热心网友 时间:2022-04-02 00:02

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

系统测试

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

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

集成测试

集成测试是主要针对接口进行的测试工作,从数据库的角度来说和普通测试稍微有些区别对于数据库测试来说,需要考虑的是数据项的修改操作、数据项的增加操作、数据项的删除操作、数据表增加满、数据表删除空、删除空表中的记录、数据表的并发操作、针对存储过程的接口测试、结合业务逻辑做关联表的接口测试。

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

单元测试

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

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

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

功能测试

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

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

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

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

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

性能优化分4部分:

1、物理存储方面

2、逻辑设计方面

3、数据库的参数调整

4、SQL语句优化

性能测试:

我们如何对性能方面进行测试呢,业界也提供了很多工具通过数据库系统的SQL语句分析工具,我们可以分析得到数据库语句执行的瓶颈,从而优化SQL语句。

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

Swingbench:(这是一个重量级别的feature,类似LR,而且非常强大,只不过专门针对oracle而已)数据库厂商也意识到这点,例如oracle11g已经提供了real applicationtest,提供数据库性能测试,分析系统的应用瓶颈。

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

安全测试:

软件日益复杂,而数据又成为了系统中重中之重的核心,从以往对系统的破坏现在更倾向于对数据的获取和破坏。而数据库的安全被提到了最前端自从SQL 注入攻击被发现,冒失万无一失的数据库一下从后台变为了前台,而一旦数据库被攻破,整个系统也会暴露在黑客的手下,通过数据库强大的存储过程,黑客可以轻松的获得整个系统的权限。而SQL的注入看似简单缺很难防范,对于安全测试来说,如何防范系统被注入是测试的难点。

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

对于这点来说业界也有标准,例如ISO IEC 21827,也叫做SSE CMM 3.0,是CMM和ISO的集成的产物,专门针对系统安全领域的另外一方面,数据库的健壮性,容错性和恢复能力也是我们测试的要点

我们也可以发现功能测试,性能测试,安全测试,是一个由简到繁的过程,也是数据库测试人员需要逐步掌握的技能,这也是以后公司对数据库测试人员的要求。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
荣耀MagicVs2怎么使用更省电荣耀MagicVs2使用更省电方法【详解】_百度... 荣耀MagicV2怎么开启应用通知荣耀MagicV2开启应用通知方法【步骤... 面部脂溢性皮炎能根治吗 脸部皮炎能根治吗 清蒸螃蟹蒸多长时间 清蒸螃蟹做法英语介绍过程 关于退档问题。我是湖南文科生,今年分数583,正好压一本线。 ...背上有很多痘痘,用了很多药,也没感觉有什么效果,怎么才可以去掉啊... ...好多年了,还有好多痘印,用了很多药物均没有效果,怎么办哦?_百度知 ... 脸上总是起痘痘,起了几年了,在医院也开过药,也用过祛痘的洗面奶,可是... safari浏览器下载的游戏怎么安装 湖北财经学院什么时候更名 苹果safari浏览器无法下载图片 湖北哪一所大学学经济比较好? 财经类专业最好的是哪些大学 湖北有哪些以会计为王牌专业的专科大学 不小心把苹果手机自带的浏览器删除了该怎么下载回来ios14 财经类的专科学校有哪些?谢谢 武汉有哪些财经类的专科学校 湖北财经大学在哪 中国好的财经类学校有哪些? 武汉除了中南财经*大学外 还有哪几所比较好的财经类大学 我想要考研 最好的财经大学有哪些 武汉市有哪些财经大学? 急... 湖北范围内有哪些财经类的大学了 如何获得免费Q币 如何免费拿Q币啊 怎么样免费获得Q币? Q币怎么领啊 如何免费领取Q币? 苹果手机在Safari浏览器上下载过又删除的软件在哪里能看到? 教你怎么给U盘加密? u盘的加密功能是怎样回事? 如何制作加密u盘 U盘加密原理你了解多少 铝前(含铝)离子不放电,氢(酸)后离子先放电,氢(酸)前铝后的离子看条件 如何对U盘的个别文件夹进行加密? 为什么铝和铝前面的金属离子在溶液中不放电 钡的活泼性在铝前,为什么可用活泼金属电解法制钡 实验用铝前为什么要用氢氧化钠洗铝? 工业上冶炼铝前,首先将铝土矿提纯,得到纯净的Al2O3 ,下图 东成26电锤配件铝前喇叭口多少钱一个 在金属活动性顺序表中镁排在铝前,从哪些方面可以体现出来 常采用热分解法和热还原法冶炼的金属分别有哪些? 原电池,电解池中离子为什么会定向移动 电解池的阴、阳极产物,具体怎样分析?? 电解池是如何得失电子的 请问?化学知识 铝材前处理碱蚀剂能去除工件表面上的氧化膜吗? 在化学中。钾钙钠镁铝。钠排在铝前面。 为什么铝能够和氢氧化钠(溶液)反应。(和氢氧化