测试环境


什么是测试环境?

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

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

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

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

假设我们有 ICICE Server,它已经配置了软件、硬件、数据库和应用程序。

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

测试环境

软件服务器

这里,我们有四种类型的服务器,分别如下:

  • 生产服务器
  • 开发服务器
  • QA 主服务器
  • 登台服务器

生产服务器

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

生产服务器配置类似于临时服务器,应用程序应该在转储到生产服务器之前在临时服务器上调试和测试。

生产服务器的特点

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

开发服务器

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

QA 主服务器

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

测试(登台)服务器

由于生产服务器配置高,我们需要另外一台服务器来检查服务器的兼容性,所以我们需要一个类似的服务器来进行系统测试。

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

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

测试环境流程

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

测试环境

  • 在一个公司里,我们只会用到两种环境,分别是:
    • 开发者环境
    • 测试环境
  • 在测试过程中,我们会将数据库从QA Main 1移到Staging 服务器以节省时间,而不是使用现有的 dev 数据库创建一个新数据库。
  • 然后将应用程序从测试服务器(登台服务器)移动到生产服务器。

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

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

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

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

软件应该类似于生产

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

硬件应该与生产类似

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

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

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

数据应与生产相似

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

笔记:

  • 我们可以为开发和测试团队在一台公共服务器上工作吗? 没有,因为没有连续的任务,如果我们有公共服务器,开发人员会默默地更改代码。 测试环境

  • 开发人员何时重现错误,在哪个服务器,测试服务器或开发服务器?

    • 哪里发现bug,就只能在那里重现(测试服务器,发现bug)。
    • 如果我们在开发者服务器上这样做,其他一些开发者可能会更改代码,所以好的方法是只在测试服务器上重现错误。
    • 应用程序总是从测试服务器移动到生产服务器 569,因为开发人员可以随时更改代码。
    • 但是,在测试服务器中,人们无法访问代码,因为我们总是将应用程序从测试服务器转移到生产服务器。
  • URL 是否只允许访问必须测试的应用程序?

    • 当客户需要更改或提出应用程序的新要求时,它会将其提供给特定的公司。
    • 获得需求后,开发团队创建了一个单独的服务器,并使用开发者 URL 来运行应用程序。
    • 一旦应用程序准备好,它就会交给测试工程师,测试工程师将使用测试 URL 测试应用程序,该 URL 只能在特定公司使用。
  • 当我们使用 URL 时,我们只能从服务器或应用程序的前端访问应用程序。

  • 客户想要一个应用程序,然后他/她去软件公司并提出要求;公司提供了开发者在开发服务器上开发代码的要求。
  • 完成代码后,将应用程序安装在测试服务器中,以便测试工程师测试应用程序,直到应用程序稳定,然后将其部署到生产服务器中。
  • 能不能把需求改成两台服务器?

    • 当应用程序在生产服务器中时,测试工程师和开发人员无法更改任何内容,因为他们可能已经更改了开发服务器和测试服务器上的需求。 测试环境