首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

13 年 Bug 调试经验总结

在《Learning From Your Bugs》一文中,写了关于我是如何追踪所遇到一些最有趣bug最近回顾所有的194个条目(从13岁开始),看看有什么经验教训是可以学习。...例如,当我用VoIP SIP协议工作时,写了一个能够用正是想要标题和值回复小脚本。这个工具使得测试很多边界情况变得容易起来。另一个例子是可以进行API调用一个命令行工具。...或者,认为软件最新版本上正在运行,但其实是一个旧版本。因此,一定要核实细节,而不是假设。人们更容易看到自己希望看到东西,而不是事实。 16.最近变化。...当曾经可以正常工作东西停止工作,那么这通常是因为最近改变东西所导致。在一个案例中,最近改变只是日志记录,但是日志中错误却导致一个更大问题。...为了更容易找到这种回归,承认不同提交导致不同变化,以及清楚说明这些更改会有所裨益。 17.相信用户。有时,当用户报告问题时候,本能反应是,“这是不可能。一定是他们做错了什么事”。

69160

13 年 Bug 调试经验总结

在《Learning From Your Bugs》一文中,写了关于我是如何追踪所遇到一些最有趣bug最近回顾所有的194个条目(从13岁开始),看看有什么经验教训是可以学习。...例如,当我用VoIP SIP协议工作时,写了一个能够用正是想要标题和值回复小脚本。这个工具使得测试很多边界情况变得容易起来。另一个例子是可以进行API调用一个命令行工具。...或者,认为软件最新版本上正在运行,但其实是一个旧版本。因此,一定要核实细节,而不是假设。人们更容易看到自己希望看到东西,而不是事实。 16.最近变化。...当曾经可以正常工作东西停止工作,那么这通常是因为最近改变东西所导致。在一个案例中,最近改变只是日志记录,但是日志中错误却导致一个更大问题。...为了更容易找到这种回归,承认不同提交导致不同变化,以及清楚说明这些更改会有所裨益。 17.相信用户。有时,当用户报告问题时候,本能反应是,“这是不可能。一定是他们做错了什么事”。

69460
您找到你想要的搜索结果了吗?
是的
没有找到

13 年 Bug 调试经验总结

在《Learning From Your Bugs》一文中,写了关于我是如何追踪所遇到一些最有趣bug最近回顾所有的194个条目(从13岁开始),看看有什么经验教训是可以学习。...例如,当我用VoIP SIP协议工作时,写了一个能够用正是想要标题和值回复小脚本。这个工具使得测试很多边界情况变得容易起来。另一个例子是可以进行API调用一个命令行工具。...或者,认为软件最新版本上正在运行,但其实是一个旧版本。因此,一定要核实细节,而不是假设。人们更容易看到自己希望看到东西,而不是事实。 16.最近变化。...当曾经可以正常工作东西停止工作,那么这通常是因为最近改变东西所导致。在一个案例中,最近改变只是日志记录,但是日志中错误却导致一个更大问题。...为了更容易找到这种回归,承认不同提交导致不同变化,以及清楚说明这些更改会有所裨益。 17.相信用户。有时,当用户报告问题时候,本能反应是,“这是不可能。一定是他们做错了什么事”。

49420

2022最新软件测试面试题汇总,拼多多面试官看了都说,卧槽!!!

如何描述bug也很有讲究,bug在什么情况下会产生,如果条件变化一点点,就不会有这个bug,以哪些最少操作步骤就能重现这个bug这个bug产生规律是什么?...54、你以前工作测试流程是什么? 参考答案:(灵活回答) 公司对测试流程没有规定如何做,但每个测试人员都有自己一套测试流程。说下1年来不断改正(自己总结,吸取同行方法)后流程吧。...二是这种情况不可能发生,所以不需要修改,这个时候,可以先尽可能说出是BUG依据是什么?如果被用户发现或出了问题,会有什么不良结果?程序员可能会给你很多理由,你可以对他解释进行反驳。...57、您以往工作中,一条软件缺陷(或者叫Bug)记录都包含了哪些内容?如何提交高质量软件缺陷(Bug)记录?...花了一定时间考虑自己目标,想清楚自己擅长做事情以及想从工作中得到东西,最后得出了一个坚定结论,那就是这个行业是最适合

