1
testing.md
ssmmxx edited this page 2026-06-05 19:07:39 +00:00

Test strategy

The test strategy for gitjet.ru will involve the following steps:

  1. Unit testing of core components (CI/CD pipeline, Docker image build process, Helm chart deployment)
  2. Integration testing between the components
  3. Manual rollout testing to ensure platform stability and functionality

Test tactics

The test tactics for gitjet.ru will involve the following techniques:

  1. Black box testing: Testing without prior knowledge of the system architecture or implementation details
  2. White box testing: Testing with prior knowledge of the system architecture and implementation details
  3. Regression testing: Testing against known issues to ensure that new changes do not introduce regressions

Test cases (mapped to use cases)

Use case 1: Deploying Platform via CI/CD Pipeline

Test case: Verify that the CI/CD pipeline correctly builds and publishes Docker images to the private registry.

Tactic: Black box testing

Steps:

  1. Trigger a new commit to the main branch of the gitjet/core-scm repository.
  2. Verify that the CI/CD pipeline builds and publishes Docker images to the private registry.

Use case 2: Manual Rollout of Platform

Test case: Verify that the manual rollout script correctly deploys the platform changes.

Tactic: White box testing

Steps:

  1. Execute the core-scm/deploy/helm-upgrade-k3s-lab.sh script to manually roll out the platform changes.
  2. Verify that the platform is deployed correctly using Helm charts.

Smoke

The smoke tests for gitjet.ru will involve the following components:

  1. CI/CD pipeline (defined in .gitjet/workflows/core-scm-production.yml)
  2. Docker image build process
  3. Helm chart deployment

Smoke test 1: CI/CD pipeline

Test case: Verify that the CI/CD pipeline is correctly configured and running.

Tactic: Black box testing

Steps:

  1. Trigger a new commit to the main branch of the gitjet/core-scm repository.
  2. Wait for the CI/CD pipeline to complete successfully.

Smoke test 2: Docker image build process

Test case: Verify that the Docker image build process is correctly configured and running.

Tactic: Black box testing

Steps:

  1. Build a new Docker image using the docker build command.
  2. Verify that the image is built successfully.

Smoke test 3: Helm chart deployment

Test case: Verify that the Helm chart deployment process is correctly configured and running.

Tactic: Black box testing

Steps:

  1. Deploy the platform using Helm charts.
  2. Verify that the platform is deployed successfully.

Regression

The regression tests for gitjet.ru will involve the following components:

  1. CI/CD pipeline (defined in .gitjet/workflows/core-scm-production.yml)
  2. Docker image build process
  3. Helm chart deployment

Regression test 1: CI/CD pipeline

Test case: Verify that the CI/CD pipeline correctly handles errors and failures during the build and publish process.

Tactic: White box testing

Steps:

  1. Introduce an error in the .gitjet/workflows/core-scm-production.yml file.
  2. Trigger a new commit to the main branch of the gitjet/core-scm repository.
  3. Verify that the CI/CD pipeline handles errors and failures correctly.

Regression test 2: Docker image build process

Test case: Verify that the Docker image build process correctly handles errors and failures during the build process.

Tactic: White box testing

Steps:

  1. Introduce an error in the Dockerfile of the gitjet/core-scm repository.
  2. Build a new Docker image using the docker build command.
  3. Verify that the image is built successfully and handles errors and failures correctly.

Regression test 3: Helm chart deployment

Test case: Verify that the Helm chart deployment process correctly handles errors and failures during the deployment process.

Tactic: White box testing

Steps:

  1. Introduce an error in the Chart.yaml file of the gitjet/core-scm repository.
  2. Deploy the platform using Helm charts.
  3. Verify that the platform is deployed successfully and handles errors and failures correctly.

Edge cases

The edge cases for gitjet.ru will involve the following components:

  1. CI/CD pipeline (defined in .gitjet/workflows/core-scm-production.yml)
  2. Docker image build process
  3. Helm chart deployment

Edge case 1: CI/CD pipeline with multiple concurrent builds

Test case: Verify that the CI/CD pipeline handles multiple concurrent builds correctly.

Tactic: White box testing

Steps:

  1. Trigger multiple new commits to the main branch of the gitjet/core-scm repository.
  2. Verify that the CI/CD pipeline handles multiple concurrent builds correctly.

Edge case 2: Docker image build process with large images

Test case: Verify that the Docker image build process handles large images correctly.

Tactic: White box testing

Steps:

  1. Build a large Docker image using the docker build command.
  2. Verify that the image is built successfully and handles large images correctly.

Edge case 3: Helm chart deployment with multiple releases

Test case: Verify that the Helm chart deployment process handles multiple releases correctly.

Tactic: White box testing

Steps:

  1. Deploy the platform using Helm charts multiple times.
  2. Verify that the platform is deployed successfully and handles multiple releases correctly.