来源:郑州千锋软件测试培训学校时间:2023-02-11 15:35:38
郑州目前哪个软件测试培训班更专业名单榜首推荐,郑州千锋IT教育,国内老牌it培训学校,千锋全国18个城市22个校区,专业开设:HTML5前端培训、JavaEE+分布式开发培训、Python人工智能+数据分析培训、全链路UI/UE设计培训、云计算培训、全栈软件测试培训、大数据+人工智能培训、智能物联网+嵌入式培训、Unity游戏开发培训、Go语言开发培训、网络安全培训、互联网营销培训,采用全程面授高品质、高体验培养模式,教学大纲紧跟企业需求,并推出软考、Adobe认证、PMP认证、红帽RHCE认证课程,拥有全国一体化就业保障服务,成为学员信赖的职业教育品牌。
学习软件测试需要了解的数据库知识?
之所以把数据库单独列出来,是因为数据库的知识对于当今的很多产品都是非常核心的内容。不管是在手动测试还是自动化测试中,都有需要到数据库进行数据校验的时候。
目前主要使用的数据库可以分为两类:
关系型数据库
非关系型数据库
1、关系型数据库
关系型数据库是较常见的数据库类型,这类数据库通过RDBMS数据库程序来进行管理和使用,常见的有SQL Server,MySQL等等。
关系型数据库中强调一个事务(Transaction)的概念。所谓事务是用户定义的一个数据库操作系列,这些操作要么全部执行,要么全部不执行,是一个不可分割的工作单位。例如在关系数据库中,一个事务可以是一条SQL语句、一组SQL语句或整个程序。
事务应该具有4个属性:原子性、一致性、隔离性、持久性。这四个属性通常称为D特性。
原子性(Atomicity):事务作为一个整体被执行,包含在其中的对数据库的操作要么全部被执行,要么都不执行。
一致性(Consistency):事务应确保数据库的状态从一个一致状态转变为另一个一致状态。一致状态的含义是数据库中的数据应满足完整性约束。
隔离性(Isolation):多个事务并发执行时,一个事务的执行不应影响其他事务的执行。
持久性(Durability):一个事务一旦提交,他对数据库的修改应该保存在数据库中。对于实际的应用来说,SQL语言是必须要掌握的。能够通过SQL语句在数据库中找到需要的数据,是测试工程师必备的技能。SQL语句的语法大体上比较类似,在一些细节上不同的RDBMS会有些许的差别。
对于自动化实现来说,在自动化测试中通过访问数据库来获得期望值也是很常见的场景。不同的语言都有访问数据库的库,整体来说应用也很简单。
2、非关系型数据库
随着互联网中大量的非结构化数据的产生,例如社交网络等等应用,用户的个人信息,社交网络,地理位置,用户生成的数据和用户操作日志已经正在以几何级数的速率增加,同时还面临大量的数据挖掘工作,传统的关系型数据库已经无法满足。所以NoSQL渐渐的发展了起来。
NoSQL较突出的特点就是数据的非结构化,通俗的讲,就是数据不再是以列和行这样的形式存储的。
NoSQL存储数据的方式很多:值对存储,列存储,文档存储。例如比较常见的MongoDB就是将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB文档类似于JSON对象。字段值可以包含其他文档,数组及文档数组。
3、RDBMS vs NoSQL
RDBMS
高度组织化结构化数据
结构化查询语言(SQL)
数据和关系都存储在单独的表中。
数据操纵语言,数据定义语言
严格的一致性
基础事务NoSQL
代表着不仅仅是SQL
没有声明性查询语言
没有预定义的模式:键-值对存储,列存储,文档存储,图形数据库
较终一致性,而非D属性
非结构化和不可预知的数据
CAP定理
高性能,高可用性和可伸缩性