72420

13 年 Bug 调试经验总结

如果一切正常,那也没关系,但要是问题发生,你会很庆幸自己添加了这些日志。 测试 作为一个开发人员,直到要测试了才会去处理功能。至少,这意味着每一行新或改变了代码行至少已经被执行过一次。...例如,当我用VoIP SIP协议工作时,写了一个能够用正是想要标题和值回复小脚本。这个工具使得测试很多边界情况变得容易起来。另一个例子是可以进行API调用一个命令行工具。...或者,认为软件最新版本上正在运行,但其实是一个旧版本。因此,一定要核实细节,而不是假设。人们更容易看到自己希望看到东西,而不是事实。 16.最近变化。...当曾经可以正常工作东西停止工作,那么这通常是因为最近改变东西所导致。在一个案例中,最近改变只是日志记录,但是日志中错误却导致一个更大问题。...为了更容易找到这种回归,承认不同提交导致不同变化,以及清楚说明这些更改会有所裨益。 17.相信用户。有时,当用户报告问题时候,本能反应是,“这是不可能。一定是他们做错了什么事”。

71150

13 年 Bug 调试经验总结

例如,当我用VoIP SIP协议工作时,写了一个能够用正是想要标题和值回复小脚本。这个工具使得测试很多边界情况变得容易起来。另一个例子是可以进行API调用一个命令行工具。...或者,认为软件最新版本上正在运行,但其实是一个旧版本。因此,一定要核实细节,而不是假设。人们更容易看到自己希望看到东西,而不是事实。 16.最近变化。...当曾经可以正常工作东西停止工作,那么这通常是因为最近改变东西所导致。在一个案例中,最近改变只是日志记录,但是日志中错误却导致一个更大问题。...为了更容易找到这种回归,承认不同提交导致不同变化,以及清楚说明这些更改会有所裨益。 17.相信用户。有时,当用户报告问题时候,本能反应是,“这是不可能。一定是他们做错了什么事”。...遵循这些步骤可以确保它确实是一个bug,并且此次修复的确可以解决这个问题。简单而有必要。 其他观察结果 在这13年来一直在跟踪所遇到最棘手bug,很多事情由此而改变。

94490

填个坑!再谈线程池动态调整那点事。

你好呀,是歪歪。 前几天和一个大佬聊天时候他说自己最近在做线程池监控,刚刚把动态调整功能开发完成。 想起之前写过这方面的文章,就找出来看了一下:《如何设置线程池参数?...首先,为什么需要对线程池参数进行动态调整呢? 因为随着业务发展,可能出现一个线程池开始够用,但是渐渐被塞满情况。 这样就会导致后续提交过来任务被拒绝。...第二种方式,大多适用于那种“你也不知道为什么,反正这样写程序就是正常情况。 现在我们知道在线程池里面动态调整队列长度是什么。...主要是这个 bug 确实也有点超出认知,而且在链接中并没有明确说具体原因是什么导致定位时间非常长,甚至一度想要放弃。 但是最终定位到问题之后也是长叹一口:害,就这?没啥意思。...他言外之意就是:这个问题非常莫名其妙,但是可以稳定复现,只是每次复现出现问题时机都非常随机,搞不定觉得是一个 bug,你们帮忙看看吧。

60910

测试常见面试题(功能测试部分)

1在您以往工作中,一条软件缺陷(或者叫Bug)记录都包含了哪些内容?如何提交高质量软件缺陷(Bug)记录?...参考答案: 1、是否支持回车 2、单击 3、快速双击, 可能会导致重复提交bug 4、网络中断 5、只输入必填项,单击提交 6、分别缺少一个必填项、单击提交(无效等价类不能合并) 7、所有字段最大长度...总之就是以最少用例覆盖尽可能多测试点,并在最短时间内找出最多bug。 36测试计划工作目的是什么?测试计划工作内容都包括什么?其中哪些是最重要?...二是这种情况不可能发生,所以不需要修改,这个时候,可以先尽可能说出是BUG依据是什么?如果被用户发现或出了问题,会有什么不良结果?程序员可能会给你很多理由,你可以对他解释进行反驳。...42产品上线之后出现bug,相关负责人过来质问,“为什么测试时候没有发现这个bug”?

