当前位置: 首页 > news >正文

测试同学如何快速开发测试平台?

     转眼已经好几个月没有发表什么文章了,因为疫情原因,大家工作都不怎么顺利,没有什么心情。再者,最近一直在搞移动端精准测试的项目,有太多技术难点需要攻克。从各个网站上都找不到解决方案,只能不断地尝试,摸着石头过河,还好最终影响项目开发的技术壁垒都给突破了,这类问题我也总结了不少技术文档,受众群体较少,也就没有发布出来。但这一个来月,看到组内的小伙伴,有不少业务线都有开发测试平台的需求,就根据自己以往的经验,介绍一下如何快速开发测试平台?

一,提前做好规划

    当你想开发一个测试平台的时候,一定要提前做好规划。

  • 为什么要开发这个测试平台?
  • 公司里面有没有类似的平台?
  • 其他公司有没有类似的平台?
  • 这个平台要解决什么问题?

     这些要想好,在争取资源或者向领导汇报的时候,非常有用。一个平台不需要做多牛,只要能解决你当前问题即可。或者你想开发一个非常大的系统,甚至做成一个生态,也无可厚非。但要做好规划,不然长时间没有产出的话,就无法得到领导的支持。

二,做好技术选型

    开发任何平台都不要从零做起,在规划好要做什么的时候,下一步就要去做技术调研了。比如说,我要开发一个接口测试平台,应该如何入手?

  • 调研一下现在业界有什么知名的接口测试平台吗?
  • 是否有开源的项目可以拿来借鉴呢?
  • 其他公司是怎么做的呢?
  • 公司内部,或是部门内部有开发类型的平台吗?
  • 分析可能参与的同学与公司的技术,选择技术栈,java,python?
  • 相应语系现在常用的Web开发框架有什么,如:python的Django,Flask,Tornado等,java的spring等;
  • 需要用到什么中间件或是数据库,redis, mysql, mongodb等;

     如果能用开源就尽量用开源,这不涉及什么版权问题,但能提高你的开发效率。很多公司会一直强调不要重复造轮子,这从整体来说是好的,不能浪费资源嘛。如果公司有独立的平台架构组,他们会提供很多通用的平台,框架,组件什么的,我们就真的不需要重复造轮子了。如果没有这样的技术储备,那不要重复造轮子就是,你不要开发东西了,要用我的哟!你细品一下吧!

三,整体架构设计

开发测试平台和写自动化测试用例,或者你参与一个大项目的部分功能是完全不一样的。

  • 需先整体做好设计,使用什么样的开发模式?现在测试平台肯定是前后端分离的开发模式。
  • 那就要考虑前端用什么框架开发(VUE,React或是其他)?
  • 后台接口用什么框架开发(java的框架还是用Python的框架)?
  • 有没有开源的项目可以直接拿来用,或是参考的?
  • 前后端各自己的架构是什么样子,整体架构设计要规划好,各个模块的功能是什么?相互之间如何交互等。

     最好文档化,图形化地总结一下,然后和相关同学进行有组织的讨论,得到最终结果后再去拆解任务,进行排期,开发代码等工作。如果前期不做好规划,想到哪儿开发到哪儿,你就会发现后期会有很多问题,各种联调就会让你头大。

四,人员安排及阶段性调整

     做任何事情都很难做到,先做好规划然后一成不变地执行下去。在开发测试平台的时候也是一样的,在写好整体架构的同时,也要做好如下事情:

  • 选择参与项目的同学,是你自己开发,还是需要与其他同学一起开发?
  • 参与项目的同学技术水平如何,都擅长什么语言?
  • 选择项目的开发语言,做好项目管理与编码规范。
  • 拆分需求,安排相应的同学。
  • 按照排期进行开发工作,然后每天或是每周相关同学要对一下,及时发现风险或是做适当的调整。

      当然一个项目要有负责人,在遇到不同意见,需要进行调整时,要有人能拍板定案,否则就会反复讨论下去,没有任何结果。但是也不能没有原则地进行调整,这也不免会有人因为有技术难点,或是懒于做什么事情,建议调整的。

