系统性思维
如果以系统性思维来分析和解决问题,就不会出现:
- 只见树木不见森林
- 片面地追求单个目标
- 被表象所迷惑,看不到本质
- 忽视某些产品质量风险
- 千里之堤、溃于蚁穴
- 用线性的思维方式来理解非线性的问题
而是会整体地、多角度地、多层次地分析问题。软件测试的系统性思维会帮助我们能够全盘掌控软件测试的目标、要素及其之间的关系。例如,当我们思考最基本的概念“什么是软件测试?” 时,就会从不同的角度去思考,正向的、反向的、狭义的、广义的、......有不同的思考,就有不同的测试策略、测试方法,会决定我们是如何制定测试项的优先级、会影响我们的测试分析、设计与执行的某些活动
分析性思维(批判性思维)
- 质疑能力: 软件测试人员应该具备质疑的勇气和能力,不轻易接受开发人员或其他人的说法,而是要通过自己的分析和验证来确认问题是否存在。
- 逻辑思维: 批判性思维需要建立在严谨的逻辑之上,软件测试人员需要通过逻辑推理和分析,找出问题根源并提出有效的解决方案。
- 判断能力: 在软件测试过程中,测试人员需要不断做出判断和决策,批判性思维可以帮助他们做出准确、理性的判断。
- 解决问题能力: 批判性思维不仅仅是发现问题,更重要的是能够提出解决问题的方法和建议,帮助团队更好地改进软件质量。
发散性思维
想要做好测试,深刻理解用户、产品和业务是非常重要的。任何商业软件最终都是为了解决业务问题和满足用户的需求,而测试正是对这种质量的保障。所以,在学习自动化测试的过程中,一定要重视业务需求、测试思维和测试方法等。只有具备良好的测试素质,才能让自动化测试发挥其价值,才能真正做到事半功倍。