1.4K20

嵌入式大牛10年调Bug经验总结

如果一切正常,那也没关系,但要是问题发生,你会很庆幸自己添加了这些日志。 测试 作为一个开发人员,直到要测试了才会去处理功能。至少,这意味着每一行新或改变了代码行至少已经被执行过一次。...例如,当我用VoIP SIP协议工作时,写了一个能够用正是想要标题和值回复小脚本。这个工具使得测试很多边界情况变得容易起来。另一个例子是可以进行API调用一个命令行工具。...或者,认为软件最新版本上正在运行,但其实是一个旧版本。因此,一定要核实细节,而不是假设。人们更容易看到自己希望看到东西,而不是事实。 3.最近变化。...当曾经可以正常工作东西停止工作,那么这通常是因为最近改变东西所导致。在一个案例中,最近改变只是日志记录,但是日志中错误却导致一个更大问题。...为了更容易找到这种回归,承认不同提交导致不同变化,以及清楚说明这些更改会有所裨益。 4.相信用户。有时,当用户报告问题时候,本能反应是,“这是不可能。一定是他们做错了什么事”。

42911

测试人横向管理小Case

中途跑去写了两天文档,再进行测试时(首页数据和其他开发有接口),问了一下开发B数据来源,得知现在数据是假数据,沟通确认后问题得到了证实,当前新版本进行了变更。 这个问题原因是计划赶不上变化。...深层次剖析原因:我们部门缺少流程,一切还处在以人为核心工作模式,没有监督,缺少管理。 故事三 拖进度(老油条) 跟一个人打过交道几次后,你就知道这个办事风格是什么样。...最近,线上系统Bug提交后,查看了下修改进度,开发A备注是这样: 【未复现】 【未排查到空数据】 一旦看到这样回复,就知道接下来流程:交给测试整批量验证,再反过来沟通,这么来来回回至少浪费半个月,...很多开发人员拿到提交Bug,基本都会核实到底是测试问题还是程序问题,而不何核实直接打回来就是态度问题,这种态度问题的人,把他们称为“老油条”。...最近感悟:即使你不在管理岗位上,只要能干成一个多人配合才能完成项目,就算是攻克管理难点。

19290

Git使用教程:最详细、最傻瓜、最浅显、真正手把手教!

注意:git config --global 参数,这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然你也可以对某个仓库指定不同用户名和邮箱。 ▍如何操作? 1....如何从远程库克隆? 上面我们了解了先有本地库,后有远程库时候,如何关联远程库。 现在我们想,假如远程库内容想克隆到本地来 如何克隆呢?...比如我在开发中接到一个404 bug时候,我们可以创建一个404分支来修复它,但是,当前dev分支上工作还没有提交。比如如下: ?...并不是不想提交,而是工作进行到一半时候,我们还无法提交,比如我这个分支bug要2天完成,但是issue-404 bug需要5个小时内完成。怎么办呢?...还好,Git还提供一个stash功能,可以把当前工作现场 ”隐藏起来”,等以后恢复现场后继续工作。如下: ? 所以现在可以通过创建issue-404分支来修复bug

62720

功能测试面试题

在您以往工作中,一条软件缺陷(或者叫Bug)记录都包含了哪些内容?如何提交高质量软件缺陷(Bug)记录?..." 认为这个测试策略不正确,因为根据bug分散性原理,发现bug越多模块越容易产生新bug如何测试一个 纸杯?"...其目的是找出可能影响软件产品质量、开发过程、维护工作适用性和环境方面的设计缺陷,并采取补救措施,以及找出在性能、安全性和经济方面的可能改进。 你认为做好测试计划工作关键是什么?...工作原理:Client向Server提交一个请求;Server则使用一些方法处理这个请求,并将效果返回给Client。...产品上线之后出现bug,相关负责人过来质问,“为什么测试时候没有发现这个bug”?

39110

bug!用Pytorch Lightning重构代码速度更慢,修复后速度倍增

