通用技术 如何学习测试平台的开发?

狂天 · July 01, 2022 · Last by Ouroboros replied at July 04, 2022 · 5538 hits

请教下诸位大佬这个问题。

我的学习路径

先简单学了 Spring Boot 和 Vue。
然后跟着网上的教程写了一个 demo,只有导航和添加数据的功能。

对于后台开发我掌握的东西:

前端:
Vue:能编写简单的 Vue 文件(写标签,调用方法,发送请求)及 ElementUI 的简单使用(拿来就用)。
路由:设置 Vue 的路由跳转及是否需要登陆,路由访问拦截器。
后端:
可以根据数据库创建对应的实体(用类对应上数据库里的表),通过实现 JpaRepository 创建 DAO 对象对数据进行操作(封装对数据的操作),编写 Service 调用 DAO 进行逻辑处理(写好操作逻辑),编写 Controller 展示接口并调用 Service(写接口,并调用逻辑方法)。

后面怎么做:

一、照别人的来:
问题:
1.页面设计:
我想照别人的依样画葫芦,可我 CSS 搞不明白,不知道咋排版
2.参照大项目
我直接去看网上开源的大项目(metersphere),里面文件太多看蒙比。
二、自己搞
没啥问题,就是自己懂的少,慢慢来吧。

我目前考虑是自己搞。

那后面该开发点啥呢?
我目前想最主要就是把接口自动化整上去。
可我的接口自动化用 python 写的(unittest 读 excel 执行用例,htmltestrunner 生成报告),咋整到 java 的后台里呢?
另外后台技术上我还有哪需要补充学习的,或者可以加哪功能欢迎大佬拍砖。

共收到 9 条回复 时间 点赞

要不试试流马测试平台。架构轻,代码少,更适合学习使用,自动化测试核心功能都已完善,可拓展性强。另外引擎也是基于 python+unittest 写的,正好给你参考参考怎么从框架到测试平台。
关于测试平台如何设计,你可以看我之前发的帖子,供参考。
如果有帮助的话,可以 github 给个 star,哈哈。

基本开发技能从你上面说的看,基本都掌握了。剩下的应该主要是具体功能设计了。

既然你已经明确了接口自动化是下一步这个平台需要的功能,建议:
1、看看同类型其他项目的功能设计,乃至代码实现。尽量多看几个,了解下大概的套路。
2、结合自己的情况,把自己当做产品,通过前端画一下大概的原型(数据写死,只是出个大致的排版和能跳转交互就好);如果前端不够熟悉画得慢,可以直接纸和笔或者找一些在线原型工具画。
3、画完原型,可以给未来的用户评审下,看大家有没有啥意见。评审没问题后,继续设计下技术方案,比如页面大概拆成哪些组件,服务端要有哪些接口、哪些表等。

设计完基本就是写代码了。

一般技术掌握了后,最容易出现的问题就是没想好就开干,干出来可能用起来很别扭,也很难推。模块化可能也比较差,扩展难。

平台是干嘛用的呢? 无非就是把已有的各种测试框架和脚本集成到一个比较美观的界面上面,让大家点点鼠标就能触发测试,看到报告,做一些牛逼的图表,甚至可以直接在上面写用例。
如果没有实际的平台需求,其实现成的 Jenkins 等工具就很方便,该有的都有了;实在想要放到平台上面的话,简单的做法也就是做一个触发,直接通过命令去运行你的 unittest。

原型、需求分析、表设计、后端分层设计,前端照着模板套就完了,当然还是要懂点 html + css + js。

5Floor has deleted

就是 web postman

看来是奔着学习目的来开发测试平台的,并不是为了公司级使用。技术栈是 SpringBoot+Vue。建议照着 MeterSphere 抄一遍,做个基于 JMeter 的接口自动化测试平台,对能力提升有莫大帮助。我也正在按这个路子做,连项目都创建好了,还没开工:
https://github.com/dongfanger/japi
目前正囫囵吞枣刷一遍 Java 官方教程、Java 虚拟机、SpringBoot 官方教程、阿里 Java 开发手册、Java 技术栈知识,为项目开发做足基础准备。

孤千羽 回复

我觉得超哥说的对

最近学到的一个方法:找一个类似的测试平台进行二次开发。
在开发之前做好功课,多看几个平台或者框架,对比完之后开始着手抄,抄的过程中,你也许会有不同的想法,那么尝试着自己实现。我最近就在这样做,一起搞起来吧。

先抄,再给自己提需求,再去实现。三步就完事儿

需要 Sign In 后方可回复, 如果你还没有账号请点击这里 Sign Up