必须要深入理解业务,但是业务知识不能等同于测试能力
测试工程的价值不能仅仅体现在特定的产品业务上,一旦离开这个业务领域,若你的经验积累很难被有效重用的话,那你的竞争力就会下降
测试开发岗位的核心是 测试 , 开发 的目的是更好地服务于测试
作为测开不能只关心如何实现预先设计的功能,而完全不关心所开发的测试框架or工具平台在测试中的具体应用场景
按重要程度顺序归纳
测试策略设计
测试用例设计
快速学习
探索性测试思维
缺陷分析
自动化测试技术
良好的沟通
对于各种不同的被测软件,能够快速准确地理解需求,并在有限的时间和资源下,明确测试重点以及最适合的测试方法的能力
具体体现如下
测试要具体执行到什么程度
测试需要借助于什么工具
如何运用自动化测试以及自动化测试框架,以及如何选型
测试人员资源如何合理分配
测试进度如何安排
测试风险如何应对
要求不仅仅局限于熟悉业务领域的测试用例设计,而是能够融会贯通,熟练地把系统性的测试设计方法和具体业务有机结合。
要做好测试用例设计,不仅要深入理解被测软件的业务需求和目标用户的使用习惯,还要熟悉软件的具体设计和运行环境,包括技术架构、缓存机制,中间件技术、第三方服务集成。
想提高测试用例设计能力,平时就要多积累,对常见的缺陷模式、典型的错误类型以及遇到过的缺陷,要不断地总结、归纳,才能逐渐形成体系化的用例设计思维。
包含两个层面的含义:
对于不同业务需求和功能的快速学习与理解能力
对于测试新技术和新方法的学习与应用能力
测试工程师在执行测试的过程中不断学习被测系统,同时结合基于自己经验的错误猜测和逻辑推理,整理和分析出更多的有针对性的测试关注点。
优秀的探索性测试思维可以帮助你实现低成本的 精准测试 ,精准测试可以理解成针对开发代码的变更,目标明确且有针对性地对变更点以及变更关联点做测试
包含三个层面的含义(递进关系,越来越深奥)
对于已发现的缺陷,结合发生错误的上下文以及日志,可以预测活动定位缺陷的发生原因,甚至可以明确指出具体出错的代码行
根据已发现的缺陷,结合探索性测试思维,推断同类缺陷存在的可能性,由此找出所有相关的潜在缺陷
对一段时间内所发生的缺陷类型和趋势进行合理分析,由点到面预估整体质量的健康状态,并能够对高频缺陷类型提供系统性的发现和预防措施,以此来调整后续的测试策略
自动化测试技术本身不绑定被测对象
牢记,测试岗位的核心是 测试 , 开发 的目的是更好地服务于测试
一方面,你需要对接产品经理和项目经理,以确保需求的正确实现和项目整体质量的达标;
一方面,你还要和开发人员不断地沟通、协调,确保缺陷的及时修复与验证。