JMXAuditor-jmeter-plugin

JMXAuditor Rule Specification

Single source of truth for the 25 rules. Each entry mirrors what the rule class returns from id(), category(), severity(), appliesTo(), description(), and the Title / Description / Suggestion strings passed to AbstractRule.make(...). Keep this file in sync with the rule classes under src/main/java/io/github/sagaraggarwal86/jmeter/jmxauditor/rules/.

Conventions

Rule catalogue

25 rules · 6 categories · counts 4 / 3 / 5 / 3 / 6 / 4 (Correctness / Security / Scalability / Realism / Maintainability / Observability). Order below is PRD §7. RuleRegistry execution order differs in Realism and Maintainability (whole-tree first) — see CLAUDE.md for why.

# Rule ID Category Severity Applies to Whole-tree
1 EXTRACTOR_NO_DEFAULT Correctness ERROR RegexExtractor, JSONPostProcessor, BoundaryExtractor  
2 THREAD_GROUP_ZERO_DURATION Correctness ERROR ThreadGroup  
3 ASSERTION_SCOPE_MISMATCH Correctness WARN ResponseAssertion  
4 EXTRACTOR_NO_REFERENCE_NAME Correctness ERROR RegexExtractor, JSONPostProcessor, BoundaryExtractor  
5 PLAINTEXT_PASSWORD_IN_BODY Security ERROR HTTPSamplerBase  
6 PLAINTEXT_TOKEN_IN_HEADER Security WARN HeaderManager  
7 CREDENTIALS_IN_UDV Security WARN Arguments  
8 GUI_LISTENER_IN_LOAD_PATH Scalability ERROR ResultCollector  
9 BEANSHELL_USAGE Scalability WARN TestElement (filtered by class name)  
10 SAVE_RESPONSE_DATA_ENABLED Scalability WARN ResultCollector  
11 RETRIEVE_EMBEDDED_RESOURCES Scalability WARN HTTPSamplerBase  
12 THREAD_COUNT_EXCESSIVE Scalability WARN ThreadGroup  
13 NO_THINK_TIMES Realism WARN ThreadGroup  
14 MISSING_RAMP_UP Realism INFO ThreadGroup  
15 MISSING_COOKIE_MANAGER Realism INFO TestPlan
16 HARDCODED_HOST Maintainability WARN HTTPSamplerBase, ConfigTestElement  
17 DEFAULT_SAMPLER_NAME Maintainability INFO Sampler  
18 DISABLED_ELEMENT_IN_TREE Maintainability INFO TestElement (filtered by isEnabled())  
19 MISSING_TRANSACTION_CONTROLLER Maintainability INFO ThreadGroup  
20 CSV_ABSOLUTE_PATH Maintainability WARN CSVDataSet  
21 JTL_EXCESSIVE_SAVE_FIELDS Maintainability WARN TestPlan
22 HTTP_SAMPLER_NO_ASSERTION Observability WARN HTTPSamplerBase  
23 UNNAMED_TRANSACTION_CONTROLLER Observability INFO TransactionController  
24 TRANSACTION_PARENT_SAMPLE Observability INFO TransactionController  
25 JSR223_NO_CACHE_KEY Observability WARN TestElement (filtered by class name)  

Correctness

EXTRACTOR_NO_DEFAULT

THREAD_GROUP_ZERO_DURATION

ASSERTION_SCOPE_MISMATCH

EXTRACTOR_NO_REFERENCE_NAME

Security

PLAINTEXT_PASSWORD_IN_BODY

PLAINTEXT_TOKEN_IN_HEADER

CREDENTIALS_IN_UDV

Scalability

GUI_LISTENER_IN_LOAD_PATH

BEANSHELL_USAGE

SAVE_RESPONSE_DATA_ENABLED

RETRIEVE_EMBEDDED_RESOURCES

THREAD_COUNT_EXCESSIVE

Realism

NO_THINK_TIMES

MISSING_RAMP_UP

Maintainability

HARDCODED_HOST

DEFAULT_SAMPLER_NAME

DISABLED_ELEMENT_IN_TREE

MISSING_TRANSACTION_CONTROLLER

CSV_ABSOLUTE_PATH

JTL_EXCESSIVE_SAVE_FIELDS

Observability

HTTP_SAMPLER_NO_ASSERTION

UNNAMED_TRANSACTION_CONTROLLER

TRANSACTION_PARENT_SAMPLE

JSR223_NO_CACHE_KEY