华为高管总结的软件测试的行业危机
作者:栾江义 发布时间:[ 2016/10/27 11:13:29 ] 推荐标签:测试用例 软件测试
对于固定场景的验证,有预期的输入和输出,无论是接口测试还是 LLT (底层测试),都是具备这个特点。测试人员的重点是将具体的场景抽象为自动化用例,提升回归测试的工作效率。对于基于 UI 的自动化,因为产品可能存在较大变动,UI 识别也存在部分确定性,我们可以量力而行或尽可能抽象为接口自动化。在自动化工作中,测试要对开发有足够的可测试性要求,产品具备良好的代码解耦的架构。
对于未知场景的探索,主要是针对没有对应测试设计的测试驱动。可以分为工具类的自动化探索,例如我们手机可靠性测试使用的 monkey,以及安全测试的 fuzzy 等。测试的场景由工具生成和决定。另外一种是人工的探索测试,这个概念近几年也比较盛行。但个人认为这种在可行性上还是有一定难度,对测试人员的经验要求较高,目前我们也并没有组织,主要通过 Beta 测试,引入大量普通用户完成各类场景的探索。
任何测试都是不能 发现问题,网上问题的发生也是很难避免,测试需要尽量降低网上问题的级别和发生概率,并且需要具备较高质量风险防范的意识,对于高风险产品必须有双重(或三重)的防范机制。例如我们做一个支付类产品,可能会在存在某些质量问题,导致用户未支付的情况下,支付状态进行了更新(这个例子可能大家感觉不会出现,但是现实中有各类可能)。测试人员必须对产品提出,有额外的管控系统,对账号进行准实时的核查比对,确保收支一致。互联网有过类似的安全,2012 年某东积分兑换 BUG 的问题轰动一时。好的测试专家需要像扁鹊大哥一样,尽可能的识别和规避可能的质量风险。
测试人员的技能模型应该保持多样性的发展,在广度方面不断延伸,深度方面可以选择一两项技术进行不断挖掘。有三点需要测试重点关注:
编码能力:特别对于新员工,这个能力是与开发有共同语言的基础。测试人员需要了解对应业务的代码框架,构建工具,以及 LLT 测试,持续推动开发过程中的改进,能给予代码提出测试建议,将质量构建在开发阶段。
组网能力:测试需要对系统的组网,以及实际的部署情况有清晰的技术理解,这样才能发现更多的质量问题和隐患。这个说起来是比较简单,但是如果做到深入的了解,还是有很高的技术难度,例如我们现在各个业务使用的 CDN 和 DNS,如何组网可以让我们的系统体验会更快更好。用户使用的 UC、QQ 浏览器等是具备缓存加速,在缓存场景下是否会对某些业务特性产生影响。
业务能力:测试不能脱离业务,这也是为测试人员未来转型产品经理或其他岗位的一个必备能力。无论开发还是测试,能在整个职业生涯中,坚持到底的,是少之又少。大型产品线如有测试系统部之类的部门,如果脱离业务,纯粹投入技术规划或流程规划,往往会逐步被产品边缘化。
产品会有各类的隐患和问题,测试人员如果长期只发现简单的 BUG,不仅会让技能水平下降,而且会失去对工作的兴趣,我们只有通过工具或技术不断解决问题,才能挖掘测试工作的乐趣。
本文内容不用于商业目的,如涉及知识产权问题,请权利人联系SPASVO小编(021-61079698-8054),我们将立即处理,马上删除。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11热门文章
常见的移动App Bug??崩溃的测试用例设计如何用Jmeter做压力测试QC使用说明APP压力测试入门教程移动app测试中的主要问题jenkins+testng+ant+webdriver持续集成测试使用JMeter进行HTTP负载测试Selenium 2.0 WebDriver 使用指南