Course Process

Test Environment Setup

The test environment consists of hardware, software, and configured network which helps to execute the test cases. Test environment configuration must mock the production environment.

There are many types of test environments. The type of test environment depends on the test cases and the application under test. For example, a client-based desktop application serves a different need than a web application does. Thus, the test environments required for a desktop application are different than those for a web application.


What is Test Bed?

A testbed is an execution environment configured for testing. It will comprise of the hardware, software, and networking in order to support the required configuration to conduct the particular test. Thus, a testbed is also known as the test environment.


Who involved in Test Environment Setup?

The test environment setup process mainly involves people from three different domains. They are:

  • System Admins
  • Developers
  • Testers


Test Environment Setup requirements:

  1. Knowledge of customers and business requirements.
  2. A Software or Application URL on which testing needs to be performed.
  3. Specific devices such as simulators.
  4. Backend services, Testing server, and Database.
  5. Test Data and configuration files.
  6. Network connectivity and configuration.
  7. Hardware devices such as machines or PCs.
  8. Licensing
  9. Third-party software for user purposes.
  10. Test Framework and tools like automation tools and debugging tools.
  11. Documentation such as user manual, etc.


Types of Environments:

Production Environment – It is used only by the customers

UAT Environment – It is used both by testing team and end-users for performing validation testing

Test Environment – It is used only by the testing team for carrying out the test process.


Process of Testing in Test Environment

Once the developers finish the coding part for the requirement given by the customer, the initial round of testing is carried out on the test server like functional/unit, integration testing with normal configuration.

The server’s software here are the same, but the hardware and the database are similar to the production server and the staging server.

Next, for the system testing, a highly configured server, which is similar to the production server (similarity to the software and hardware and database) that is called the Staging server is setup. the system testing is performed with the staging server in the same test URL.

The bug reporting is carried out, and the fix of the bug provided by the developers is directly stored in the staging test server. The testing process continues to carry out in the same server.


Test Environment Setup consideration:

Following points needs to be considered in a test environment setup:

  1. The test environment should be similar to the production environment. Ensure the below parameters are met:
    • The database server should be similar
    • The operating system should be similar
    • The web server should be similar
    • The application server should be similar
  1. The hardware configuration should be similar to the production server.
  2. Ensure that there should not be any faulty environment setup, otherwise it can ruin all the testing efforts. It is the most crucial aspect of the testing process.
  3. For conducting performance testing, it is required the careful selection and configuration of the infrastructure which includes:
    • Number of CPU cores,
    • Size of RAM,
    • Concurrent users,
    • Volume of data
  1. Similarly, to conduct security testing, the following should be taken into consideration:
    1. An isolated test environment.
    2. Available non-disclosure agreements.
    3. The system should be in a good state.
    4. Keep safe the production data.
  1. At last, the readiness of the test environment should be validated by the testing team by performing smoke testing.