代码之家  ›  专栏  ›  技术社区  ›  Garry Shutler

测试人员做什么?[闭门]

  •  7
  • Garry Shutler  · 技术社区  · 17 年前

    现在,这对我们来说似乎非常有效,但我不禁感到,我们正在浪费开发时间在一个或多个专门的测试人员可以做的事情上。

    问题是我一直为这家公司工作,所以我从来没有和测试人员一起工作过,所以我不知道他们在开发团队中除了“他们做测试”之外还有什么功能。

    12 回复  |  直到 17 年前
        1
  •  11
  •   David Morton    17 年前

    他们的工作简单明了。中断应用程序。你总是知道什么时候你有一个好的测试人员,因为当那个人来到你的办公桌/办公桌旁时,你总是有点恼火。这是因为您知道,如果测试人员在您的周围,他们会发现您所写的内容有问题。所有的借口都开始在你的脑海中堆积起来,“好吧,你用得不对!”,等等,但最后,您知道测试人员是对的,您只是在编程中犯了一个错误。

    优秀的测试人员可以 漏洞。他们可以像用户一样思考,验证业务规则等,但当他们以不寻常的模式单击以迫使您的应用程序崩溃时,他们也可以像用户一样行事。他们似乎在滥用应用程序,并以一种不应该被使用的方式使用它,但这是他们的工作,这就是他们作为测试人员获得报酬的原因。

    您知道,当检测仪没有发现任何错误时,需要更换检测仪。相信我,在任何复杂的系统中,总有 某物 错了,测试人员的工作就是找到它。

    也就是说,使用专门的测试人员是非常重要的,特别是在处理任何具有庞大UI组件的应用程序时。

        2
  •  9
  •   Community Mohan Dere    9 年前

    David's answer ,一个好的测试员是值得他或她的黄金重量-和良好的合同测试员可以是非常昂贵的。

    几年前,我和一位优秀的测试人员一起工作。当时我是技术带头人,他是我生命中的祸根,但他的价值无法估量。

    他非常有组织性,非常聪明。他根据有限的需求和功能文档编写了自己的测试计划。大多数情况下,他运行应用程序,并根据他对业务的理解,计算出它应该做什么,以及在哪里做不到。

    他对细节的关注简直令人敬畏。他所报告的一切都是完全可复制的、有文件记录的,不仅有错误报告,而且还有其他行为的建议。当然,这非常有用,因为并不是所有的bug都会导致应用程序崩溃。

    他也很灵活,能够识别哪些事情是最重要的,并且(暂时)停止为我们没有时间去做的事情而困扰我们。

    因此,我们得到了用户界面反馈、错误报告,甚至关于需求被误解的地方的建议。

    他用他发现的东西努力工作,但我们强烈地认识到我们的共同目标,即高质量的系统。如果你在外面,尼古拉斯,我祝你一切顺利。

    对于OP,我建议你寻找具备这些技能的人。

        3
  •  4
  •   17 of 26    17 年前

    一个好的质量保证部门会做几件事:

    1. 发现产品中的缺陷这一点很明显。
    2. 从非开发人员的角度测试产品的可用性。这远远超出了发现bug的范围——如果没有人知道如何使用它,那么拥有一个没有bug的产品对你没有任何好处。

    关于他们如何融入流程:

    1. 当开发团队拥有一个相对稳定的构建和合理数量的功能时,可以将它交给QA,以便他们可以开始查看它。在这一点上,QA的重点只是熟悉新版本,指出任何明显的可用性缺陷,而不是敲打东西来发现bug。
    2. 开发人员和QA致力于解决所有问题。bug都已修复、删除或推迟到将来的版本。
    3. QA对是否放行有最终决定权

    请注意,上面的3和4可能会有很大的不同,这取决于您所谈论的是新产品还是现有产品的发行版。如果你有一个现有的产品,那么大量的测试可以在开发的同时进行。

        4
  •  3
  •   Dan Dyer    17 年前

    理想情况下,测试人员应该从项目的早期就参与进来,以便他们能够制定测试计划。除其他外,这将涉及编写测试脚本。实际的书面测试脚本对于可重复测试非常重要(例如,对于新版本的回归测试)。除了测试功能外,这些计划还将涵盖不同平台的测试、可用性测试和性能测试。

    测试人员执行测试计划,发现并报告足够详细的bug,以尽量减少开发人员修复bug的工作量。这意味着要花时间准确地找出如何重现问题。测试人员的成本通常低于开发人员,因此,如果测试人员这样做,对公司来说比让开发人员来做更好。测试人员往往在这方面也做得更好,因为他们不做开发人员所做的假设。

    测试人员不应该真正进入检查编码标准遵守情况的领域——这最好留给自动化工具。测试人员不需要查看源代码。

        5
  •  2
  •   Peter Morris    17 年前

    程序员测试代码,测试人员测试应用程序。测试人员阅读规范,考虑可能导致问题的场景(如果两个人同时这么做怎么办?)等等。

    然后,他们记录一系列测试,进行测试,报告结果,等等。

        6
  •  2
  •   Yuval F    17 年前

    Top Five (Wrong) Reasons You Don't Have Testers 了解测试人员的工作以及为什么他们对软件公司有好处。

        7
  •  2
  •   HTTP 410    17 年前

    开发人员任务:

    • 从内到外-关注代码
    • 集成测试-验证子系统
    • 系统测试-验证功能

    测试人员任务:

    • 从外到内-关注功能
    • 场景-验证真实世界的情况
    • 全球测试-验证可行的输入
    • 回归测试-验证缺陷是否固定
    • 代码覆盖率-测试未触及的代码
    • 兼容性-与以前的版本兼容
        8
  •  1
  •   krishashok    17 年前

    传统上,在大型IT服务公司中,测试人员的角色往往会随着所采用的开发过程的性质而略有不同。传统的瀑布式或迭代式项目往往涉及测试人员设计测试计划、编写测试用例和在该过程中澄清需求、执行它们(手动和自动)以及清除应用程序以进行生产移动。他们还对其他可能受到影响的应用程序进行回归测试。在大多数情况下,他们从不查看代码,但在某些特殊情况下,他们会验证数据库条目,特别是在涉及批处理作业或其他遗留系统的场景中。

        9
  •  0
  •   luiscubal    17 年前

    你应该雇人做测试。

        10
  •  0
  •   User    17 年前

    实际上,最近我开始意识到如何区分一个好的测试人员和一个坏的测试人员。当任务因为没有发现bug而关闭,一个小时后你自己崩溃了应用程序,因为你觉得“这很愚蠢,但是如果做那种输入会发生什么?”然后这样做了,这是一个很好的迹象,表明有人(测试人员)没有完成他们的工作。

    我经常报告我们软件中的某个地方出现的bug,我一直觉得“应该这么做的不是我”。

        11
  •  0
  •   Rob Wells    17 年前

    为了更好地处理这个问题,我强烈推荐Gerry Weinberg的书《完美软件:和其他关于测试的幻觉》( sanitised Amazon link

    干杯

    抢劫

        12
  •  0
  •   Prabhu. S    17 年前

    与您的场景相反,我一直在与测试人员密切合作。我发现他们非常有帮助,因为他们非常了解我的软件在总体方案中的适用性。他们更了解我的交互应用程序。这方面的输入非常有价值。