本文链接: https://www.cnblogs.com/hchengmx/p/10800855.html

由于工作原因,开bug的时候需要由英文开,刚开的时候比较痛苦,因为有些词汇老师用的不太准确,后来通过多看美国人开的bug,就慢慢掌握开bug的技巧了,慢慢的就比较轻车熟路了。这篇文章就来总结一下我平时开bug的技巧, 其实中文的也比较类似了。


1. 开bug的一些原则

  1. 除非百分之百确定,否则不要用should,不要有你认为是XXXX的句子,尽量用陈述句,因为这样万一是As Designed,会被开发人员骂XX。
  2. 少用定语从句! 外国人真的很少用定语从句,可以考虑简化为前置形容词或者拆分成两个句子,具体可以看这篇文章。https://zhuanlan.zhihu.com/p/32301914
  3. if/after,尽量尽量不要用这两个词,因为阅读顺序是从左往右的,if和after又在后面,不利于阅读, 非要用的话,这两个词前面的句子不要太长;
  4. Repro steps句子也不要太长,长句子分成好几个短句子,尽量短描述清晰, 不重要的步骤不需要放图;
  5. 遇到比较奇怪的bug,需要贴上更多的信息,比如url/哪个资源/浏览器,最好再录个视频(防背锅);

2. 一些重点词汇

经常开bug的话,也是可以找到一些技巧的,常见的情况就那几种,当XXXX,出现了XXXX;不应该出现XXXX;什么功能坏掉了;什么东西会导致XXX结果。常用的句型都可能是类似的。我就总结了以下几个常用的词汇/句型,然后句子示例是搜集的美国人写的句子。由于工作隐私问题: 就删除了一些关键句子,是不影响句子阅读的。

should:

  • The saved list should show the actual report selected.
  • Scroll bar shouldn't be showed up when xxxx;

动名词:

  • Clicking on the refresh button in saved list blade refreshes the xxxx.
  • clicking on xxxx in xxxx makes it switch to "loading..."
  • split by using Properites fails for "xxxxx"
  • Cohorts are not being used when xxxxxx
  • Adding request filters seems to be broken

when:

  • selected events are deselected when xxxxx
  • xxxxx appear as modified when opening
  • Getting data... is shown when no data is found
  • Wrong chart when splitting by xxxxx

happen:(多用在repro steps)

  • This seems to be happening across all our reports.

There be:

  • There are no xxxxx when just requests are selected
  • there's no selection for "xxxxx"
  • There is no feedback when saving report

Broken:

  • Adding request filters seems to be broken
  • time range dropdown in notebook is broken
  • Sort by xxxx is broken in the grid control
  • SplitBy for some dimensions is broken

特定的XXX:

  • Open Users for a resource that only has custom events and requests.
  • Click on one of the Add these filters on any Request clusters.
  • open a report with custom time range
  • The settings popup is hidden behind the new ME chart in Edge

if/after:

  • Dropdown stuck after closing custom time range window
  • Charts are not refreshed after deleting xxx
  • Queries keep UX stuck if time range changed xxx

make:

  • clicking on xxxxx in filters makes it switch to "loading..."
  • Saved list items don't have tooltips which makes it impossible to read reasonable lenght names

3. 开bug的几个步骤

  1. 确定稳定重现的步骤
  2. 确定bug的几个关键因素 (发生什么页面,严重优先级,先决条件)
  3. 要是有先决条件,确定用什么 副词,when?if?或者什么重要的单词 Fail?Broken?Loading?should?There be?make?show?动名词作主语?
  4. 完成标题,保证动词/特定词汇的准确性,不要出现语法错误,分享两个网址,如何主动积累词汇学习如何积累词汇,批改网避免语法错误;
  5. 描述repro steps, 可参考上面的句子
  6. 可以补充期望是什么样子? 实际是什么样子? 要是不改可能会造成什么影响?
  7. 要是自己能定位问题,可以进行抓包,贴log,贴console,是哪一次PR导致错误;

本文希望对您有所帮助,如何问题可联系我的个人微信

最新文章

  1. 更新日志 - fir.im 主题壁纸来了
  2. C# 3个线程A B C 依次打印123123123..
  3. 创建sh文件
  4. 数据库连接工具类 数据库连接工具类——仅仅获得连接对象 ConnDB.java
  5. mac中vmware tools进行磁盘压缩和vmware-tools-cli的使用方法
  6. 改进的sqlhelper学习日志
  7. 你好,C++(9)坐216路公交车去买3.5元一斤的西红柿——C++中如何表达各种数值数据 3.3 数值数据类型
  8. SQL Server 统计信息对查询的影响
  9. redis 持久化与备份策略 【转载】
  10. EF框架搭建小总结--ModelFirst模型优先
  11. Dynamics CRM2016 业务流程之Task Flow(一)
  12. mui slider禁止滑动
  13. idea在Terminal中使用maven指令
  14. spring boot 加载application配置文件
  15. GoLand、Pycharm注册码
  16. 创建一个dynamics 365 CRM online plugin (一) - Hello World Plugin
  17. 如何建一个maven项目
  18. easyui combobox下拉列表的多选值
  19. python time 时间处理
  20. Singer 学习一 使用Singer进行mysql 2 postgres 数据转换

热门文章

  1. 【以太坊开发】区块链中的预言机:Oraclize原理介绍
  2. loj#6363. 「地底蔷薇」(拉格朗日反演+多项式全家桶)
  3. ConcurrentHashMap原理详解
  4. P3380 【模板】二逼平衡树(树套树) 线段树套平衡树
  5. opencv-机器学习章节介绍
  6. Gym - 101572G Galactic Collegiate Programming Contest 小根堆(set)
  7. POJ3041轰炸行星(匈牙利算法 最小覆盖点集)
  8. mybatis主键是在insert前生成还是之后生成
  9. python 格式化时间含中文报错: 'locale' codec can't encode character '\u5e74'
  10. OpenCV教程(转自:浅墨_毛星云博客)