Skip to content

test: expand jmeter coverage and silence prefs warning#2627

Merged
crivetimihai merged 3 commits intomainfrom
jmeter-updates-tests
Feb 1, 2026
Merged

test: expand jmeter coverage and silence prefs warning#2627
crivetimihai merged 3 commits intomainfrom
jmeter-updates-tests

Conversation

@crivetimihai
Copy link
Copy Markdown
Member

@crivetimihai crivetimihai commented Feb 1, 2026

Summary

  • Centralize REST and MCP endpoint mixes into shared JMeter fragments and render them into runnable plans before each JMeter target.
  • Preserve weighted vs random mixes via REST_MIX_MODE / MCP_MIX_MODE so baseline vs load/stress/spike/soak keep distinct distributions.
  • Remove two conditional REST endpoints that fail on localhost defaults.

Implementation

  • Shared fragments: tests/jmeter/fragments/rest_mix.jmx, tests/jmeter/fragments/mcp_mix.jmx.
  • Renderer: tests/jmeter/render_fragments.py generates .jmeter/rendered/*.jmx and Make targets run the rendered plans.
  • Plan templates now include shared mixes and set mix-mode defaults; tests/jmeter/README.md documents the render step.

APIs Hit (high level)

  • Health/metrics: /health, /ready, /version, /metrics, /metrics/prometheus, /api/metrics/*
  • Core registries (read): /tools, /servers, /gateways, /resources, /prompts, /tags, /roots, /resources/templates/list
  • RBAC read: /rbac/my/roles, /rbac/my/permissions, /rbac/permissions/available, /rbac/roles
  • Model catalogs: /v1/models, /llm/gateway/models, /llmchat/gateway/models
  • Other reads: /a2a, /tokens, /tokens/admin/all, /reverse-proxy/sessions, /api/logs/*, /import/status, /export
  • MCP JSON-RPC (via /servers/{id}/mcp): initialize, tools/list, tools/call, resources/list, resources/read, prompts/list, ping

Missing / Not Covered (examples)

  • Write/mutate operations (POST/PUT/PATCH/DELETE) across tools/resources/prompts/servers/gateways/tokens/RBAC, etc.
  • Most Admin UI traffic and streaming endpoints (covered by their own dedicated JMeter plans, not part of the shared mixes).
  • Conditional endpoints removed for now: /.well-known/oauth-protected-resource (404) and /auth/email/me (422) in the default localhost config.

Expands on [TESTING][PERFORMANCE]: JMeter Performance Load Testing Baseline #2541

Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>
@crivetimihai crivetimihai self-assigned this Feb 1, 2026
@crivetimihai crivetimihai added this to the Release 1.0.0-RC1 milestone Feb 1, 2026
Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>
@crivetimihai crivetimihai merged commit a1db09c into main Feb 1, 2026
39 checks passed
@crivetimihai crivetimihai deleted the jmeter-updates-tests branch February 1, 2026 14:19
hughhennelly pushed a commit to hughhennelly/mcp-context-forge that referenced this pull request Feb 8, 2026
* test: expand jmeter coverage and silence prefs warning

Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>

* Improve jmeter testing

Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>

* refactor: centralize jmeter rest and mcp mixes

---------

Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>
Signed-off-by: hughhennnelly <hughhennelly06@gmail.com>
kcostell06 pushed a commit to kcostell06/mcp-context-forge that referenced this pull request Feb 24, 2026
* test: expand jmeter coverage and silence prefs warning

Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>

* Improve jmeter testing

Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>

* refactor: centralize jmeter rest and mcp mixes

---------

Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>
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.

1 participant