Skip to content

Comments

Created k6 load testing workflow#57

Merged
FaizFarooqMoazam merged 1 commit intomainfrom
k6_workflow
Nov 1, 2025
Merged

Created k6 load testing workflow#57
FaizFarooqMoazam merged 1 commit intomainfrom
k6_workflow

Conversation

@FaizFarooqMoazam
Copy link

Add k6 Performance Testing Workflow

Overview

This PR adds automated performance testing to the NodeBB project using k6 (Grafana's modern load testing tool). The workflow automatically runs performance tests after successful VM deployments to ensure consistent application performance.

Workflow Integration

The new k6 workflow is designed to run after the existing VM Deploy workflow completes successfully:

Files Added/Modified

New Files:

  • .github/workflows/k6-performance.yml - GitHub Actions workflow for k6 tests
  • my-test.js - k6 performance test script

Modified Files:

  • package.json - Added k6 test script and ES6 module support

Features

Automated Performance Testing

  • Trigger: Runs automatically after successful VM deployments
  • Manual Trigger: Can be triggered manually via GitHub Actions UI
  • Branch Targeting: Configured for main branch deployments

The k6 workflow:

  • Triggers after successful VM Deploy workflow completion
  • Tests NodeBB performance with 10 virtual users for 30 seconds
  • Uploads results as workflow artifacts
  • Can be manually triggered for testing

Key Features

  • Non-blocking: Runs after deployment, doesn't prevent releases
  • Automated: No manual intervention required
  • Safe: Only runs on successful deployments
  • Informative: Provides performance metrics and artifacts

Test Configuration

export const options = {
  vus: 10,          // 10 concurrent users
  duration: '30s',   // 30-second test
};

Copy link

@nniknam1 nniknam1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm.

@coveralls
Copy link

Pull Request Test Coverage Report for Build 18997228928

Details

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage remained the same at 78.501%

Totals Coverage Status
Change from base Build 18996218405: 0.0%
Covered Lines: 24795
Relevant Lines: 29732

💛 - Coveralls

Copy link

@haolinwa haolinwa left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@FaizFarooqMoazam FaizFarooqMoazam merged commit 89545ed into main Nov 1, 2025
2 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants