1. 初步规划

邻居的尾巴 · · 789 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

写在前面

因为目前正从事测试平台开发的相关工作,但是苦于市场上的大多数产品的针对性太强,或多或少没有一个通用的方案。于是想利用自己的空余时间,写一个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

总结

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


有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:邻居的尾巴

查看原文:1. 初步规划

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

789 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传