什么是系统测试?类型和定义

什么是系统测试?

系统测试是一种可验证完整且完全集成的软件产品的测试类型。系统测试的目的是评估端到端的系统规格。通常,该软件只是大型基于计算机系统的一个部分。最终,该软件将与其他软件/硬件系统集成。系统测试实际上是一系列不同的测试,其唯一目的是执行整个基于计算机的系统。

系统测试是黑盒

两类软件测试

  • 黑盒测试
  • 白盒测试

系统测试属于软件测试的黑盒测试类别。

白盒测试是对软件应用程序内部工作或代码的测试。相反,黑盒或系统测试则相反。从用户的角度来看,系统测试涉及软件的外部工作。

您在系统测试中验证什么?

系统测试涉及测试软件代码以进行以下操作

20200503101516

  • 测试包括外部外围设备在内的完全集成的应用程序,以检查组件之间以及与整个系统之间如何交互。这也称为端到端测试方案。
  • 验证对应用程序中每个输入的全面测试,以检查输出是否符合预期。
  • 测试用户对应用程序的体验。

这是系统测试所涉及内容非常基本的描述。您需要构建详细的测试用例和测试套件,以从外部观察测试应用程序各个方面的内容,而无需查看实际的源代码。

软件测试层次结构

20200503101554

与几乎所有软件工程过程一样,软件测试具有规定的执行顺序。以下是按时间顺序排列的软件测试类别的列表。以下是对新软件进行全面测试以准备进行营销的步骤:

  • 在开发过程中,对每个模块或代码块执行单元测试。单元测试通常由编写代码的程序员完成。
  • 在将新模块集成到主软件包之前,之中和之后进行的集成测试。这涉及测试每个单独的代码模块。一套软件可以包含多个模块,这些模块通常由几个不同的程序员创建。测试每个模块对整个程序模型的影响至关重要。
  • 在将完整的软件产品投放市场之前,由专业的测试人员对系统进行测试。
  • 验收测试-实际最终用户对产品进行的Beta测试。

不同类型的系统测试

有超过50种类型的系统测试。下面我们列出了大型软件开发公司通常使用的系统测试类型

  1. 可用性测试-主要关注用户对应用程序的易用性,处理控件的灵活性以及系统满足其目标的能力
  2. 负载测试-必须知道软件解决方案将在实际负载下执行的情况。
  3. 回归测试-进行测试以确保在开发过程中所做的任何更改均未引起新的错误。它还可以确保随着时间的推移添加新软件模块不会出现旧错误。
  4. 恢复测试-以证明软件解决方案可靠,可信赖并且可以成功地从可能的崩溃中恢复过来。
  5. 进行了迁移测试-以确保可以将软件从较早的系统基础结构迁移到当前的系统基础结构,而不会出现任何问题。
  6. 功能测试-也称为功能完整性测试,功能测试包括尝试考虑任何可能缺少的功能。测试人员可能会列出产品在功能测试期间可能需要改进的其他功能。
  7. 硬件/软件测试-IBM将硬件/软件测试称为“硬件/软件测试”。这是测试人员在系统测试期间将注意力集中在硬件和软件之间的交互上的时候。

测试人员应该使用哪种类型的系统测试?

有超过50种不同类型的系统测试。测试人员使用的特定类型取决于几个变量。这些变量包括:

  • 测试人员的工作范围-这是确定测试人员将使用的系统测试类型的主要因素。大型公司使用的方法与中小型公司使用的方法不同。
  • 可用于测试的时间-最终,可以使用所有50种测试类型。时间通常会限制我们只使用与软件项目最相关的类型。
  • 测试人员可用的资源-当然,某些测试人员将没有进行测试类型所需的资源。例如,如果您是为大型软件开发公司工作的测试人员,则您可能会拥有昂贵的自动化测试软件,而其他人则无法使用。
  • 软件测试员的教育-对于每种可用的软件测试,都有一定的学习曲线。要使用其中涉及的某些软件,测试人员必须学习如何使用它。
  • 测试预算-金钱不仅成为小型公司和单个软件开发人员的因素,而且也成为大型公司的一个因素。