给项目代码埋坑有哪些办法?

2023-09-22 01:37:36 +08:00
 shmilypeter

如何在项目中埋当时不会发作,离开了一两个月之后会逐渐发作并且还很难排查的 bug 呢?

初步想到几个

后端

数据库

欢迎各位 V2EXer 补充,仅仅用作技术探讨,于此同时也可以避免 bug

12284 次点击
所在节点    Java
166 条回复
Promtheus
2023-09-22 09:09:26 +08:00
不过你这几个方法太刻意了 ,一下就查到了。要装的像是自己菜导致的,而不是故意这么写。我觉得比较简单的方法就是搜集下公司历年出的问题,然后照着写。一般这种问题都是运行好久才爆出来的。撑死了就是和前辈犯了一样的错而已
liuidetmks
2023-09-22 09:09:57 +08:00
尽量使用新东西,边看 demo 边写那种
wqhui
2023-09-22 09:10:43 +08:00
用 String 代替 enum ,多用 json\object\var ,时间久了没人敢保证自己知道里面究竟有什么东西
devopsdogdog
2023-09-22 09:11:10 +08:00
你能碰服务器或者版本包,你可以手动改代码 不提交 git 服务器。 这种是天花板了
MaxmillianJ
2023-09-22 09:13:40 +08:00
@andytao 员工给蛋糕做大了,老板吃完抹嘴给留点渣不?
Felldeadbird
2023-09-22 09:15:35 +08:00
看你要埋的坑要具有多大的破坏了。推荐结合时间触发需求加逻辑判断。

if( time > 2022-09-22 && 1 =1 )

类似这种,1= 1 只是例子,现实中应该是一种业务判断,写代码有时候写等号会只写一个,导致判断恒久生效。

switch 结构中漏写 break 也行。

这种逻辑错误是直接影响公司正常运作的。属于隐性破坏。 当然了,要求写测试的团队一般有工具校验出这种问题。

所以埋坑最终应该以自己实际情况自己整理合适的坑。
Xbluer
2023-09-22 09:19:15 +08:00
[把全局变量变成私有;]
反掉了吧
nothingistrue
2023-09-22 09:19:59 +08:00
@shmilypeter #2 1 ,如果你不想踩缝纫机,那就别干能导致你踩缝纫机的事。2 ,删库跑路是踩缝纫机的充分条件,不是必要条件。
MrSheng
2023-09-22 09:21:30 +08:00
不建议这么搞,没必要,以直报怨,以德报德。

如果真想搞,那就把代码混淆一下,各语言都有方案,相信我,真的会吐
yeccc
2023-09-22 09:22:19 +08:00
mongo TTL 索引
Fule
2023-09-22 09:23:30 +08:00
故意埋坑最终可能只有 5%影响到了你坑的人/组织,而 95%影响的只是和你一样的其他打工人。所以考虑下有无别的手段吧
sky857412
2023-09-22 09:23:53 +08:00
服务启动时,启动一个后台线程跑任务,然后在特定数据情况下,线程挂掉,后台任务停止运行
BeyondBouds
2023-09-22 09:26:55 +08:00
公司没有 cr ,那可太简单,直接关键业务模块打包成静态库,源代码只有我有....
hervey0424
2023-09-22 09:31:28 +08:00
正常写代码就行了
skiy
2023-09-22 09:31:46 +08:00
?结果苦的是下一个接手的同行。到时接手的同行,直接把坑往 v2 一发…又是一轮的口诛笔伐。
?往后的背调不打算过了?
wuqi5920
2023-09-22 09:31:49 +08:00
@jatsz
@shmilypeter 还用埋坑?方法不做拆分。直接一坨,if else 无限嵌套。注释不写,反正写了也没用
shawnsh
2023-09-22 09:33:48 +08:00
用 C++写,内存泄漏就够了
thinkm
2023-09-22 09:35:23 +08:00
用人名作为变量名
int peter = 3;
double vincent = 1.0;
Selenium39
2023-09-22 09:38:23 +08:00
关键的条件判断处少写一个=号,合理
dcsuibian
2023-09-22 09:41:14 +08:00
要我就不埋坑,何苦为难下个打工人

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/976027

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX