软件测试 - 测试场景

需求最终确定后,开发和测试团队开始各自的活动。开发从软件编码开始,而测试则从需求开始。最后,根据需求创建测试场景和用例,然后将其转换为测试用例。

什么是测试场景?

测试场景是包含软件功能所有端到端流程的文档。它主要从客户的角度以简洁的方式开发,有时可能只有一行。测试场景类似于客户在使用软件时可能遇到的现实情况的模拟。

测试场景通过简化测试方法和流程来指导测试团队。它详细说明了最终用户在使用软件时所经历的操作和条件的信息,而不是在粒度级别。可以无缝创建和更新测试场景。它节省了大量的时间和精力,并被敏捷框架所采用。

测试场景成为一个非常有用的文档,用于验证软件的所有要求和功能是否正常运行。始终建议在从客户、业务用户、开发人员和其他项目利益相关者那里获得反馈后,提出由实际用例和业务用例组成的测试场景。

测试场景的优势

测试场景的优势如下 −

  • 通过增加测试覆盖率,它有助于提高软件质量。
  • 一旦开发完成,它就会由客户、业务分析师和其他项目利益相关者进行审查和批准,以确保从测试角度来看不会遗漏任何内容。
  • 由于测试场景涵盖了所有实际用例,因此它有助于估计项目的测试工作量。
  • 它有助于分离关键和非关键流程,并指导测试团队。
  • 测试人员可以非常轻松地维护、更新、访问和创建它。

测试场景何时进行未准备好?

在以下情况下未准备好测试场景 −

  • 如果项目截止日期很严格,则很难提出包含所有可能的实际和业务用例的测试场景。
  • 如果被测试的产品需求经常变化,并且这些需求仍然不稳定,那么每次创建和更新测试场景都是一个困难的过程。
  • 在敏捷环境中,提出测试场景文档不是强制性的。
  • 在回归和缺陷重新测试测试周期中,不会创建新的测试场景。可以使用以前测试周期中的现有测试场景。

测试场景示例

让我们以以下电子商务软件支付模块的测试场景为例 −

  • 在开始付款之前,检查用户是否已选择商品。
  • 检查付款处理后是否生成了包含所有详细信息的正确发票。
  • 检查是否已为所有选定商品处理了付款。
  • 检查客户仪表板中是否显示了所有具有成功付款历史记录的商品。
  • 检查付款历史记录是否反映在银行详细信息中。
  • 检查在为用户处理付款时是否可以应用有效的优惠券代码。
  • 检查是否已为客户成功处理了付款退款。
  • 检查即使客户输入了无效的银行详细信息、金额等,付款是否成功。
  • 检查用户是否可以使用所有付款方式。
  • 检查用户是否可以使用从之前交易中获得的现金返还金额付款。

如何创建测试场景?

可以按照以下步骤创建测试场景 −

  • 仔细检查并分析每项功能、业务和系统需求。
  • 集思广益,提出个人需求,并从客户的角度提出所有可能的真实场景。
  • 确定测试需求所需的每项技术资源。
  • 确定最终用户可能利用软件的所有可能方式,并检测可能成为黑客的用户。
  • 提出涵盖软件所有功能和特性的测试场景。这些场景应该包含所有可能的流程、路径等。
  • 创建一个可追溯性矩阵,将每个场景与需求进行映射,以确保不会遗漏任何需求。
  • 让项目利益相关者审查和批准所有测试场景。

编写测试场景的最佳实践

编写测试场景的最佳实践如下 −

  • 如果测试场景是结合多个需求编写的,则应确认每个需求都得到满足。否则,可能会导致遗漏需求。
  • 如果大量测试场景都提出了一个需求,则根据客户使用情况为这些场景设置优先级非常重要。

测试场景和测试用例之间的区别

Sr.No 测试用例 测试场景
1 它包含有关测试内容、需要执行的测试步骤、实际结果和预期结果等所有详细信息。 它是一个高级文档,涉及所有功能以及所有功能的用户故事。
2 它的创建是为了让测试人员和开发人员能够协同工作。 它指导测试团队执行任务。
3 它是根据测试场景文档创建的,并在回归或重新测试期间再次使用阶段。 它是根据需求直接创建的,但只要有任何需求发生变化或增加,就需要更新。

结论

至此,我们对软件测试测试场景教程的全面介绍就结束了。我们首先描述了什么是测试场景、测试场景的优势、何时不使用测试场景、测试场景示例、如何创建测试场景、编写测试场景的最佳实践以及测试场景和测试用例之间的区别。

这使您具备了对软件测试测试场景的深入了解。明智的做法是继续练习您学到的知识并探索与软件测试相关的其他知识,以加深您的理解并拓展您的视野。