写英文bug的经验总结
本文链接: https://www.cnblogs.com/hchengmx/p/10800855.html
由于工作原因,开bug的时候需要由英文开,刚开的时候比较痛苦,因为有些词汇老师用的不太准确,后来通过多看美国人开的bug,就慢慢掌握开bug的技巧了,慢慢的就比较轻车熟路了。这篇文章就来总结一下我平时开bug的技巧, 其实中文的也比较类似了。
1. 开bug的一些原则
- 除非百分之百确定,否则不要用should,不要有你认为是XXXX的句子,尽量用陈述句,因为这样万一是As Designed,会被开发人员骂XX。
- 少用定语从句! 外国人真的很少用定语从句,可以考虑简化为前置形容词或者拆分成两个句子,具体可以看这篇文章。https://zhuanlan.zhihu.com/p/32301914
- if/after,尽量尽量不要用这两个词,因为阅读顺序是从左往右的,if和after又在后面,不利于阅读, 非要用的话,这两个词前面的句子不要太长;
- Repro steps句子也不要太长,长句子分成好几个短句子,尽量短描述清晰, 不重要的步骤不需要放图;
- 遇到比较奇怪的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的几个步骤
- 确定稳定重现的步骤
- 确定bug的几个关键因素 (发生什么页面,严重优先级,先决条件)
- 要是有先决条件,确定用什么 副词,when?if?或者什么重要的单词 Fail?Broken?Loading?should?There be?make?show?动名词作主语?
- 完成标题,保证动词/特定词汇的准确性,不要出现语法错误,分享两个网址,如何主动积累词汇学习如何积累词汇,批改网避免语法错误;
- 描述repro steps, 可参考上面的句子
- 可以补充期望是什么样子? 实际是什么样子? 要是不改可能会造成什么影响?
- 要是自己能定位问题,可以进行抓包,贴log,贴console,是哪一次PR导致错误;
本文希望对您有所帮助,如何问题可联系我的个人微信
![]()
写英文bug的经验总结的更多相关文章
- SCI&EI 英文PAPER投稿经验【转】
英文投稿的一点经验[转载] From: http://chl033.woku.com/article/2893317.html 1. 首先一定要注意杂志的发表范围, 超出范围的千万别投,要不就是浪费时 ...
- 架构师写的BUG,非比寻常
部门新来了个架构师,BAT背景,住在三环,开宝马上班,有车位. 小伙话不多,但一旦说话斩钉截铁,带着无法撼动的自信.原因就是,有他着数亿高并发经验,每一秒钟的请求,都是其他企业运行一年也无法企及的.这 ...
- 没错,老板让我写个 BUG!
前言 标题没有看错,真的是让我写个 bug! 刚接到这个需求时我内心没有丝毫波澜,甚至还有点激动.这可是我特长啊:终于可以光明正大的写 bug 了
- 13 年的 Bug 调试经验总结
在<Learning From Your Bugs>一文中,我写了关于我是如何追踪我所遇到的一些最有趣的bug.最近,我回顾了我所有的194个条目(从13岁开始),看看有什么经验教训是我可 ...
- 13 年的 Bug 调试经验总结 【转载】
在<Learning From Your Bugs>一文中,我写了关于我是如何追踪我所遇到的一些最有趣的bug.最近,我回顾了我所有的194个条目(从13岁开始),看看有什么经验教训是我可 ...
- 13 年的 Bug 调试经验总结(来自蜗牛学院)
在<Learning From Your Bugs>一文中,我写了关于我是如何追踪我所遇到的一些最有趣的bug. 最近,我回顾了我所有的194个条目,看看有什么经验教训是我可以学习的.下面 ...
- 嵌入式码农的10年Bug调试经验,值得一看
下面这些都是我经历过的会导致难点bug的问题: 1.事件顺序.在处理事件时,提出下列问题会很有成效:事件可以以不同的顺序到达吗?如果我们没有接收到此事件会怎么样?如果此事件接连发生两次会怎么样?哪怕通 ...
- 捅娄子了,写个bug被国家信息安全漏洞共享平台抓到了?
摸不了鱼了 2019 年 11 月 26 日,本来应该是无比平静的一天,开开会,改改bug,摸摸鱼之后等着下班.刷着新闻的间隙,手机的消息提示音响了起来,收到了一条邮件,平时收到邮件我都会选择稍后处理 ...
- 脚本写一行echo也能写出bug ? glob了解一下
背景 最近处理一个 bug 很有意思,有客户反馈某个配置文件解析失败了,出错的那行的内容就只有一个字母 a. 最开始以为是谁改动了处理的脚本,但要到了问题代码中的脚本,比较发现跟库上是一样的. 又经过 ...
随机推荐
- 网络通讯与IP地址
1.主机:Host,台式机,笔记本,手机等设备 2.网络介质:网线,光纤,无线网Wi-Fi.移动网络 3.数据:一串子节 网络通讯的检测:安装wireshark,通常称为抓包工具 抓,capture ...
- P3628 [APIO2010]特别行动队
\(\color{#0066ff}{ 题目描述 }\) 你有一支由 \(n\) 名预备役士兵组成的部队,士兵从 \(1\) 到 \(n\) 编号,要将他们拆分 成若干特别行动队调入战场.出于默契的考虑 ...
- 最小生成树算法 prim kruskal两种算法实现 HDU-1863 畅通工程
最小生成树 通俗解释:一个连通图,可将这个连通图删减任意条边,仍然保持连通图的状态并且所有边权值加起来的总和使其达到最小.这就是最小生成树 可以参考下图,便于理解 原来的图: 最小生成树(蓝色线): ...
- (转)ios学习--你会遇到的runtime面试题(详)
1.了解runtime吗?是什么? 2.你怎么知道的? 3.对象如何找到对应方法去调用的 于是我总结了很多网上被问到的一些关于runtime的题目,并做了详细的回答,并在后面补充了我在学习runtim ...
- HDU6301 Distinct Values (多校第一场1004) (贪心)
Distinct Values Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)T ...
- linux系统安全加固--账号相关
linux系统安全加固 一.账号相关 1.禁用或删除无用账号 减少系统无用账号,降低安全风险. 当我们的系统安装完毕后,系统默认自带了一些虚拟账户,比如bin.adm.lp.games.postfix ...
- POJ2828 Buy Tickets(线段树之插队问题)
飞翔 问题是这样的:现在有n个人要买票,但是天黑可以随便插队.依次给出将要买票的n个人的数据信息.包含两项:pos,当前第i号人来了之后他肯定要插入到pos这个位置,如果当前pos无人,那最好了,直接 ...
- Java StringBuffer
String是不变类,用String修改字符串会新建一个String对象,如果频繁的修改,将会产生很多的String对象,开销很大.因此java提供了一个StringBuffer类,这个类在修改字符串 ...
- Django易混淆问题
1.Django本身提供了runserver 为什么不能用来 部署 runserver 方法是调试 Django 时经常用到的运行方式,它使用 Django 自带的 WSGI Server 运行,主 ...
- 用NaviCat创建存储过程批量添加测试数据
打开navicat连接上数据库,然后打开左上角函数,新建一个函数. BEGIN DECLARE i int; --声明变量 DECLARE groupid int; set i=LAST_INSERT ...