测试开发全栈之Python自动化 七年软件测试历程,回过头来,最能帮助我的还是这些.....
改革开发四十周年,技术更新也是日新月异,发展迅速。软件测试行业也如此。现在人工智能测试挺火的,但是谈到软件测试,人脑还是最好的测试工具。当我们测试软件时,我们处理信息,解决问题,做出决策并创造新的想法。这些并不是 AI 测试能轻易替代的。
作为测试人员,我们必须了解不同的思维类型,以便我们可以将它们与不同的情境联系起来。例如,当我们查看设计图时,我们需要进行分析。当我们想到场景时,我们需要以抽象的方式思考。
不同的测试活动需要不同的思考过程 因此,能够 “开启” 每项活动的不同思维模式非常重要。
创造性思维
分析思维
批判性思考
具体思考
抽象思维
发散思维
趋同思维
顺序思考
整体思维
软件测试中的思维类型
让我们来看看不同的思维类型以及如何在软件测试和各种测试活动的上下文中应用它们。
创造性或侧向思维
创造性思维意味着以新的方式看待事物。这是 “跳出框框思考” 的定义。
在创造性思维中,我们脱离既定的理论,规则和程序,以新的和富有想象力的方式做事。
例如,在测试的背景下,这可能是我们应用新的测试技术时,例如成对测试技术,以减少排列的数量,但增加覆盖范围。
分析思维
分析思维指的是将整体分成基本部分以检查部分及其关系的能力。它涉及以合理的,逐步的方式思考,将更大的信息系统分解为其部分。
例如,当我们查看架构图并尝试找出通过系统和单个组件的路径时。
一个很好的例子是当我们分析用户提交表单时发生的情况,并将请求发送到与数据库通信的 API。
批判性思考
批判性思维是通过仔细分析某些东西来推理的能力,以确定其有效性或准确性。它是一个积极的学习者而不是被动的信息接收者。
批判性思维可能是测试环境中最重要的思维方式。作为测试者,我们应该总是质疑想法和假设,而不是接受它们的表面价值。
例如,在查看用户故事时,我们可能会询问有关接受标准的问题,而不是接受它们给予我们。
具体思考
具体思考是指理解和运用事实知识的能力。它与抽象思维相反。
具体想要遵循指示并有详细计划的人。他们讨厌任何模糊或含糊的东西。因此,具体的思想家更喜欢使用列表和电子表格。
在测试环境中,这是测试人员在开始测试之前要求所有指令都存在的时候。例如,在用户故事中定义所有验收标准之前,某些测试人员不会开始测试。
抽象思维
与具体思维相反,抽象思维指的是思考实际上并不存在的事物的能力。
软件测试人员以抽象的方式思考思想和信息的更广泛意义,而不是具体细节。
例如,在测试和故事修饰会话的上下文中,具有抽象思考能力的测试人员可以提出有趣的测试场景。测试人员不仅要阅读验收标准,还会查看用户故事,并尝试弄清楚这可能与系统的其他部分有关或影响。
发散思维
发散思维指的是通过探索许多可能的解决方案来创造创意的能力,以找到有效的解决方案。它涉及从各种来源汇集事实和数据,然后应用逻辑和知识来做出决策。
在进行探索性测试时,我们应用启发式方法,并根据我们以前的经验做出判断。
趋同思维
融合思维是能够以一种有组织的,逻辑的方式将主题的许多不同部分或视角放在一起以找到单个答案。
例如,当我们试图找到缺陷的根本原因时,我们收集相关信息并提取必要的数据。
顺序思考
顺序(线性)思维是指以有序规定的方式处理信息的能力。它涉及逐步进展,其中必须在采取另一步骤之前获得对步骤的响应。
在软件测试的上下文中,这与我们遵循具有预定义步骤和预期结果的脚本的时间相关。
整体思维
整体(非线性)思维是能够看到大局并识别组件如何形成更大系统的能力。它涉及在多个方向扩展您的思维过程,而不是仅仅向一个方向扩展。
在测试环境中,这是我们执行集成或系统测试的时候。
综上所述:
软件测试需要我们深入思考。这是一个不断提问和分析我们收到的信息的过程。不同的测试活动需要不同的思考过程 了解不同的思维类型将有助于提出正确的问题。
在面试测试人员时,我们应该提出基于场景的问题,这些问题根据上述思维类型来运用测试者的思维能力。