灵活制定测试策略

2017-06-20   出处: 搜狗测试  作/译者:Deadwalk

场景介绍

最近,小明所参与的某项目正在紧锣密鼓的开发测试中,但是对于项目的排期,他与产品同学产生较大分歧。


产品同学:这次的1.1版本希望能够在3周后完成开发和测试,快速上线收集用户的反馈并迭代,以便在下月底能够快速抢占市场。

小明:但是这个版本增加了7-8个大的功能改动,参考以前的测试经验,测试时间至少就需要2个月的时间。

产品同学2个月的话太久了,能不能只测试基本功能保证不崩溃,两周之后上线呢?

小明:这次功能改动很大,除了设计用例,执行用例,还要写Gtest单元用例以及随机测试、冻结测试等,整个测试加起来至少也要1个半月时间。

产品同学:这个项目现在是初始阶段,正是快速抢占市场阶段,能否在测试的范围进行缩减,只保证功能正确使用,不会发生基本路径的崩溃问题。

小明:这个…..


经过1小时的讨论,双方对于时间排期仍然没有达成一致。


场景回顾

作为测试工程师的小明,心中只有质量二字,大熊也是这么教导和要求小明的。所以他不论大小项目,谨慎再谨慎,生怕上线后产品出现质量问题影响用户口碑。然而保证产品质量的终极目标是希望产品成功,在不同的产品目标情况下,应该选择与之对应的测试策略(如下图)


回顾以上场景,小明是复制其他产品项目的测试策略,测试的类型涵盖功能性测试关联性测试健壮性测试稳定性测试性能测试等类型。而他目前正在做的这个项目用户量目前只有几千人,相比其他产品线上千万级别的用户量而言,是非常小的。所以,将千万级别用户的产品的测试策略,原封不动地在这个新项目来开展,其实是不合时宜的。


如何制定测试策略

1.明确产品目标和质量要求:与项目组产品、开发等其他成员,明确本次上线的目标和质量要求。

  1. 如果是产品创建初期,用户量不大快速发展扩张期,测试可以选择更为激进的测试策略。

  2. 如果是产品稳定上升期,用户量已经形成一个很大的规模,产品口碑是第一考虑的,那么可以选择保守的测试策略。

  3. 如果是介于以上两者之间,则根据产品发布目标在激进和保守策略中求得平衡。

2.列举测试的覆盖类型

  1. 功能性

    1. 业务逻辑测试:功能正常可用。

    2. 关联性测试:与业务相关的其他功能的 

  2. 健壮性:在功能使用过程中,对于网络异常、文件数据库IO异常、第三方数据(json数据异常)异常等特殊情况进行考虑,保证程序不会出现崩溃。

  3. 稳定:长时间使用被测软件各项功能,保证软件不会出现崩溃异常问题。

    1. 大数据量测试:程序在大数据、大量用户的使用情况下,功能或服务正常。

    2. 基准性能测试:关键性影响用户体验的性能指标的对比评测,例如:app的启动性能。

  4. 用性:操作及交互方面用户体验测试,符合常见的交互规范。

  5. 容性:在不同设备、不同分辨率等要素下的兼容性测试。

      等等其他类型。

附:Android手机客户端的测试类型。

3.根据实际情况选择与之对应的测试覆盖类型

  1. 根据产品目标选择

    例如:在前文举例的场景中,小明所测试的产品主要保证业务功能测试和稳定性测试两类,其他的测试并不涉及。

  2. 根据产品特点选择

    例如:被测的测试系统的业务是网上支付,那么在测试覆盖类型中应加入安全性测试,而与之无关的流量测试则不必加入其中。

4.评估可能的风险和补救措施。

    例如:小明所做的这个项目,在兼容性方面并不做过多要求,当得到兼容性问题的反馈后,case by case地进行修改即可。

5.综合评估进行决策

6.公示策略和风险。将沟通过的测试策略,公示给项目中的其他成员,以便大家理解对本次上线的目标、策略和风险隐患。


声明:本文为本站编辑转载,文章版权归原作者所有。文章内容为作者个人观点,本站只提供转载参考(依行业惯例严格标明出处和作译者),目的在于传递更多专业信息,普惠测试相关从业者,开源分享,推动行业交流和进步。 如涉及作品内容、版权和其它问题,请原作者及时与本站联系(QQ:1017718740),我们将第一时间进行处理。本站拥有对此声明的最终解释权!欢迎大家通过新浪微博(@测试窝)或微信公众号(测试窝)关注我们,与我们的编辑和其他窝友交流。
352° /3528 人阅读/0 条评论 发表评论

登录 后发表评论