查看原文
其他

“测试右移”与DevOps有关系吗?

Test Ninja 软件质量报道 2022-06-03

“测试右移”的价值低于“测试左移”,
“测试右移”的内涵似乎也没有“测试左移”那么丰富。
但测试右移依旧很有价值,也富有内涵。
欲了解“测试左移”,请看之前的两篇文章:
《真有人把“测试左移”的价值和实践说透了
《“设计驱动测试”还是“测试驱动设计”?

那说说“测试右移”有什么内容呢?
简单地说,就是把在研发阶段的系统测试移到上线后进行。
这样会不会觉得不靠谱——对质量不负责?
也不是,而是因为:
  • 不能把全部“系统测试”右移,只是部分的;
  • 某些测试更适合线上测试
这样做,研发的成本大大降低,而且上线更快。

1. 究竟哪些测试更适合右移呢?
  1. 性能测试:对于非BAT那样的企业,一个新产品上线,并没有太多的用户,一般不会存在性能问题(前提是做过单元的测试测试),在研发环境上做性能测试费钱又费时,可以在上线后进行性能测试——在线性能监控,发现性能瓶颈、内存泄露等问题,实现持续测试、持续调优。

  2. 安全性测试:安全性测试水也很深,线下可以完成代码的静态分析、安全性功能验证、渗透测试等,上线后,还是可以通过监控、检测来发现的一些安全性漏洞,及时修正。

  3. 易用性测试:侧重A/B测试,见文章:干货分享:如何用A/B测试驱动产品增长?

  4. 部分功能测试:有些测试无法在线下做的,特别是和其它系统集成的验证,这也只能在上线后进行,但这类测试不是让用户去测,而是研发人员(部署人员)自己主动验证,即一旦版本部署就立即验证,赶在用户使用之前完成。

  5. 验收测试:灰度发布就是一个例子,就是让用户真正来完成对系统的验收,通过导流量,从千分之一流量到百分之几、百分之十的流量,逐步扩大用户的使用范围,如果中间达不到预期质量,立刻回滚到上一个版本。

  6. 收集用户反馈,进一步改进产品质量。虽然这不能算测试,也是为了改进质量,甚至更有价值。如微软的客户反馈系统, 再进一步就是利用AI技术来收集用户反馈,进行数据挖掘、客户情绪分析、客户焦点分析等。


2. 测试右移和DevOps有没有关系呢?

这要看我们如何理解DevOps?


说它与DevOps没有关系也可以,只要软件作为一种服务(SaaS)存在,就可以实施“测试右移”实践,即不管DevOps在与不在,我们还是可以开展测试右移的活动。

如果认为DevOps是研发活动延伸到运维,那么可以说“测试右移”和DevOps有直接关系,即在运维环境上完成研发阶段未完成的工作,这也需要研发团队和运维团队的紧密合作,也相当于把“研发”和“运维”之间的那堵墙推倒了。“测试左移+测试右移”可以认为是敏捷研发、DevOps在测试领域的体现。

测试左移 + 测试右移 = 全程软件测试

其它参考:

北京测试大师公开课

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存