五,学会展示自己

     要学会向领导,其他同学展示自己开发的成果,以便争取到更多的资源和支持,同时也会给自己信心。还有一点就是,无论开发任何平台,都是要解决一定的问题的,但是有的时候现实中的使用场景和规划不一样,或是因为不懂如何使用而让平台无法正常工作的情况。所以要组织相关使用方做定时培训,讲解平台的使用方法,注意事项等。一定要让业务同学多多去使用,然后再根据实际情况进行不断的优化与提升,才能让平台越来越能帮助大家解决问题的。

相关文章:

测试同学如何快速开发测试平台?

转眼已经好几个月没有发表什么文章了,因为疫情原因,大家工作都不怎么顺利,没有什么心情。再者,最近一直在搞移动端精准测试的项目,有太多技术难点需要攻克。从各个网站上都找不到解决方案,只能不断地尝试&a…...

【程序员接口百宝箱】免费常用API接口

一、短信发送 短信的应用可以说是非常的广泛了,短信API也是当下非常热门的API~ 短信验证码:可用于登录、注册、找回密码、支付认证等等应用场景。支持三大运营商,3秒可达,99.99%到达率,支持大容量高并发。…...

使数组和能被P整除[同余定理+同余定理变形]

同余定理同余定理变形前言一、使数组和能被P整除二、同余定理变形总结参考资料前言 同余定理非常经典,采用前缀和 map,当两个余数前缀和为一个值时,则中间一段子数组刚好对P整除。但是能否找到前面是否有一段子数组和可以对P整除呐&#xf…...

25k的Java开发常问的Synchronized问题有哪些?

前言:面试高频的Synchronized问题大多集中在应用场景、底层实现原理、锁的升级过程。 文章目录 Synchronized定义应用场景对象加锁实现原理JDK6以前JDK6版本及以后对象从无锁到偏向锁转化的过程(大概讲五分钟)轻量级锁升级的过程(大概讲五分钟)自旋锁策略(大概讲五分钟)…...

ES增量同步方案

1 基于业务代码嵌入式的增量同步方式在Java业务代码要修改业务数据的地方,增加调用写入ES数据的方法优点:1、实现方式简单,可控粒度高;2、不依赖第三方数据同步框架;3、数据库不用做特殊配置和部署;缺点&am…...

计算器--课后程序(Python程序开发案例教程-黑马程序员编著-第6章-课后作业)

实例1:计算器 计算器极大地提高了人们进行数字计算的效率与准确性,无论是超市的收银台,还是集市的小摊位,都能够看到计算器的身影。计算器最基本的功能是四则运算。本实例要求编写程序,实现计算器的四则运算功能。 实…...

YOLOv5中添加SE模块详解——原理+代码

目录一、SENet1. 设计原理2. SE Block2.1 Squeeze:Global Information Embedding2.2 Excitation:Adaptive Recalibration3. SE-Inception and SE-ResNet二、YOLOv5中添加SENet1.修改common.py2.修改yolo.py3.修改yolov5s.yaml参考文章一、SENet 论文地址:Squeeze-a…...

arcgispro3.1(账号登陆)

ArcGIS Pro 3.1 更新中文概览专注于 制图、GIS、Python前言:本次更新给了我两个惊喜,一个是本来 ArcMap 就有的功能,另一个明显是学习的 QGIS,嘿嘿,大家往下看吧。整理翻译了一下官方的 ArcGIS Pro 3.1 新特性更新概览…...

VB6换个思路解决微信下载文件只读的问题(含源码)

日期:2023年3月10日 作者:Commas 签名:(ง •_•)ง 积跬步以致千里,积小流以成江海…… 注释:如果您觉得有所帮助,帮忙点个赞,也可以关注我,我们一起成长;如果有不对的地方&#xf…...

