zoukankan      html  css  js  c++  java
  • 1. 初步规划

    写在前面

    本项目所有代码均可在github上下载。

    因为目前正从事测试平台开发的相关工作,但是苦于市场上的大多数产品的针对性太强,或多或少没有一个通用的方案。于是想利用自己的空余时间,写一个web测试平台,也顺便记录下自己的学习历程。至于是否太监,就不得而知了。先暂且将他命名为lamb吧~~

    软件分类

    首先我们需要明确产品的目标用户,lamb主要是提供给广大QA同学使用,基于web页面的一款测试工具。

    所以软件的载体很明确,即PC端浏览器,考虑到手机端浏览器没有相关经验,暂时不支持。

    技术选型

    技术选型方面,首先的计划是做到前后端分离。前后端分离的好处,是可以让前端专注于页面交互和数据的展示。以前我也用过flask的template, 那样在html里渲染数据,怎么说呢。不太方便也不太利于团队协作,而且数据和页面是绑定的,无法做到独立获取数据。

    • 前端

      React+dva.js+antd

      算是一个学习redux的过程,选用react的原因是react稍微熟悉一点,然后antd也有一定的了解。

    • 后端

      gin(golang)或者flask(Python)

      这里就比较纠结了,看心情了。目前公司使用的是go语言,但是久而久之感觉自己都不会写Python了T.T,所以也考虑一下用回自己的老本行吧。其实如果有机会的话也想试试spring, 但是太杂了着实不好。后端语言框架的话还是待定吧。。

    • 中间件

      • redis(可选)

      只是针对测试平台的话,数据库已经够用了,所以暂时先不需要这个玩意儿。

      • db

        考虑使用2种数据库,关系型和非关系型。

        • 关系型Mysql

          主要存放用户/团队/权限等数据。

        • 非关系型Mongodb

          用mongo的目的,主要是存放测试用例,测试报告和日志等数据。

      • MQ(消息队列)

        用mq主要是处理email, 用例执行等异步接口。

      • jwt(json web token)

        主要用来管理用户登录状态信息并配合权限控制。

      • job调度

        可考虑结合jenkins api,也可以自己造轮子。用来做定时任务等工作。

    功能蓝图

    如下图, 画完之后瞬间就不想做了。嘎嘎嘎···

    image.png

    image.png

    image.png

    总结

    总之呢,要做的东西很多~~~~可能后面会阉割掉一些东西吧,大概方向定一下。慢慢做,算是鞭挞自己吧···

    下一篇: 后端服务设计

  • 相关阅读:
    idea本地安装 lombok插件
    win7系统开机启动出现蓝屏,提示BAD_SYSTEM_CONFIG_INFO
    使用mini-textbox控件时 不能获取value值
    为表格动态添加一行,miniui组件无效
    miniui表格load数据成功后,回调函数,其中setData要用如下方法
    路径1
    路径
    dubbo spring bean id冲突
    @Transactional spring 配置事务 注意事项
    Spring事务管理只对出现运行期异常进行回滚
  • 原文地址:https://www.cnblogs.com/we8fans/p/9665656.html
Copyright © 2011-2022 走看看