本文作者 Florian Ernst Ernst 撰写博客详细描述他发现这个 bug 过程,以下是博客原文。...首先运行 Lightning 分析器来找出问题所在。 基础分析器给了我一个起点:大部分时间都花在运行一个 epoch 上;高级分析器没有给我更多信息。...默认情况下,Pytorch 在两个 epoch 之间会 kill 掉运行中进程(worker)并重新加载,因而需要重新加载数据。 在这个例子中,加载数据非常慢。...可以确定是 Pytorch Lightning 错误地重置 _iterator,从而导致这个问题。...将发现这个 bug 报告给 Lightning 团队,他们对问题进行了修复并在第二天推送了修补程序。随后更新库,更新后发现他们修复确实有效。

70710

为什么程序员总是发现不了自己Bug? 程序员: 不认识他啊

常常会一开始就根据自己编程思想,一头扎进去研究,但是这可能会导致麻烦,如果事情不像原先设想地那样顺利的话。 已经很多次在启动一个项目之后,陷入了困境,然后只好寻求博客和其他论文支持。...发誓这是真的,而且这是没有任何意义事情——也许是其他程序正在运行缓存版本? 很多次你更新一丁点代码,却导致整个程序崩溃出错,完全停止工作。...恢复到最近工作复制文件,然后从那里开始一步步前进。 13.“算了,还是从头再开始吧。”...作为开发就和我们成人一样看到问题总是以自己世界观来理解,导致理所当然就这样就对了,而真正真相就被隐藏。 当程序员面对 Bug 时候,如何机智甩锅?...当你面对 Bug 时,切勿慌张,以下措施教你轻松应对 Bug 带来困扰。 ? 1.打死不承认,这代码不是,将锅甩出去。 ? 2.睁眼说瞎话,在电脑上是正常呀,超级无辜。 ?

1.1K10

Git相关介绍

Git是什么,为什么从SVN迁移到Git? Git就是一个免费托管开源代码远程仓库,你可以理解它就是一个大型文件服务器,在上面放置N多代码文件。...1、git强大分支管理能力 分支是什么: 在 SVN这类版本控制系统上,分支(branch)是一个完整目录,且这个目录拥有完整实际文件。如果工作成员想要开启新分支,那将会影响“全世界”!...完全不需担心妨碍其他工作成员。只要不合并及提交到主要版本库,没有一个工作成员会被影响。等到我不需要这个分支时,只要把它从本地版本库删除即可,无痛无痒。...如果想要看当前版本文件和一个月前版本之间何差异,Git 会取出一个月前快照和当前文件作一次差异运算。...而Git 只是获取文件每个版本元素,然后只载入主要分支(master)在经验,克隆一个拥有将近一万个提交(commit),五个分支,每个分支大约1500个文件 SVN,耗将近一个小时!

1.2K50

DBA遇到问题时30 个反应,你是哪一种?

开发应用程序是一个非常有压力工作。没有人是完美的,因此在这个行业中,代码中出现 bug 是相当普遍现象。...常常会一开始就根据自己编程思想,一头扎进去研究,但是这可能会导致麻烦,如果事情不像原先设想地那样顺利的话。已经很多次在启动一个项目之后,陷入了困境,然后只好寻求博客和其他论文支持。...而且这是没有任何意义事情——也许是其他程序正在运行缓存版本?很多次你更新一丁点代码,却导致整个程序崩溃出错,完全停止工作。恢复到最近工作复制文件,然后从那里开始一步步前进。 ? 22....然而,数据备份提供允许我们回过头去修改踏脚石。这在实时服务器环境中尤为有用,因为什么变化会立即执行。以防万一,我们应该记得保存网站文件和数据库本地副本!...虽然这会是一个恼人任务,但其恼人程度远远比不上重建损坏 SQL 数据库。 27.“让它正常工作最快解决办法是什么?” 在花费数个小时苦苦思考自定义解决方案之后,很明显你需要一种新方法。

79620

测试|提高处理BUG效率第一步:提高测试工程师排查BUG能力