Allegro如何知道组合操作命令的拼写

Allegro如何知道组合操作命令的拼写 前面介绍了如何知道单个操作命令的拼写,但如果是复合命令,就无法直观的通过命令来了解,如下图 Snap Pick to -Segment这个命令拼写是什么 如何知道,具体操作如下 点击File点击Script 出现Scripting窗口...

CDO高效处理气象数据

基础命令,只需要在终端输入命令按enter运行即可 ####### 查看文件信息 cdo infos xxx.nc #显示nc文件中的变量名 cdo showname sst.nc #读文件夹下的数据 for i in $(ls);do echo processing $i ;done #线性插值 cdo remapbil,经度纬度 input.nc output.nc ;done ##…...

1. Qt Designer Studio界面介绍

1. 说明: Qt当中的Qt Quick框架使用QML语言来快速搭建优美的界面,但是对于单纯做界面的设计人员并不是很友好,还要让界面设计人员去消耗时间成本学习QML语法。Qt Designer Studio软件就是为了解决这个问题而设计的,工作人员不需要…...

elementUI+vue_vue-admin-template框架

目录安装版本管理文件mock文件夹---模拟数据permission.js --- 登录权限控制文件安装 克隆项目git clone https://gitee.com/panjiachen/vue-admin-template.git进入项目目录cd vue-element-admin安装依赖npm install启动服务npm run dev版本管理 由于我们之前的项目是直接从…...

SpringBoot项目使用Schedule注释创建定时任务

