📜  测试环境

📅  最后修改于: 2021-01-11 00:46:07             🧑  作者: Mango

什么是测试环境?

测试环境是硬件和软件的集合,可以帮助我们执行测试用例。

一旦我们从客户那里获得了需求,开发人员便开始开发代码。

编码阶段完成后,应将应用程序安装在测试服务器中。可以在URL的帮助下访问该应用程序,URL可能是这样的:

HTTP://计算机名称/项目/公司名称

假设我们有ICICE服务器,该服务器已配置了软件,硬件,数据库和应用程序。

  • 测试环境具有软件配置(操作系统),硬件配置(RAM,硬盘和处理器)以及测试控制台,它们可以帮助我们执行测试用例。
  • 环境设置是测试过程的重要组成部分,因为如果设置不正确,测试团队将无法启动测试过程,并且应用程序可能会崩溃。
  • 以及生产ICICE.com和环境
  • 数据库是安全的;这就是为什么我们可以使用它来创建,修改和删除数据的原因。
  • 可以由n个最终用户(实际用户)使用此服务器。

软件服务器

在这里,我们有四种类型的服务器,如下所示:

  • 生产服务器
  • 开发服务器
  • 质量检查主服务器
  • 登台服务器

生产服务器

由软件,硬件和应用程序开发环境组成的服务器称为生产服务器。它是用户访问任何Web应用程序或网站的核心服务器。

生产服务器的配置与登台服务器类似,并且应先将应用程序在登台服务器上进行调试和测试,然后再转储到生产服务器中。

生产服务器的功能

  • 最终用户或实际用户使用此服务器。
  • 由于生产服务器包含真实的用户数据,因此它具有安全性。
  • 高度配置的系统,因为它被n个用户使用。
  • 生产URL访问生产服务器。
  • 一旦开发/测试/稳定了应用程序,便将其部署到生产环境中。

开发服务器

通常,开发人员可以访问它以编写新的代码行并修复错误。开发服务器提供了一个运行时环境,在该环境中可以开发和调试程序。

质量检查主服务器

测试工程师可以访问它以进行所有类型的测试,还可以由开发人员获取以再现错误。在此服务器中,我们将执行单元和集成测试。

测试(登台)服务器

由于生产服务器的配置很高,因此我们需要另一台服务器来检查服务器的兼容性,因此我们需要一台类似的服务器来执行系统测试。

检查应用程序兼容性错误被称为登台服务器。

该服务器可帮助我们在将应用程序部署到生产服务器之前识别软件性能,行为,错误和其他问题。

测试环境的过程

  • 客户提出要求并由开发人员完成编码后,我们便开始在测试服务器上进行第一轮测试,例如功能/单元,具有正常配置的集成测试。
  • 在这里,所有服务器软件都应该相同,但是硬件和数据库与生产服务器登台服务器相似。
  • 对于系统测试,我们需要一个高度配置的服务器,该服务器类似于称为登台服务器的生产服务器(与软件,硬件和数据库相似)。
  • 在登台服务器中,我们正在使用测试URL并执行系统测试
  • 如果发现任何错误,我们将移交给开发人员,他们将修复该错误,并将其直接存储在登台测试服务器中

  • 在一家公司中,我们将仅使用以下两种环境:
    • 开发人员环境
    • 测试环境
  • 在测试过程中,为了节省时间,我们将从QA Main 1转移到Staging服务器的数据库,而不是使用已经存在的dev数据库创建一个新数据库。
  • 然后将应用程序从测试服务器(登台服务器)移动到生产服务器。

注意:生产问题:这些问题可能在最终用户正在使用应用程序的生产站点中实时发生。

为什么要测试类似于生产服务器的环境?

因为,如果我们将应用程序从低配置迁移到生产环境,则用户可能会发现一些问题。为了避免这种情况,我们在类似于生产环境的环境中进行了一次全面的端到端(系统)测试。

以下各方面说明了为什么我们需要类似于生产服务器的测试环境:

该软件应类似于生产

  • 数据库服务器应该类似
  • 操作系统应该类似
  • Web服务器应该类似
  • 应用程序服务器应该类似

硬件应该类似于生产

  • 硬件配置应类似于生产服务器

例如:如果生产服务器是ICICE,则测试服务器也应该是ICICE服务器。

  • 配置和硬件必须相似但容量不同,即CPU数量。

数据应类似于生产

  • 我们应该创建一个类似于生产的数据。
  • 在实时环境中,我们可能会在数据库中输入n个条目,但是在测试时,我们无法手动输入n个条目。因此,我们编写了一个包含成千上万个条目的测试脚本,可用于测试。

注意:

  • 我们可以为开发和测试团队使用一台通用服务器吗?不,因为没有连续的任务,并且如果我们有公用服务器,则开发人员会静默更改代码。 测试环境
  • 当开发人员重现该错误时,以及在哪个服务器,测试服务器或开发服务器上?
    • 发现错误的地方,只能在此复制(测试服务器,已发现的错误)。
    • 如果我们在开发人员服务器上执行此操作,则其他开发人员可能会更改代码,因此好的方法是仅在测试服务器上重现该错误。
    • 由于开发人员可以随时更改代码,因此始终将应用程序从测试服务器移至生产服务器569。
    • 但是,在测试服务器中,人们无法访问代码,因为我们总是将应用程序从测试服务器转移到生产服务器。
  • URL是否仅允许访问必须经过测试的应用程序?
    • 当客户需要更改或给出应用程序的新要求时,它将把它交给特定的公司。
    • 在获得需求之后,开发团队将创建一台单独的服务器,并使用开发人员URL运行该应用程序。
    • 准备好应用程序后,它将移交给测试工程师,测试工程师将使用测试URL测试应用程序,该URL仅可在特定公司中使用。
  • 当我们使用URL时,我们只能授予从服务器或应用程序前端对应用程序的访问。 测试环境
    • 客户想要一个应用程序,然后他/她去软件公司并给出要求;公司要求开发人员在开发服务器中开发代码。
    • 完成代码后,将应用程序安装在测试服务器中,以便测试工程师测试该应用程序,直到该应用程序稳定为止,然后将其部署到生产服务器中。
  • 我们可以将需求更改为两个服务器吗?
    • 当应用程序在生产服务器中时,测试工程师和开发人员无法进行任何更改,因为他们可能已经更改了开发服务器和测试服务器上的要求。 测试环境