大家好,我是蚂蚁金服国际事业群|研究员郑子颖,2002年上海交通大学计算机系硕士毕业后加入微软,在微软上海、北京和西雅图的多个部门工作过,包括2010年到2018年在Microsoft Azure,工作重心主要围绕着测试、质量以及工程效能。2018年3月加入蚂蚁金服后,在国际事业群负责质量和技术风险。
现已接受成为阿里云开发者社区问答频道特邀嘉宾,进行答题。首先分享如何测试稳定性?我们的主题是如何测试稳定性。首先我们要清晰测试稳定性情况,在理想情况下,我们希望每一个失败的测试用例都是由真正的缺陷引起的。实际情况中,用例失败的原因却非如此简单。排查不到位,很有可能漏掉真正的产品缺陷。
如何治理测试稳定性问题?解决方案层面大家可能已经熟知,但是真正方法论和理论体系层面的却知之甚少。因此对于测试稳定性,我有三板斧:
- 高频(Frequency)
高频开跑,持续打包,天天上生产,频繁合并分支
- 隔离(Isolation)
硬隔离(全隔离环境、物理隔离)要成为终态,软隔离(半共享环境,逻辑隔离,链路级别隔离)要成为终局。
- 用完即抛(Disposable)
要跑测试了就新建一个环境,测试跑完了就把环境销毁掉。下次要用再建一个新的。
最后就是落地环节了,把这三板斧做好,技术上的挑战是非常非常大的,但我们有乐观主义,相信我们能够达到目标。我们有现实主义,我们可以分解目标,结合实际情况,一步步的去做。
如果你对【测试稳定性问题】【测试用例失败】【如何治理测试稳定性问题?】【怎么结合实际情况,分解测试目标】感兴趣,欢迎随时向我提问,也欢迎大家关注「阿里云开发者社区-问答」了解更多技术干货。
欢迎大家在留言去提问关于测试、质量、技术风险,我会选择有意义、有价值的问题进行回复,欢迎大家提问,也希望能给大家带来一些启发。
参与提问互动且采纳的用户,前3名可获得一件阿里云数据线;
最佳提问者1名:可获得阿里云开发者T恤一件。
个人感觉就是在深度的提升很难,比如WebGL的渲染优化,单纯使用第三方库很简单,但是当业务需要在低配的硬件上去优化渲染,这个时候就会很麻烦,就我个人而已技术积累不够就感觉很困难,该从哪方面入手呢
如果用户需求和业务是不断在演进变化的,那么测试就也是不断变化的。 就像业务前中后台是由不同变速齿轮组成的,那么对应的分层的质量体系也是有不同速变的。 私以为高频的变化才需要高频的测试,稳定性只是测试的手段,测试不是为了跑过稳定而已,质量目标还是业务需求来决定的。 分层的质量技术体系建设,提升有效性降低执行成本是关键。适合低频的底层框架,系统级别的精细力度的单元测试就没集成测试那么多稳定性问题。隔离的必要性也不那么多,但架构抽象分层解藕,函数和类级的可测性如何设计会是更需要的。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。