文章目录知识讲解相关注释(主要两个,EnableScheduling和Scheduled)scheduled的cron语法代码项目目录结构启动类(Application)定时任务类(Task)配置类(application.properties)pom依赖展望(Quart…...

学习 Python 之 Pygame 开发魂斗罗(十一)

学习 Python 之 Pygame 开发魂斗罗(十一)继续编写魂斗罗1. 改写主类函数中的代码顺序2. 修改玩家初始化3. 显示玩家生命值4. 设置玩家碰到敌人死亡5. 设置敌人子弹击中玩家6. 修改updatePlayerPosition()函数逻辑继续编写魂斗罗 在上次的博客学习 Pytho…...

Linux驱动开发

一、驱动分类Linux中包含三大类驱动:字符设备驱动、块设备驱动和网络设备驱动。其中字符设备驱动是最大的一类驱动,因为字符设备最多,从led到I2C、SPI、音频等都属于字符设备驱动。块设备驱动和网络设备驱动都要比字符设备驱动复杂。因为其比…...

32--Vue-前端开发-Vue语法之组件化开发

一、vue语法回顾 购物车的例子 eg1:计算商品价格(掌握对象的迭代方法) <!DOCTYPE html> <html lang="en"> <head>...

打怪升级之CFileDialog类介绍

CFileDialog类 CFileDialog封装用于文件打开操作或文件保存操作的常见对话框。信息来源自Windows官方文档&#xff1a;https://learn.microsoft.com/zh-cn/cpp/mfc/reference/cfiledialog-class?viewmsvc-170 这里重点介绍几个常用的函数功能&#xff1a; 构造函数 explic…...

配天智造自主原创数字工厂:百余名员工人均创收122万

配天智造&#xff08;832223&#xff09;2022年度报告显示&#xff0c;报告期内公司实现营业收入1.3亿元&#xff0c;同比增长52%&#xff0c;归属于挂牌公司股东的净利润3867万元&#xff0c;同比增长28.11%。而这家公司全部在职员工仅有107人&#xff0c;人均创收约为122万。…...

COLMAP

简介&#xff1a;在使用instant-ngp过程中需要使用COLMAP得到模型的必要输入&#xff0c;比如模型需要的相机外参我们就可以通过COLMAP中的sparse reconstruction稀疏重建得到&#xff1b;而对于depth map深度图我们则需要dense reconstruction稠密重建得到&#xff0c;下面我们…...

Java 语言特性(面试系列1)

一、面向对象编程 1. 封装&#xff08;Encapsulation&#xff09; 定义&#xff1a;将数据&#xff08;属性&#xff09;和操作数据的方法绑定在一起&#xff0c;通过访问控制符&#xff08;private、protected、public&#xff09;隐藏内部实现细节。示例&#xff1a; public …...

Admin.Net中的消息通信SignalR解释

定义集线器接口 IOnlineUserHub public interface IOnlineUserHub {/// 在线用户列表Task OnlineUserList(OnlineUserList context);/// 强制下线Task ForceOffline(object context);/// 发布站内消息Task PublicNotice(SysNotice context);/// 接收消息Task ReceiveMessage(…...

最新SpringBoot+SpringCloud+Nacos微服务框架分享

文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的&#xff0c;根据Excel列的需求预估的工时直接打骨折&#xff0c;不要问我为什么&#xff0c;主要…...

leetcodeSQL解题:3564. 季节性销售分析

leetcodeSQL解题&#xff1a;3564. 季节性销售分析 题目&#xff1a; 表&#xff1a;sales ---------------------- | Column Name | Type | ---------------------- | sale_id | int | | product_id | int | | sale_date | date | | quantity | int | | price | decimal | -…...

IT供电系统绝缘监测及故障定位解决方案

随着新能源的快速发展&#xff0c;光伏电站、储能系统及充电设备已广泛应用于现代能源网络。在光伏领域&#xff0c;IT供电系统凭借其持续供电性好、安全性高等优势成为光伏首选&#xff0c;但在长期运行中&#xff0c;例如老化、潮湿、隐裂、机械损伤等问题会影响光伏板绝缘层…...

MySQL 部分重点知识篇

一、数据库对象 1. 主键 定义 &#xff1a;主键是用于唯一标识表中每一行记录的字段或字段组合。它具有唯一性和非空性特点。 作用 &#xff1a;确保数据的完整性&#xff0c;便于数据的查询和管理。 示例 &#xff1a;在学生信息表中&#xff0c;学号可以作为主键&#xff…...

Ubuntu Cursor升级成v1.0

0. 当前版本低 使用当前 Cursor v0.50时 GitHub Copilot Chat 打不开&#xff0c;快捷键也不好用&#xff0c;当看到 Cursor 升级后&#xff0c;还是蛮高兴的 1. 下载 Cursor 下载地址&#xff1a;https://www.cursor.com/cn/downloads 点击下载 Linux (x64) &#xff0c;…...

Docker拉取MySQL后数据库连接失败的解决方案

在使用Docker部署MySQL时&#xff0c;拉取并启动容器后&#xff0c;有时可能会遇到数据库连接失败的问题。这种问题可能由多种原因导致&#xff0c;包括配置错误、网络设置问题、权限问题等。本文将分析可能的原因&#xff0c;并提供解决方案。 一、确认MySQL容器的运行状态 …...

[论文阅读]TrustRAG: Enhancing Robustness and Trustworthiness in RAG

TrustRAG: Enhancing Robustness and Trustworthiness in RAG [2501.00879] TrustRAG: Enhancing Robustness and Trustworthiness in Retrieval-Augmented Generation 代码&#xff1a;HuichiZhou/TrustRAG: Code for "TrustRAG: Enhancing Robustness and Trustworthin…...

GraphQL 实战篇:Apollo Client 配置与缓存

GraphQL 实战篇&#xff1a;Apollo Client 配置与缓存 上一篇&#xff1a;GraphQL 入门篇&#xff1a;基础查询语法 依旧和上一篇的笔记一样&#xff0c;主实操&#xff0c;没啥过多的细节讲解&#xff0c;代码具体在&#xff1a; https://github.com/GoldenaArcher/graphql…...