可靠性测试用例设计

一、数据仓库服务架构chrome

数据仓库服务(Data Warehouse Service),下面简称DWS 。主要为客户提供数据存储,数据挖掘,数据分析等功能。其内核采用开源的关系数据库管理系统Postgres SQL加以定制开发。服务部署在集群上,集群有3~32个虚拟主机组成。用户使用DWS集群的请求处理流程以下:数据库

1.一、用户经过客户端,例如chrome,IE,FireFox等浏览器登陆DWS界面,对应于下图中的1。浏览器

1.二、用户对DWS集群作了一个操做,好比重启,对应于下图中的2。服务器

1.三、Nginx根据调度策略将重启请求下发到某一个console节点上,对应于下图中的3.网络

1.四、Console节点将请求经过HAproxy根据某种调度策略,将请求下发到service节点上,对应于图中的4。架构

1.五、service节点处理重启任务,并更新数据库中相关表的记录,对应于图中的5,并返回处理结果。并发

其它节点功能说明:运维

1.六、monitor节点:监控集群的状态。工具

1.七、billing节点:计费。测试

1.八、OM Sevice节点(insight):运维节点,一些运维操做会经过该节点下发到service节点上。

1.九、DB节点:数据库节点,一主一备。

二、可靠性测试的含义与测试过程

可靠性测试是指:系统在常规与意外环境执行和保持其功能的能力,系统必须能以一致性和可重复性的方式执行并保持其功能。(概念出自《敏捷软件测试:测试人员与敏捷团队的实践指南》)

测试过程:

2.一、明确可靠性测试的目标,同一个系统,不一样的测试目标设计出来的用例也不同。

2.二、了解软件的架构。

2.三、设计可靠性测试用例。

2.四、执行可靠性测试用例。

2.五、分析可靠性测试结果并输出测试报告返回给测试经理。

三、用例设计

主要从如下几个方面来考虑,可靠性测试的原则之一:故障恢复后业务可以自修复。

3.一、从架构设计图来看一共涉及的的节点有:console,service,billing,db,insight,monitor。其中只有insight部署在一台主机上,其他节点均部署在2台或2台以上的服务器上,以service为例,一台服务器宕机了是否会影响业务,两台呢,或者所有宕机后开机可否自行恢复业务呢?

 

3.二、内存占用率:单个节点的内存占用率达到90%和100%;多个节点 内存占用率达到90%或100%。

 

3.三、CPU占用率::单个节点的CPU占用率达到90%和100%;多个节点 CPU占用率达到90%或100%。

 

3.四、磁盘使用率::单个节点的磁盘使用率达到90%和100%;多个节点 磁盘使用率达到90%或100%。

 

3.五、网路故障:单个节点网络故障,多个节点网络故障。单个节点和多个节点某个网卡down掉。

 

3.六、单个节点重启,或多个节点重启。

 

3.七、功能首次失败时间,好比:建立DWS集群首次失败时间,即初始操做和首次失败之间的平均时间。

 

3.八、DWS集群长时间运行业务,是否出问题。

 

3.九、并发操做:好比同时建立50个集群,观察成功率,可使用BrupSuite工具。

 

3.十、业务可否从节点A迁移到节点B,好比建立集群的任务正在节点service1上运行,此时,service1宕机,任务可否成迁移到service2或service3上。

 

四、可靠性测试过程当中用到的工具

 写满磁盘

参考命令:dd if=/dev/zero bs=1024 count=1000000 of=/root/1Gb.file 

占满内存

待补充

占满CPU

参考:https://blog.csdn.net/robertsong2004/article/details/36879233

相关文章
相关标签/搜索