背景: 一家主要是做一款APP公司,公司技术部门三个组:爬虫组、服务端组和APP客户端组。 事实回放: 1)每次运营或产品提出一个BUG给到测试工程师后。...当测试工程师拿到一个BUG时,可以通过APP抓包和查找数据库表方式排查这个问题到底是那个开发工程师。 举例:在APP上有一张图片无法正常呈现出来,而这个图片是由爬虫工程师采集过来。...2)如果这个图片URL是,并且这个URL可以正常打开,但是这个URL格式不是OSS格式(服务端会把外面的图片保存到我们OSS环境中),那么这个问题就是服务端在保存图片时出了问题,找出共性和规则给到服务端工程师去处理...另外,测试人员在完成测试计划、测试用例以后,会邀请开发、产品一起评审测试用例,在这个环节,由于测试人员把每个需求如何细化测试都体现在用例里面,就相当于再次把需求分析个透,往往还能发现很多需求漏洞。...这也是提早发现需求漏洞有效环节。 质控二:下游工作质控 在产品完成了测试以后,就是发布环节,测试人员在发布环节也能发挥作用。

89970

软件测试面试题(含答案)

综合起来看我认为是胜任这个工作。 4、测试目的是什么? 测试目的是找出软件产品中错误,是软件尽可能符合用户要求。当然软件测试是不可能找出全部错误。 5、测试分为哪几个阶段?...还有在配置管理中,一个很重要概念,那就是基线,是在一定阶段各个配置项组合,一个基线就提供一个正式标准,随后工作便基于此标准,并只有经过授权后才能变更这个标准。...17、在您以往工作中,一条软件缺陷(或者叫Bug)记录都包含了哪些内容?如何提交高质量软件缺陷(Bug)记录?...如果怀疑开发解答,觉得是bug,开发坚持不是bug就要咨询我们组长或者开发组长,让他们判断一下。 假如发现一个BUG,跟开发本身没什么关系,涉及到理念,需求问题,如何解决?...万一因为自己错误导致工作发生问题,首先应该把问题上报给领导,争取把问题影响降到最低程度。 给你一个模块测试,只有一个星期时间你如何有效率地完成?

98520

通过 41 个 问答方式快速了解学习 Git

为了保证可读性,本文采用意译而非直译。 1. 你最喜欢 Git 命令是什么 个人比较喜欢 git add -p. 这增加了“补丁模式”变化,这是一个内置命令行程序。...它遍历每个更改,并要求确认是否要执行它们。 这个命令迫使咱们放慢速度并检查更改文件。作为开发人员,咱们有时常常急于提交自己也经常这样,做完运行 git add ....还可以使用 git reset 来撤消最近提交,并将它们更改放入工作索引中,然后将它们更改分离到新提交中。 33.有没有办法查看已修复提交?...checkout 可能更健壮,因为它不仅允许撤消当前更改,而且还允许通过检索文件旧版本撤消一组更改。 默认情况下,reset更适合于更改工作索引中更改状态。因此,它实际上只处理当前变化。...git reset HEAD -- file;清空 add 命令向暂存区提交关于 file 文件修改(Ustage);这个命令仅改变暂存区,并不改变工作区,这意味着在无任何其他操作情况下,工作区中实际文件同该命令运行之前无任何变化

1.4K20

为什么程序员总是发现不了自己Bug?

常常会一开始就根据自己编程思想,一头扎进去研究,但是这可能会导致麻烦,如果事情不像原先设想地那样顺利的话。 已经很多次在启动一个项目之后,陷入了困境,然后只好寻求博客和其他论文支持。...发誓这是真的,而且这是没有任何意义事情——也许是其他程序正在运行缓存版本? 很多次你更新一丁点代码,却导致整个程序崩溃出错,完全停止工作。...恢复到最近工作复制文件,然后从那里开始一步步前进。 13.“算了,还是从头再开始吧。”...作为开发就和我们成人一样看到问题总是以自己世界观来理解,导致理所当然就这样就对了,而真正真相就被隐藏。 当程序员面对 Bug 时候,如何机智甩锅?...当你面对 Bug 时,切勿慌张,以下措施教你轻松应对 Bug 带来困扰。 ? 1.打死不承认,这代码不是,将锅甩出去。 ? 2.睁眼说瞎话,在电脑上是正常呀,超级无辜。赚取同情分 ?

74520
领券