手动质量保证测试工程师 (QA工程师)

什么是积极和消极测试,它们有什么区别,为什么两种测试都很重要?

用 Hintsage AI 助手通过面试

答案。

问题历史:

手动测试最初基于只测试符合系统要求和预期行为的场景(即所谓的“积极场景”)的习惯。随着时间的推移,人们意识到软件在意外或错误条件下往往会崩溃,这些条件并未被预料到。

问题:

仅进行积极场景测试无法保证应用程序的稳定性和可靠性。如果不测试消极场景(例如,错误输入、不可接受的操作),可能会错过实际用户所遇到的严重缺陷。

解决方案:

进行两种类型的测试:

  • 积极测试 — 检查系统在用户提供正确数据和操作时是否根据要求正常工作。
  • 消极测试 — 检查系统在错误、不标准或不正确的操作和数据下的稳定性和可靠性。

关键特点:

  • 仅用一种类型的测试无法确保质量。
  • 消极测试有助于发现那些在正常使用中较少出现的错误。
  • 积极案例基于要求,消极案例基于对要求的违反。

诱导性问题。

如果产品通过了所有积极场景的测试,是否可以忽视消极测试?

不可以。在消极场景下出现的错误常常对产品的安全性和可靠性产生关键影响。

消极测试必须导致程序错误吗?

不,良好实现的程序在消极场景下应能正确处理错误数据,不“崩溃”并且不产生不正确的结果。

为系统的所有部分编写积极和消极测试是否同等重要?

不,有时对于非关键或稳定的系统部分,可以减少消极场景的数量,但对于脆弱和关键的地方,这是一项必要的工作。

常见错误和反模式

  • 完全忽视消极场景。
  • 消极测试过于表面化(例如,只检查一个不正确的输入)。
  • 不理解积极测试和消极测试之间的区别。

生活中的例子

消极案例

在公司测试网站注册表单时,只检查了正确的值(有效的电子邮件、密码等),没有考虑错误的选项。

优点:

  • 开发和测试速度快。

缺点:

  • 上线后,用户能够提交带有无效电子邮件的表单,导致邮件发送故障和负面反馈。

积极案例

测试人员增加了对无效电子邮件、过短或过长密码和所有字段中特殊字符的输入测试。

优点:

  • 系统对用户的错误操作具有抗干扰能力,数据结构始终有效。

缺点:

  • 需要额外时间处理消极场景,但通过减少运行中的bug,时间得到了回报。