Skip to content

Improve integration tests performance #350

@MrRefactoring

Description

@MrRefactoring

Currently, each test file (or group of tests) uses beforeAll and afterAll hooks to create and delete a project, respectively. This approach is redundant and negatively impacts test performance.

The objective is to refactor the test setup so that the project is created only once at the beginning of the tests and deleted after all tests finish (regardless of success or failure).

Checklist:

  1. Remove tests.setupFiles

    • Open the vitest.config.mts file.
    • Remove the tests.setupFiles property.
  2. Add tests.globalSetup

    • In vitest.config.mts, add a tests.globalSetup property pointing to a configuration file.
    • Ensure the file runs only for integration tests by checking process.env.TEST_ENV === 'integration'.
    • Update package.json -> scripts -> test:integration to set this flag.
  3. Create a Global Setup File

    • Use the following template for the configuration file:

      export async function setup() {
        // TODO: Implement project creation
      }
      
      export async function teardown() {
        // TODO: Implement project deletion
      }
  4. Clean Up Test Files

    • Remove beforeAll and afterAll hooks from test files where they are no longer needed.

Notes:
Submit a pull request to the release/v5.0.0 branch.

Metadata

Metadata

Assignees

Labels

enhancementDenotes a suggestion or request aimed at improving or adding new features to the project.

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions