Skip to main content

Test environment reference architecture

Test environment

Purpose

  • Internal validation, bug fixing, development testing.

User Types

  • Developers - Access for feature development, debugging
  • QA/Test Engineers - Perform functional, regression, and integration testing
  • Automated Testing Tools - Automated scripts or pipelines

Access Method

  • Typically via direct login/password accounts (local/test accounts)
  • No OpenID or external authentication (to maintain security and isolation)

Data

  • Synthetic or anonymized datasets
  • No real user information

Typical Activities

  • Feature testing and debugging
  • Functional verification

Test Environment requirements

The test environment should mirror the development setup as closely as possible and must meet the following technical and functional requirements:

  • Minimal Restrictions - Configure with as few restrictions as possible to allow smooth debugging, integration, and testing.
  • AI Configuration - Requires an active (paid) API key to access AI services such as OpenAI or other platforms.
  • Database Requirements - Installation of Microsoft SQL Server is required:
    • Version: Standard or Enterprise
    • Full Text Search must be enabled to support advanced query functionality
  • Security (SSL/TLS) - The environment must support SSL:
    • Browsers impose restrictions on HTTP, leading to reduced performance compared to HTTPS.
    • Supported certificate types:
      • Standard SSL certificate
      • Wildcard certificate
      • Self-signed certificate (acceptable for internal testing)
  • Indicium Service Account - A dedicated service account is required for running Indicium. This account must have:
    • Write permissions on the Indicium directory
    • Access rights to both the IAM database and the application database
    • Secure management in line with the organization's IAM policies

Cloud

Architecture and connections

Cloud test environment reference architecture

Connections:

  1. Internet → Azure SQL (VNet 1)
    Traffic from the Internet or external Azure services reaches Azure SQL Database directly, typically via secured endpoints.
  2. Application Server (VNet 2) → Azure SQL Database (VNet 1)
    The application hosted in VNet 2 (e.g., an App Service plan) communicates internally with the Azure SQL database hosted in VNet 1.

Summary of commonly used ports:

ServiceTypical Port Numbers
Azure SQL DatabaseTCP 1433 (secured via TLS)
HTTPS (external access)TCP 443

Sizing (hardware cloud)

Recommended specifications (cloud):

ComponentAzureAWSGoogle
SQLAzureDBAWS RDS db.m5.xlarge
(4 vCPU, 16 GB)
SQL server
4 vCPU, 16 GB
Indicium & UniversalAppService
Premium v3 P1V3 (2vCPU, 8 GB)
Elastic Beanstalk
t3.large (2 vCPU, 8GB)
Cloud Run
(Memory: 1 GB)
Storage Bucket
Class data: Default Class Standard

Cloud environment setup

For more information about setting up a cloud environment, see:

On Premise

Architecture and connections

On-premise test environment reference architecture

Connections:

  1. Internet → External Firewall
    Traffic from the Internet first passes through an external firewall, controlling inbound access.
  2. External Firewall → Reverse Proxy (DMZ)
    Allowed web traffic reaches a reverse proxy server placed in the DMZ (Demilitarized Zone).
  3. Reverse Proxy (DMZ) → Internal Firewall
    Reverse proxy forwards legitimate requests through an internal firewall towards the internal networks.
  4. Internal Firewall → App Server (Network 2)
    Internal firewall allows specific traffic to reach application servers within the secured network.
  5. Client Network → App Server
    Internal clients (devices like phone, laptop, tablet, desktop) directly connect to the App server within the secured internal network.
  6. App Server → SQL Server (Network 1)
    Application servers establish secure database connections to the SQL Server.

Summary of commonly used ports:

ServiceTypical Port Numbers
HTTPTCP 80
HTTPSTCP 443
SQL ServerTCP 1433

Sizing (hardware on premise)

Recommended hardware specifications (IIS Server):

ComponentConfiguration
CPU4 vCPUs
Memory16 GB RAM
Storage100–200 GB
OSWindows Server 2019/2022

Recommended hardware specifications (SQL Server):

ComponentConfiguration
CPU4 vCPUs
Memory16 GB RAM
StorageWindows/SQL installation: 200 GB
SQL Data: 200 GB
SQL Log: 100 GB
Best practice is to separate the installation, data and log locations.
OSWindows Server 2019/2022
SQLSQL Server 2019/2022 Standard or Enterprise

On-premise environment setup

For more information about setting up an on-premise environment, see:


Was this article helpful?