zoukankan      html  css  js  c++  java
  • openstack-test-ui设计

    notice:该设计文档是基于demo项目进行的,设计一些技术上的验证,以及整个流程的打通,今后正式开发,也是基于这个核心进行扩展。

    前端设计

    技术栈:

    • html5
    • jQuery
    • ajax
    • jinja2

    前端(demo)
    模块:
    前端主要涉及三个模块。rally的压力测试,tempest功能性测试,配置信息。

    关于流程:rally和tempest测试项都是openstack的一些常用组件,在前端通过jquery,ajax,jinja2和后端进行数据交互。
    同时,在前端click触发后端进行相关的操作。

    关于数据:前端和后端数据格式统一采取json格式。后端向前端传递数据为测试平台获得的经过处理的json格式的数据。这些数据用于展示测试结果。

    服务端设计

    技术栈:

    • flask
    • python
    • 蓝图
    • 路由
    • 工厂模式

    服务端(demo)

    模块:
    服务端主要涉及三个模块:展示模块,主要是为了和前端进行交互的;远程处理,主要是完成在测试平台完成测试的,以及获取一些测试结果;而数据处理主要是对测试结果进行分析提取,使用设计的数学模型对rally和tempest模块进行分。
    关于流程:整个服务端开发基于Python的flask web框架进行开发,使用蓝图进行路由的注册,为了后续易于扩展其他openstack组件来进行测试,使用蓝图可以很方便进行解耦。同时因为很多模块使用蓝图都需要在application注册路由,为了方便使用工厂模式进行处理。
    远程模块的处理主要使用paramiko模块进行远程连接和执行命令。并把处理的数据保存到本地。
    数据处理:数据处理模块的流程暂时只是把后端测试结果(json)格式的保存到本地,后续会采用一些算法进行分类处理。

    测试平台

    技术栈:

    • linux命令
    • rally使用
    • shell脚本
    • apache+docker(部署使用)

    测试平台demo

    模块:

    这部分主要是在openstack可达环境进行测试,测试项为rally和tempest,然后对数据进行简单处理(如:生成的html报告去掉google的渲染)
    关于流程:由于是demo的设计方案,所以上图只给出了rally的demo设计方案。主要对rally安装,以及在rally中注册openstack的认证。通过rally调用openstack的api来进行测试工作。rally执行测试命令和步骤集成到一个shell脚本里进行,然后再通过另外一个脚本来进行对数据的处理。

  • 相关阅读:
    CentOS 6.5/6.6 安装mysql 5.7 最完整版教程
    linux下的find文件查找命令与grep文件内容查找命令
    为mongodb数据库增加用户名密码权限
    mac 用密钥远程登陆
    MongoDB导入导出以及数据库备份
    ubuntu12.04上的mongodb卸载
    在Ubuntu下进行MongoDB安装步骤
    slice,substr和substring的区别
    再议js的传递和深复制
    js 参数传递
  • 原文地址:https://www.cnblogs.com/codeblock/p/openstacktestui-she-ji.html
Copyright © 2011-2022 走看看