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

《测试开发方法论》-追踪溯源

 

总结:

什么是追踪溯源,这个词语放在 “测试开发” 工作中要怎么理解我们先放一放。

先来想一下,在测试开发工程师写一个复杂平台的时候,最担心什么?

如果是一位初级测开,那么他最应该担心的是能否搭建成功,实现功能。

如果是一位中等测开,那么可能他最担心的是平台的性能,效果,以及推广问题。

如果是一位高级测开,那么他最担心的八成就是后续的维护成本,自己能不能有精力维护,能不能交接给新人。

而其实最影响后续维护成本的,也是最让人操心的,就是自己和后续的人,很难看懂之前的代码,或者很难去再次置身于当时开发阶段的场景中。想要维护好的精力甚至比当初开发还要大和难。

举个例子:其他系统拿过来的接口/脚本

小王是公司的一位测开,这天,他准备打造一套复杂的业务处理平台- 数据工厂

数据工厂,就是自动去生成各种测试数据的平台。其中牵扯到各种复杂业务,即便是公司老员工,也不可能知晓各个业务的技术细节。

所以,小王凭借自己优秀的人脉关系,迅速联系了很多其他系统和业务支撑的开发同事。打造的这套数据工厂利用了很多很多开发同事提供的接口和脚本。

小王只简单的给这些脚本接口写了一个和用户交互的前端页面,即完成了这个数据工厂。

可是好景不长,一年后,数据工厂的各个功能开始逐渐失效,小王解析代码发现,是这些引用的外部接口或脚本出现了问题。

但是因为当时没有明确的注释,导致小王维护的时候,完全想不起来这些外部接口的功能,参数字段的含义,更想不起来这些要去找哪位开发同事......

甚至有些接口的负责人,早已离职,业务也早已交接给别人。好一点的接口,也是因为服务器地址变更失效,但是小王也不知道要去问谁。而更简单的接口/脚本字段变更的情况,同样不知道找谁负责,也不知道对应的接口文档在哪。

小王预感到,如果现在要捋清这些,恐怕付出的代价不会少于当时从头开发。所以就把这个恶心的维护任务交给了新人,新人的热血工作立即见效,但小王也逐渐失去了核心测开工作的地位。

上述的例子中,其实小王如果在一开始就想好 这一步,那么就可以很好的避免了。

毕竟做的平台,并非底层的算法类工具,或者说技术框架 架构。而是一个超多增删改查,引用外部接口脚本的重业务平台。那么对应的文档的重要性就大大提高了。

比如一个良好的习惯就是,凡事引用了外部接口/脚本,都在文档中记录好,对应的一切有关信息:时间,作用,原理,接口文档,字段含义 规则规范,最重要的是对应的负责人。把这些整理成一个文档,每个月拿出来重新检查一遍,把有改动的,趁着自己没忘,赶紧更新了。那么之后也就没有上述的重新沟通成本的麻烦事了。

尾语:

开发平台诚可贵,推广运营价更高,若为维护故,俩者皆弟弟。

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

 

          视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。


http://www.kler.cn/a/448291.html

相关文章:

  • 「配置应用的可见性」功能使用教程
  • 【Windows版】opencv 和opencv_contrib配置
  • 2024年12月21日 辩论赛有感
  • gitee给DeployKey添加push权限
  • webGL硬核知识:图形渲染管渲染流程,各个阶段对应的API调用方式
  • 2.4 libpcap和dpdk的区别
  • 【钉钉群聊机器人定时发送消息功能实现】
  • C++ 哈希表封装unordered_map 和 unordered_set
  • 浅谈ORACLE中间件SOA BPM,IDM,OID,UCM,WebcenterPortal服务器如何做迁移切换
  • FLV视频封装格式详解
  • SSM 驱动的 JAVA 网络直播带货查询系统设计及 JSP 成功实现解析
  • 如何确保Java爬虫不超出API使用限制:策略示例
  • Vue 环境变量配置、使用方法、注意事项
  • HTML综合案例
  • C++设计模式:享元模式 (附文字处理系统中的字符对象案例)
  • pro文件转换为CMakeLists.txt文件,QT官方工具使用教程
  • vue+springboot+cas配置及cookie传递问题
  • 现代密码学总结(下篇)
  • Golang中的Map是怎么遍历的
  • 面试题整理9----谈谈对k8s的理解1
  • Rocky Linux 9安装RabbitMQ
  • 设计模式之结构型
  • 【ArcGIS Pro微课1000例】0064:栅格目录、栅格数据集、镶嵌数据集
  • 怎样在html中异步加载js文件,以避免js文件太大而影响页面打开速度?
  • 【Tomcat运行startup.bat闪退】
  • Connecting to Oracle 11g Database in Python