gpt4 book ai didi

testing - 我如何像真正的测试人员一样系统地测试和思考

转载 作者:行者123 更新时间:2023-11-28 19:49:12 25 4
gpt4 key购买 nike

今天 friend 问我这个问题。如何测试自动售货机并告诉我它的测试用例。我可以提供一些测试用例,但这些都是一些随机的想法。我想知道如何系统地测试一个产品或一个软件。有很多测试,如单元测试、功能测试、集成测试、压力测试等。但我想知道我如何系统地测试和像真正的测试人员一样思考?有人可以解释一下如何区分所有这些测试,以及可以在实际场景中应用哪一个。例如测试文件系统。

最佳答案

即使是长期受人尊敬的专业测试人员也会告诉您:这是一门艺术,而不是一门科学。

我设计新测试用例的技巧从你提到的各种类型的测试开始,它必须包括所有这些才能彻底,但我试图找到我可以与代码/产品交互的所有方式的列表。

以自动售货机为例,里面和外面都有大量的零件。

简单的测试,因为产品被设计为可以工作,提供了大量的案例

  • 它是否给出了正确的更改
  • 处理请求的速度有多快
  • 如果商品缺货怎么办
  • 如果装满了怎么办
  • 如果零钱抽屉已满怎么办
  • 如果元素太大,或者货架很差怎么办
  • 如果用户投入的钱太少怎么办
  • 万一没钱怎么办

  • 然后是有趣的案例,这是普通用户不会想到的。
  • 如果你想给它小费怎么办
  • 给它一个假硬币
  • 窃取它
  • 用绳子放入硬币
  • 给它一些有趣的变化
  • 给它半撕开的钞票
  • 用 pry 棍 pry 开
  • 喂它坏电源/掉电
  • 各种操作中途关闭

  • 像测试人员一样思考的方法是找出可以攻击它的所有可能方式,从通常场景中的所有“有趣案例”到完全不应该使用它的所有方法。任何输入点,包括您可能认为开发商/所有者可以控制的输入点,都是公平的游戏。

    您还可以使用许多自动化测试工具,例如成对测试选择、基于模型的测试工具包,或者对于软件,各种压力/负载和安全工具。

    我觉得这个答案是一个好的开始,但我现在意识到这只是故事的一半。

    想出可以测试系统的每一种方式都很重要。你需要学会扩展你的想象力、你的问题分解技能、你对功能/故障链的理解,以及你对正在测试的事物的领域知识。这是我试图在上面提出的观点。有了正确的心态和足够的警惕,这些技能将开始迅速提高——在一年内,或在几年内(取决于领域的复杂性)。

    成为非常称职的测试人员的第二个层次是确定您应该关心哪些测试。您将始终能够以多种不同的方式破坏每个系统。这些失败是否重要是一个更有趣的问题,而且通常更难回答。不过,回答这个问题的好处是双重的。

    首先,如果您知道修复系统中出现故障的部分(或跳过修复它们!)的重要性,那么您就可以理解应该将精力集中在哪些方面。您知道在哪些方面可以花费更少的时间进行测试,哪些方面必须花费更多的时间。

    其次,更重要的是,您将帮助您的团队揭示他们应该将精力集中在哪里。您将开始发现所谓的“二阶未知数”。你的团队不知道它不知道什么。

    帮助您实现这一目标的主要技巧是始终问“为什么?”,直到您问的人被难住为止。

    一个例子:

    问:为什么要做这个测试?

    答:因为我想锻炼系统中的所有功能。

    问:为什么这个系统会这样运作?

    答:因为程序员根据产品规范做出的决定。

    问:为什么我们的产品规范要求这样?

    答:因为我们为其编写软件的公司要求软件以这种方式工作。

    问:为什么我们正在签约的那家公司将其添加为一项要求?

    答:因为他们的用户需要做:事情:

    问:为什么用户需要做:事情:?

    答:因为他们正在努力完成 :xyz:

    问:为什么他们需要完成 :xyz:

    答:因为他们通过做 :abc: 来省钱

    问:他们为什么选择 :xyz: 来解决 :abc:?

    答: ... 好问题。

    问:他们能做些什么呢?

    答: ……现在想想,有很多选择!也许其中之一效果更好?

    通过练习,您将开始知道要问哪些具体的“为什么”问题,以及要关注哪些问题。您还将学习从链条的更深处开始,并且在您的方法中不那么机械。

    这不再只是确保产品符合开发人员、产品经理、客户或最终用户提供的规范。它还有助于确定您提供的解决方案是否是您的团队可以提供的最高质量的解决方案。

    这其中的一个隐藏要求是,您必须了解作为测试人员的一半工作是一直提出问题。您可能认为您的团队成员会对此感到恼火,但希望我已经证明这对您的开发和您正在测试的产品的质量都至关重要。关心产品的聪明和好奇的队友(他们不忙也不沮丧)会喜欢你的问题。

    关于testing - 我如何像真正的测试人员一样系统地测试和思考,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3446607/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com