专栏文章 连开 100年 会员会怎样

FunTester · March 31, 2020 · Last by FunTester replied at April 02, 2020 · 2469 hits

有一类 BUG,不是功能性的,在用户使用过程中也不会遇到,但是一些测试用例还是会覆盖到,当然也有不改的,因为不会对用户有什么影响。

分享一个 “BUG”,用户的 VIP 到期时间最大只能到 2038 年的某一天。

场景就是在用户不断地购买 VIP 时,在 2038 年某一次购买失败。

业务场景如下:用户购买一个月 VIP,VIP 到期时间往后延长 30 天,如果之前不是 VIP,当前时间戳往后延长 30 天,花费若干。

当时设计测试用例为了验证系统的交易风险控制中的额度控制和购买 VIP 整个流程的稳定性验证,写了一个 for 循环,一直在不停地购买 VIP。

数据库存储比较简单,每个用户(如果存在)都有一条记录,用来记录用户 VIP 状态,字段也简单,就是记录用户 VIP 的到期时间以及其他信息。购买记录和交易记录都在另外的表存储(跟这个 “BUG” 没有关系)。

BUG 原因:在存储时间戳时,使用的 int 类型表示到期时间,mysql int 有符号位支持的最大长度是 2147483647;既 2038-01-19 11:14:07(北京时间) 已经达到了最大存储值,导致无法保存正确的时间。

解决方案:就当不存在。

虽然是无心插柳发现的 “BUG”,也并没有解决掉,但是依然觉得非常有趣。

技术类文章精选

  1. java 一行代码打印心形
  2. Linux 性能监控软件 netdata 中文汉化版
  3. 接口测试代码覆盖率(jacoco)方案分享
  4. 性能测试框架
  5. 如何在 Linux 命令行界面愉快进行性能测试
  6. 图解 HTTP 脑图
  7. 如何测试概率型业务接口
  8. httpclient 处理多用户同时在线
  9. 将 swagger 文档自动变成测试代码
  10. 五行代码构建静态博客
  11. httpclient 如何处理 302 重定向
  12. 基于 java 的直线型接口测试框架初探
  13. Tcloud 云测平台 -- 集大成者
  14. 如何测试概率型业务接口
  15. Android App 测试工具及知识大集合

非技术文章精选

  1. 为什么选择软件测试作为职业道路?
  2. 成为杰出 Java 开发人员的 10 个步骤
  3. 写给所有人的编程思维
  4. 自动化测试的障碍
  5. 自动化测试的问题所在
  6. 测试之《代码不朽》脑图
  7. 成为优秀自动化测试工程师的 7 个步骤
  8. 优秀软件开发人员的态度
  9. 如何正确执行功能 API 测试
  10. 未来 10 年软件测试的新趋势 - 上
  11. 未来 10 年软件测试的新趋势 - 上
  12. 自动化测试解决了什么问题
  13. 17 种软件测试人员常用的高效技能 - 上
  14. 17 种软件测试人员常用的高效技能 - 下

大咖风采

  1. Tcloud 云测平台 -- 集大成者
  2. Android App 测试工具及知识大集合
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 8 条回复 时间 点赞

无良网站,买会员不限制时限,这不是跑路的节奏么😂 万一经济危机,钱不值钱了呢

我去催饭 回复

实话告诉你,这个设定是故意的

感觉是个默认值,好像有个区间,从 1970 到 2038 年

国文 回复

的确是这个区间

我去催饭 回复

这么说买会员还是个保值的方法,钱不值钱了 起码还是会员

J 回复

这个角度刁钻

J 回复

你忘了大明湖畔的 VIP 会员专享广告了么😂

我去催饭 回复

是爱奇艺的那个吗の?

需要 Sign In 后方可回复, 如果你还没有账号请点击这里 Sign Up