• 可靠性测试用例设计


    1、数据仓库服务架构

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

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

    1.2、用户对DWS集群做了一个操作,比如重启,对应于下图中的2。

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

    1.4、Console节点将请求通过HAproxy根据某种调度策略,将请求下发到service节点上,对应于图中的4。

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

    其它节点功能说明:

    1.6、monitor节点:监控集群的状态。

    1.7、billing节点:计费。

    1.8、OM Sevice节点(insight):运维节点,一些运维操作会通过该节点下发到service节点上。

    1.9、DB节点:数据库节点,一主一备。

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

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

    测试过程:

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

    2.2、了解软件的架构。

    2.3、设计可靠性测试用例。

    2.4、执行可靠性测试用例。

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

    3、用例设计

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

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

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

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

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

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

    3.6、单个节点重启,或多个节点重启。

    3.7、功能首次失败时间,比如:创建DWS集群首次失败时间,即初始操作和首次失败之间的平均时间。

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

    3.9、并发操作:比如同时创建50个集群,观察成功率,可以使用BrupSuite工具。

    3.10、业务能否从节点A迁移到节点B,比如创建集群的任务正在节点service1上运行,此时,service1宕机,任务能否成迁移到service2或service3上。

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

     写满磁盘

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

    占满内存

    待补充

    占满CPU

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

  • 相关阅读:
    SpringMVC的入门示例
    [PTA] 数据结构与算法题目集 6-1 单链表逆转
    [PTA] L3-015 球队“食物链”
    [PTA] 1001. 害死人不偿命的(3n+1)猜想 (Basic)
    [PTA] 1002. 写出这个数 (Basic)
    [opengl] 画一个可移动的自行车 二维几何变换(平移、旋转、缩放)
    css inline-block 水平居中
    css 图片裁剪显示
    [leetcode] 19. Remove Nth Node From End of List (Medium)
    [leetcode] 20. Valid Parentheses (easy)
  • 原文地址:https://www.cnblogs.com/webDepOfQWS/p/10623419.html
Copyright © 2020-2023  润新知