分析防范前端BUG

简介: 复盘下前端bug

总结下前端bug

​​需求理解

原因

  • 开发和产品对需求的理解不一致
  • 沟通一致的需求有遗漏,后期忘做
  • 没有彻查模块的依赖使用关系,错估修改产生的影响范围

对策

  • 疑问或有不确定的及时与产品沟通
  • 细小功能点不要后补以防忘记或者加到自己的 todolist 做完自测时再过一遍
  • 修改代码时多全局搜索查看引用的地方

前端基础

原因

  • 基础知识不足

    • 对循环,执行顺序理解不够
    • 全局对象使用不当,未及时重置
  • 缺少异常处理

    • 接口异常处理未做
    • 接口返回值判断直接引用了可能是空对象的属性

对策

  • 搬砖时理解一些基础原理

    • 宏任务微任务等等
    • 自己整理下常用es语法
  • 测试不同浏览器下的状态
  • 遇到印象深刻的问题或者bug可以写个博客,做个笔记

代码逻辑

原因

  • 逻辑复杂、函数太长

    • 一个函数做了多个操作
  • 注释不足难以阅读理解
  • ifelse分支太多
  • 重复代码多容易漏改
  • 边界考虑不足

对策

  • 函数拆分
  • 能提炼出来的写公共函数补足注释(输入输出)
  • 养成写注释的习惯
  • 写纯函数
  • ifelse优化

    • 单层时用switch替代
    • 多层时把易判断的提前后return
  • 代码提交

    • commit日志尽量细点
    • 单个功能完成后就提交(日志就可以覆盖本次修改内容)
    • 不要复杂的功能合在一起提交
  • 反问自己

    • 是否考虑了大部分情况
    • 自己下次改好不好改
    • 是否隔几天依然能看懂自己的代码
    • 是否易复用

接口管理

原因

  • 变动信息未同步
  • 错误估计修改影响范围

对策

  • 变动可以记到自己的 todolist
  • 要求对接的后端变动时通知自己
  • 全局搜索接口,确定变更影响的模块

自测方法

原因

  • 操作习惯单一
  • 边界值测试不足

对策

  • 对照checklist
  • A/B测试
  • 边界值

    • 空值情况
    • 单一状态不同值:极小值>偏小值>引起UI变化的值>偏大值>极大值
  • 不能只满足UI展现的情况(UI反映的只是状态的一种)

    • 特殊情况的展示需要UI补图,及时提出需求或抛给产品
    • 文案:关注无文字、少文字、过多文字,不同浏览器下显示

思维方式

原因

  • 产品需求理解欠缺
  • 用户体验理解不足
  • 甩锅思维

对策

  • 学会从产品角度理解需求

    • 必要性:影响范围、对用户有没有用、体验好不好
    • 难易度:功能复杂、逻辑复杂
  • 用户思维培养

    • 跳出开发人员的思路,把自己当小白去使用功能,理解用户可能产生的困惑,进而明白产品设计的思路
  • 场景思维

    • 把自己带入产生需求的实际场景,可寻求产品的帮助,深度理解功能产生的缘由,理解公司产品的边界,什么能做,什么不适合做
  • 学习思维

    • 核心在于解决问题提升自己,不沉溺于甩锅(都是一条船上的)
    • 保持一个开放接受容纳的状态,每个问题都是提升的机会
    • 做好记录,PDCA 用起来

      • bug改完要记录原因
      • 项目不忙或者结束后分析归纳bug原因(看你自己了)
      • 反思总结,找到问题根源,不会跌倒两次
      • 定期提醒自己,check 一下
相关文章
|
2月前
|
人工智能 前端开发 搜索推荐
前端技术发展趋势分析与展望
【2月更文挑战第9天】 随着移动互联网的快速发展,前端技术在不断演进,从最初的HTML、CSS到如今的React、Vue等前端框架,技术发展日新月异。本文将从移动端、跨平台、人工智能等多个角度分析前端技术的发展趋势,并展望未来的发展方向。
|
1月前
|
Rust 前端开发 vr&ar
未来前端技术发展趋势分析
在数字化时代,前端技术一直处于快速发展的状态。本文将从WebAssembly、PWA、AR/VR等方面探讨未来前端技术的发展趋势,为读者揭示前端技术的新篇章。
|
1月前
|
Web App开发 SQL 前端开发
性能工具之前端分析工Chrome Developer Tools性能标签
【2月更文挑战第22天】性能工具之前端分析工Chrome Developer Tools性能标签
36 1
性能工具之前端分析工Chrome Developer Tools性能标签
|
2月前
|
前端开发 JavaScript 数据可视化
几何学在前端边界计算中的应用和原理分析(一)
几何学在前端边界计算中的应用和原理分析(一)
19 0
|
2月前
|
Rust 前端开发 JavaScript
前端技术发展趋势与应用前景分析
【2月更文挑战第8天】 随着互联网时代的不断发展,前端技术作为网页和移动端开发的核心领域,也在不断演进。本文将深入探讨前端技术的发展趋势与应用前景,分析当前热门技术及其在各行业中的应用,帮助读者更好地了解前端技术的现状与未来。
|
2月前
|
人工智能 前端开发 算法
未来互联网发展趋势分析与前端技术应用探讨
【2月更文挑战第3天】随着人工智能、大数据、物联网等新兴技术的快速发展,未来互联网的发展方向和趋势变得更加多样化和复杂。在这种背景下,前端技术作为用户与系统之间的桥梁,扮演着至关重要的角色。本文将从未来互联网发展趋势的角度出发,探讨前端技术在不断变革的互联网时代的应用与发展。
|
2月前
|
人工智能 自然语言处理 前端开发
未来前端发展趋势分析及应用探讨
【2月更文挑战第2天】 随着互联网的快速发展,前端技术在不断演进和升级。本文通过分析当前前端技术的发展现状,探讨未来前端的发展趋势,并结合实际案例探讨其应用前景。从响应式设计、移动端优化到人工智能与前端的结合,前端技术正不断拓展其边界,为用户带来更加智能、便捷的体验。
|
3月前
|
前端开发 安全 JavaScript
怎么判断bug是前端问题还是后端问题?
怎么判断bug是前端问题还是后端问题?
|
3月前
|
前端开发
elementui-upload组件自定义样式上传(upload中常用的属性,但是网络上却找不到教程)(解决bug删除之后再次上传会上传删除的图片)专注后端工程师的前端速成
elementui-upload组件自定义样式上传(upload中常用的属性,但是网络上却找不到教程)(解决bug删除之后再次上传会上传删除的图片)专注后端工程师的前端速成
67 0
|
3月前
|
前端开发 JavaScript Java
系统化web前端需要技能所占比(通过图表分析来看您是不是一个合格的前端)
系统化web前端需要技能所占比(通过图表分析来看您是不是一个合格的前端)
36 0