美文网首页
谷歌是怎么做测试的--风险

谷歌是怎么做测试的--风险

作者: 夏伟才 | 来源:发表于2021-03-02 08:56 被阅读0次

风险无处不在--在家里、路上、办公室。我们所做的任何一件事情都有风险相伴,软件交付也不例外。如何降低软件交付的风险呢?如何应对软件发生故障,并给公司声誉带来难以估量的伤害这一极大可能事件呢?

风险是不可能准确量化的,但是我们会遵循一些常识来规避风险,比如行走在人行道而不是马路中间。在应对风险时,我们首先要对需求进行分析:

哪些事件需要担心?

这些事件发生的可能性有多大?

一旦发生,对公司产生多大影响?

产品具备什么缓解措施?

这些缓解措施有多大可能会失败?

处理这些失败的成本有哪些?

恢复过程有多困难?

事件是一次性问题,还是会再次发生?

影响风险的因素很多,试图精确地、定量地计算风险比缓解风险还要麻烦。在Google,我们确定了两个要素:失败频率和影响。测试人员利用这两个要素给每项能力打分。我们发现,风险实际上是一个定性的相对值,而非一个定量的绝对值。风险分析的目标不是要给出一个精确的值,而是要识别一个能力与另一个相比风险是大是小。这对于决定以何种顺序测试哪些能力足够了。GTA提供了这一选项,GTA中的风险发生频率有4个预定义值:

罕见:发生故障的可能性很小,发生问题后的恢复也很容易;

少见:在少数情况下会发生故障,但是在使用场景复杂度不高的情况下或使用率较低的情况下,发生的可能性非常小;

偶尔:故障的情形易想象、场景有点复杂,而该能力是比较常用的;

常见:此能力所属的特性使用量大、复杂度高、问题频发。

估计风险影响的方法大致相同,也是从几种偶数取值中选择一个:

最小:用户甚至不会注意到的问题;

一些:可能会打扰到用户的问题。一旦发生,重试或恢复机制即可解决问题;

较大:故障导致使用受阻;

最大:发生的故障会永久性地损害产品的声誉,并导致用户不再使用它。

有时问题对公司和用户产生的影响是不一致的。例如公司标志加载失败对公司是一个问题,但却未必会被用户注意到。在打分的时候注意一下所考虑的风险是针对公司的还是用户的,是非常有用的。

分析完需求后,接下来就是处理了。风险不大可能彻底消除。驾驶有风险,但我们仍然会开车出行;旅游有风险,但我们并没有停止旅游。通常情况下,风险并没有真的变成伤害。为什么呢?因为我们会以实际行动缓解风险。

就软件而言,一种极端的缓解办法是去掉风险最大的组件:交付的软件越少,风险越小。但是,除了彻底的风险消除,还有很多措施可以缓解风险:

1、我们可以围绕风险大的能力点编写用户故事,并从中确定低风险的使用场景,然后反馈到开发团队,请他们有针对性地增加约束;

2、我们可以编写回归测试用例,以确保问题在重现时可以被捕捉到;

3、我们可以编写和运行引发故障的测试用例,来推动开发实现恢复和回滚的特性;

4、我们可以插入监听代码,以便更早地监测到故障;

5、我们可以插入监听代码,发现新旧版本间的行为变化以发现回归问题。

具体的风险缓解措施很大程度上取决于应用本身及用户对于安全性的期望。测试人员可能会参与到实际的缓解过程,但更主要的工作是暴露风险。那些标记为红色的能力点比黄色和绿色要优先处理,按照风险顺序进行测试。原则是:如果不能全测,就先测最重要的,也就是风险最大的。

相关文章

  • 谷歌是怎么做测试的--风险

    风险无处不在--在家里、路上、办公室。我们所做的任何一件事情都有风险相伴,软件交付也不例外。如何降低软件交付的风险...

  • 谷歌是怎么做测试的--测试类型

    谷歌没有使用单元测试、集成测试、系统测试等这些命名方式,而是使用小型测试、中型测试、大型测试这样的称谓,着重强调测...

  • 谷歌是怎么做测试的--测试计划

    和测试人员相比,开发人员有一个优势就是他们的工作产物是每个人都真正关心的。开发人员编写代码,构建用户期望的、能够为...

  • 谷歌是怎么做测试的--测试认证

    级别1: 使用测试覆盖率工具; 使用持续集成; 测试分级为小型、中型、大型; 明确标记哪些测试是非确定性的测试(非...

  • 谷歌是怎么做测试的--角色

    “解铃还须系铃人”。 当代码构建失败,或者在线上出现bug时,只有开发人员才能够去修复它。开发人员需要对自己写的代...

  • 银行压力测试是怎么回事?

    谷歌依旧打不开...... 百度百科:银行压力测试是一种以定量分析为主的风险分析方法,压力测试通常包括银行的...

  • 谷歌是怎么做测试的--版本管理

    谷歌的专职测试人员很少,却能够做到快速发布,其核心原因在于谷歌从来不会再一次产品发布中包含大量的功能。谷歌经常在最...

  • 谷歌是怎么做测试的--SET的招聘

    优秀的SET在各个方面都很出色:是一个编码能力很强的程序员,可以写功能代码;也是一个能力很强的测试者,可以测试任何...

  • 谷歌是怎么做测试的--SET的工作

    在谷歌,SET是一个融合开发角色和质量意识于一身的角色。 SET首先是工程师角色,他使得测试存活于所有谷歌的开发过...

  • 谷歌是怎么做测试的--质量不等于测试

    质量不是被测试出来的。从制造业到软件行业,如果在最开始设计创建的时候就是错的,那它永远不会变成正确的。试问一下汽车...

网友评论

      本文标题:谷歌是怎么做测试的--风险

      本文链接:https://www.haomeiwen.com/subject/ignafltx.html