jmeter-ruby 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitattributes +22 -0
- data/.github/workflows/ci.yml +54 -0
- data/.gitignore +24 -0
- data/.rspec +1 -0
- data/.ruby-version +1 -0
- data/CHANGES.md +77 -0
- data/Gemfile +23 -0
- data/LICENSE.txt +21 -0
- data/README.md +434 -0
- data/Rakefile +18 -0
- data/examples/OS_process_sampler.rb +24 -0
- data/examples/assertion_results.rb +18 -0
- data/examples/basic_auth.rb +11 -0
- data/examples/browser_headers.rb +7 -0
- data/examples/composite_graph.rb +29 -0
- data/examples/constant_throughput_timer.rb +11 -0
- data/examples/csv_data_set.rb +11 -0
- data/examples/dummy_sampler.rb +9 -0
- data/examples/duration_assertion.rb +10 -0
- data/examples/etsy_login_browse.rb +61 -0
- data/examples/extract.rb +12 -0
- data/examples/foreach_controller.rb +29 -0
- data/examples/header_manager.rb +29 -0
- data/examples/http_cache_manager.rb +11 -0
- data/examples/http_cookie_manager.rb +11 -0
- data/examples/http_request_defaults.rb +11 -0
- data/examples/http_request_post.rb +11 -0
- data/examples/http_request_with_files.rb +13 -0
- data/examples/http_request_with_query_params.rb +8 -0
- data/examples/jmeter_plugins_graphs.rb +22 -0
- data/examples/json_path_assertions.rb +11 -0
- data/examples/json_path_extractor.rb +10 -0
- data/examples/json_path_postprocessor.rb +10 -0
- data/examples/jsr223_assertion.rb +13 -0
- data/examples/ldap_sampler.rb +16 -0
- data/examples/loadosophia.rb +18 -0
- data/examples/loop_controller.rb +10 -0
- data/examples/loops_with_counter.rb +15 -0
- data/examples/once_only_controller.rb +15 -0
- data/examples/perfmon.rb +46 -0
- data/examples/real_custom_methods.rb +19 -0
- data/examples/real_page_objects.rb +41 -0
- data/examples/real_redis_data_set_with_setup.rb +123 -0
- data/examples/real_user_objects_github.rb +112 -0
- data/examples/regular_expression_extractor.rb +12 -0
- data/examples/response_assertion.rb +15 -0
- data/examples/response_time_percentiles_graph.rb +11 -0
- data/examples/rsync.rb +16 -0
- data/examples/sample_transaction.rb +18 -0
- data/examples/simple_data_writer_listener.rb +11 -0
- data/examples/stepping_thread_group.rb +30 -0
- data/examples/test_fragment.rb +14 -0
- data/examples/think_time.rb +15 -0
- data/examples/thread_groups.rb +7 -0
- data/examples/throughput_controller.rb +14 -0
- data/examples/throughput_shaping_timer.rb +20 -0
- data/examples/ultimate_thread_group.rb +39 -0
- data/examples/unicode.rb +8 -0
- data/examples/user_defined_variables.rb +10 -0
- data/examples/user_parameters.rb +28 -0
- data/examples/uuid_per_iteration.rb +15 -0
- data/jmeter-ruby.gemspec +28 -0
- data/lib/jmeter-ruby/DSL.md +235 -0
- data/lib/jmeter-ruby/dsl/access_log_sampler.rb +32 -0
- data/lib/jmeter-ruby/dsl/aggregate_graph.rb +55 -0
- data/lib/jmeter-ruby/dsl/aggregate_report.rb +55 -0
- data/lib/jmeter-ruby/dsl/ajp13_sampler.rb +41 -0
- data/lib/jmeter-ruby/dsl/assertion_results.rb +55 -0
- data/lib/jmeter-ruby/dsl/beanshell_assertion.rb +28 -0
- data/lib/jmeter-ruby/dsl/beanshell_listener.rb +28 -0
- data/lib/jmeter-ruby/dsl/beanshell_postprocessor.rb +28 -0
- data/lib/jmeter-ruby/dsl/beanshell_preprocessor.rb +28 -0
- data/lib/jmeter-ruby/dsl/beanshell_sampler.rb +28 -0
- data/lib/jmeter-ruby/dsl/beanshell_timer.rb +28 -0
- data/lib/jmeter-ruby/dsl/bsf_assertion.rb +28 -0
- data/lib/jmeter-ruby/dsl/bsf_listener.rb +28 -0
- data/lib/jmeter-ruby/dsl/bsf_postprocessor.rb +28 -0
- data/lib/jmeter-ruby/dsl/bsf_preprocessor.rb +28 -0
- data/lib/jmeter-ruby/dsl/bsf_sampler.rb +28 -0
- data/lib/jmeter-ruby/dsl/bsf_timer.rb +28 -0
- data/lib/jmeter-ruby/dsl/compare_assertion.rb +27 -0
- data/lib/jmeter-ruby/dsl/comparison_assertion_visualizer.rb +55 -0
- data/lib/jmeter-ruby/dsl/constant_throughput_timer.rb +26 -0
- data/lib/jmeter-ruby/dsl/constant_timer.rb +25 -0
- data/lib/jmeter-ruby/dsl/counter.rb +31 -0
- data/lib/jmeter-ruby/dsl/cssjquery_extractor.rb +31 -0
- data/lib/jmeter-ruby/dsl/csv_data_set_config.rb +33 -0
- data/lib/jmeter-ruby/dsl/debug_postprocessor.rb +28 -0
- data/lib/jmeter-ruby/dsl/debug_sampler.rb +27 -0
- data/lib/jmeter-ruby/dsl/distribution_graphalpha.rb +55 -0
- data/lib/jmeter-ruby/dsl/duration_assertion.rb +25 -0
- data/lib/jmeter-ruby/dsl/foreach_controller.rb +27 -0
- data/lib/jmeter-ruby/dsl/ftp_request.rb +34 -0
- data/lib/jmeter-ruby/dsl/ftp_request_defaults.rb +32 -0
- data/lib/jmeter-ruby/dsl/gaussian_random_timer.rb +26 -0
- data/lib/jmeter-ruby/dsl/generate_summary_results.rb +23 -0
- data/lib/jmeter-ruby/dsl/graph_results.rb +55 -0
- data/lib/jmeter-ruby/dsl/html_assertion.rb +30 -0
- data/lib/jmeter-ruby/dsl/html_link_parser.rb +23 -0
- data/lib/jmeter-ruby/dsl/html_parameter_mask.rb +32 -0
- data/lib/jmeter-ruby/dsl/http_authorization_manager.rb +33 -0
- data/lib/jmeter-ruby/dsl/http_cache_manager.rb +26 -0
- data/lib/jmeter-ruby/dsl/http_cookie_manager.rb +28 -0
- data/lib/jmeter-ruby/dsl/http_header_manager.rb +30 -0
- data/lib/jmeter-ruby/dsl/http_request.rb +41 -0
- data/lib/jmeter-ruby/dsl/http_request_defaults.rb +41 -0
- data/lib/jmeter-ruby/dsl/http_url_rewriting_modifier.rb +30 -0
- data/lib/jmeter-ruby/dsl/if_controller.rb +27 -0
- data/lib/jmeter-ruby/dsl/include_controller.rb +25 -0
- data/lib/jmeter-ruby/dsl/java_request.rb +69 -0
- data/lib/jmeter-ruby/dsl/java_request_defaults.rb +69 -0
- data/lib/jmeter-ruby/dsl/jdbc_connection_configuration.rb +37 -0
- data/lib/jmeter-ruby/dsl/jdbc_postprocessor.rb +33 -0
- data/lib/jmeter-ruby/dsl/jdbc_preprocessor.rb +33 -0
- data/lib/jmeter-ruby/dsl/jdbc_request.rb +33 -0
- data/lib/jmeter-ruby/dsl/jms_pointtopoint.rb +41 -0
- data/lib/jmeter-ruby/dsl/jms_publisher.rb +43 -0
- data/lib/jmeter-ruby/dsl/jms_subscriber.rb +35 -0
- data/lib/jmeter-ruby/dsl/json_path_postprocessor.rb +27 -0
- data/lib/jmeter-ruby/dsl/jsr223_assertion.rb +29 -0
- data/lib/jmeter-ruby/dsl/jsr223_listener.rb +29 -0
- data/lib/jmeter-ruby/dsl/jsr223_postprocessor.rb +29 -0
- data/lib/jmeter-ruby/dsl/jsr223_preprocessor.rb +29 -0
- data/lib/jmeter-ruby/dsl/jsr223_sampler.rb +29 -0
- data/lib/jmeter-ruby/dsl/jsr223_timer.rb +29 -0
- data/lib/jmeter-ruby/dsl/junit_request.rb +37 -0
- data/lib/jmeter-ruby/dsl/keystore_configuration.rb +28 -0
- data/lib/jmeter-ruby/dsl/ldap_extended_request.rb +42 -0
- data/lib/jmeter-ruby/dsl/ldap_extended_request_defaults.rb +42 -0
- data/lib/jmeter-ruby/dsl/ldap_request.rb +35 -0
- data/lib/jmeter-ruby/dsl/ldap_request_defaults.rb +39 -0
- data/lib/jmeter-ruby/dsl/login_config_element.rb +26 -0
- data/lib/jmeter-ruby/dsl/loop_controller.rb +26 -0
- data/lib/jmeter-ruby/dsl/mail_reader_sampler.rb +37 -0
- data/lib/jmeter-ruby/dsl/mailer_visualizer.rb +64 -0
- data/lib/jmeter-ruby/dsl/md5hex_assertion.rb +25 -0
- data/lib/jmeter-ruby/dsl/module_controller.rb +25 -0
- data/lib/jmeter-ruby/dsl/monitor_results.rb +55 -0
- data/lib/jmeter-ruby/dsl/once_only_controller.rb +23 -0
- data/lib/jmeter-ruby/dsl/os_process_sampler.rb +34 -0
- data/lib/jmeter-ruby/dsl/poisson_random_timer.rb +26 -0
- data/lib/jmeter-ruby/dsl/random_controller.rb +25 -0
- data/lib/jmeter-ruby/dsl/random_order_controller.rb +23 -0
- data/lib/jmeter-ruby/dsl/random_variable.rb +30 -0
- data/lib/jmeter-ruby/dsl/recording_controller.rb +23 -0
- data/lib/jmeter-ruby/dsl/regex_user_parameters.rb +27 -0
- data/lib/jmeter-ruby/dsl/regular_expression_extractor.rb +32 -0
- data/lib/jmeter-ruby/dsl/response_assertion.rb +31 -0
- data/lib/jmeter-ruby/dsl/response_time_graph.rb +55 -0
- data/lib/jmeter-ruby/dsl/result_status_action_handler.rb +25 -0
- data/lib/jmeter-ruby/dsl/runtime_controller.rb +25 -0
- data/lib/jmeter-ruby/dsl/save_responses_to_a_file.rb +29 -0
- data/lib/jmeter-ruby/dsl/setup_thread_group.rb +36 -0
- data/lib/jmeter-ruby/dsl/simple_config_element.rb +23 -0
- data/lib/jmeter-ruby/dsl/simple_controller.rb +23 -0
- data/lib/jmeter-ruby/dsl/simple_data_writer.rb +55 -0
- data/lib/jmeter-ruby/dsl/smime_assertion.rb +35 -0
- data/lib/jmeter-ruby/dsl/smtp_sampler.rb +51 -0
- data/lib/jmeter-ruby/dsl/soapxmlrpc_request.rb +33 -0
- data/lib/jmeter-ruby/dsl/spline_visualizer.rb +55 -0
- data/lib/jmeter-ruby/dsl/summary_report.rb +55 -0
- data/lib/jmeter-ruby/dsl/switch_controller.rb +25 -0
- data/lib/jmeter-ruby/dsl/synchronizing_timer.rb +26 -0
- data/lib/jmeter-ruby/dsl/tcp_sampler.rb +33 -0
- data/lib/jmeter-ruby/dsl/tcp_sampler_config.rb +31 -0
- data/lib/jmeter-ruby/dsl/test_action.rb +27 -0
- data/lib/jmeter-ruby/dsl/test_fragment.rb +23 -0
- data/lib/jmeter-ruby/dsl/test_plan.rb +31 -0
- data/lib/jmeter-ruby/dsl/thread_group.rb +37 -0
- data/lib/jmeter-ruby/dsl/throughput_controller.rb +32 -0
- data/lib/jmeter-ruby/dsl/transaction_controller.rb +26 -0
- data/lib/jmeter-ruby/dsl/uniform_random_timer.rb +26 -0
- data/lib/jmeter-ruby/dsl/user_defined_variables.rb +33 -0
- data/lib/jmeter-ruby/dsl/user_parameters.rb +30 -0
- data/lib/jmeter-ruby/dsl/view_results_in_table.rb +55 -0
- data/lib/jmeter-ruby/dsl/view_results_tree.rb +55 -0
- data/lib/jmeter-ruby/dsl/while_controller.rb +25 -0
- data/lib/jmeter-ruby/dsl/xml_assertion.rb +23 -0
- data/lib/jmeter-ruby/dsl/xml_schema_assertion.rb +25 -0
- data/lib/jmeter-ruby/dsl/xpath_assertion.rb +31 -0
- data/lib/jmeter-ruby/dsl/xpath_extractor.rb +31 -0
- data/lib/jmeter-ruby/dsl.rb +102 -0
- data/lib/jmeter-ruby/extend/assertions/response_assertion.rb +36 -0
- data/lib/jmeter-ruby/extend/config_elements/header_manager.rb +13 -0
- data/lib/jmeter-ruby/extend/config_elements/http_cache_manager.rb +12 -0
- data/lib/jmeter-ruby/extend/config_elements/http_cookie_manager.rb +36 -0
- data/lib/jmeter-ruby/extend/config_elements/http_request_defaults.rb +39 -0
- data/lib/jmeter-ruby/extend/config_elements/user_defined_variables.rb +13 -0
- data/lib/jmeter-ruby/extend/config_elements/user_parameters.rb +31 -0
- data/lib/jmeter-ruby/extend/controllers/foreach_controller.rb +27 -0
- data/lib/jmeter-ruby/extend/controllers/loop_controller.rb +11 -0
- data/lib/jmeter-ruby/extend/controllers/module_controller.rb +23 -0
- data/lib/jmeter-ruby/extend/controllers/throughput_controller.rb +15 -0
- data/lib/jmeter-ruby/extend/controllers/transaction_controller.rb +14 -0
- data/lib/jmeter-ruby/extend/misc/aliases.rb +21 -0
- data/lib/jmeter-ruby/extend/misc/exists.rb +13 -0
- data/lib/jmeter-ruby/extend/misc/rsync.rb +24 -0
- data/lib/jmeter-ruby/extend/misc/uuid.rb +12 -0
- data/lib/jmeter-ruby/extend/misc/with_helpers.rb +27 -0
- data/lib/jmeter-ruby/extend/plugins/jmeter_plugins.rb +120 -0
- data/lib/jmeter-ruby/extend/processors/extract.rb +28 -0
- data/lib/jmeter-ruby/extend/processors/regular_expression_extractor.rb +25 -0
- data/lib/jmeter-ruby/extend/samplers/http_request.rb +58 -0
- data/lib/jmeter-ruby/extend/samplers/jms_pointtopoint.rb +26 -0
- data/lib/jmeter-ruby/extend/samplers/soapxmlrpc_request.rb +9 -0
- data/lib/jmeter-ruby/extend/threads/setup_thread_group.rb +18 -0
- data/lib/jmeter-ruby/extend/threads/thread_group.rb +19 -0
- data/lib/jmeter-ruby/extend/timers/constant_throughput_timer.rb +11 -0
- data/lib/jmeter-ruby/extend/timers/random_timer.rb +14 -0
- data/lib/jmeter-ruby/helpers/fallback_content_proxy.rb +54 -0
- data/lib/jmeter-ruby/helpers/helper.rb +75 -0
- data/lib/jmeter-ruby/helpers/logger-colors.rb +48 -0
- data/lib/jmeter-ruby/helpers/parser.rb +135 -0
- data/lib/jmeter-ruby/helpers/strip-heredoc.rb +5 -0
- data/lib/jmeter-ruby/helpers/user-agents.rb +27 -0
- data/lib/jmeter-ruby/idl.rb +70 -0
- data/lib/jmeter-ruby/idl.xml +1488 -0
- data/lib/jmeter-ruby/plugins/active_threads_over_time.rb +57 -0
- data/lib/jmeter-ruby/plugins/composite_graph.rb +71 -0
- data/lib/jmeter-ruby/plugins/console_status_logger.rb +15 -0
- data/lib/jmeter-ruby/plugins/dummy_sampler.rb +26 -0
- data/lib/jmeter-ruby/plugins/jmx_collector.rb +73 -0
- data/lib/jmeter-ruby/plugins/json_path_assertion.rb +19 -0
- data/lib/jmeter-ruby/plugins/json_path_extractor.rb +20 -0
- data/lib/jmeter-ruby/plugins/latencies_over_time.rb +49 -0
- data/lib/jmeter-ruby/plugins/loadosophia_uploader.rb +63 -0
- data/lib/jmeter-ruby/plugins/perfmon_collector.rb +80 -0
- data/lib/jmeter-ruby/plugins/redis_data_set.rb +39 -0
- data/lib/jmeter-ruby/plugins/response_codes_per_second.rb +49 -0
- data/lib/jmeter-ruby/plugins/response_times_distribution.rb +49 -0
- data/lib/jmeter-ruby/plugins/response_times_over_time.rb +50 -0
- data/lib/jmeter-ruby/plugins/response_times_percentiles.rb +51 -0
- data/lib/jmeter-ruby/plugins/stepping_thread_group.rb +30 -0
- data/lib/jmeter-ruby/plugins/transactions_per_second.rb +50 -0
- data/lib/jmeter-ruby/plugins/ultimate_thread_group.rb +23 -0
- data/lib/jmeter-ruby/plugins/variable_throughput_timer.rb +27 -0
- data/lib/jmeter-ruby/version.rb +12 -0
- data/lib/jmeter-ruby.rb +27 -0
- data/mise.toml +2 -0
- data/script/release +162 -0
- data/spec/constant_throughput_timer_spec.rb +20 -0
- data/spec/csv_data_set_config_spec.rb +33 -0
- data/spec/header_manager_spec.rb +37 -0
- data/spec/http_cache_manager_spec.rb +29 -0
- data/spec/http_cookie_manager_spec.rb +169 -0
- data/spec/http_request_defaults_spec.rb +57 -0
- data/spec/http_request_spec.rb +305 -0
- data/spec/jmeter_plugins_spec.rb +245 -0
- data/spec/json_extractor_spec.rb +19 -0
- data/spec/json_path_assertion_spec.rb +28 -0
- data/spec/logic_controller_spec.rb +148 -0
- data/spec/loop_controller_spec.rb +19 -0
- data/spec/module_controller_spec.rb +56 -0
- data/spec/regular_expression_extractor_spec.rb +63 -0
- data/spec/response_assertion_spec.rb +69 -0
- data/spec/setup_thread_group_spec.rb +31 -0
- data/spec/spec_helper.rb +19 -0
- data/spec/thread_group_spec.rb +57 -0
- data/spec/throughput_controller_spec.rb +24 -0
- data/spec/transaction_controller_spec.rb +30 -0
- data/spec/user_defined_variables_spec.rb +22 -0
- data/spec/user_parameters_spec.rb +45 -0
- data/spec/with_helpers_spec.rb +57 -0
- data/spec/xpath_extractor_spec.rb +15 -0
- metadata +360 -0
@@ -0,0 +1,235 @@
|
|
1
|
+
# JmeterRuby::DSL methods
|
2
|
+
- Test Plan
|
3
|
+
`test_plan`
|
4
|
+
- Counter
|
5
|
+
`counter`
|
6
|
+
- CSV Data Set Config
|
7
|
+
`csv_data_set_config`
|
8
|
+
- FTP Request Defaults
|
9
|
+
`ftp_request_defaults`
|
10
|
+
- HTTP Authorization Manager
|
11
|
+
`http_authorization_manager`
|
12
|
+
- HTTP Cache Manager
|
13
|
+
`http_cache_manager`
|
14
|
+
- HTTP Cookie Manager
|
15
|
+
`http_cookie_manager`
|
16
|
+
- HTTP Header Manager
|
17
|
+
`http_header_manager`
|
18
|
+
- HTTP Request Defaults
|
19
|
+
`http_request_defaults`
|
20
|
+
- Java Request Defaults
|
21
|
+
`java_request_defaults`
|
22
|
+
- JDBC Connection Configuration
|
23
|
+
`jdbc_connection_configuration`
|
24
|
+
- Keystore Configuration
|
25
|
+
`keystore_configuration`
|
26
|
+
- LDAP Extended Request Defaults
|
27
|
+
`ldap_extended_request_defaults`
|
28
|
+
- LDAP Request Defaults
|
29
|
+
`ldap_request_defaults`
|
30
|
+
- Login Config Element
|
31
|
+
`login_config_element`
|
32
|
+
- Random Variable
|
33
|
+
`random_variable`
|
34
|
+
- Simple Config Element
|
35
|
+
`simple_config_element`
|
36
|
+
- TCP Sampler Config
|
37
|
+
`tcp_sampler_config`
|
38
|
+
- User Defined Variables
|
39
|
+
`user_defined_variables`
|
40
|
+
- Test Fragment
|
41
|
+
`test_fragment`
|
42
|
+
- Thread Group
|
43
|
+
`thread_group`
|
44
|
+
- ForEach Controller
|
45
|
+
`foreach_controller`
|
46
|
+
- If Controller
|
47
|
+
`if_controller`
|
48
|
+
- Include Controller
|
49
|
+
`include_controller`
|
50
|
+
- Loop Controller
|
51
|
+
`loop_controller`
|
52
|
+
- Module Controller
|
53
|
+
`module_controller`
|
54
|
+
- Once Only Controller
|
55
|
+
`once_only_controller`
|
56
|
+
- Random Controller
|
57
|
+
`random_controller`
|
58
|
+
- Random Order Controller
|
59
|
+
`random_order_controller`
|
60
|
+
- Recording Controller
|
61
|
+
`recording_controller`
|
62
|
+
- Runtime Controller
|
63
|
+
`runtime_controller`
|
64
|
+
- Simple Controller
|
65
|
+
`simple_controller`
|
66
|
+
- Switch Controller
|
67
|
+
`switch_controller`
|
68
|
+
- Throughput Controller
|
69
|
+
`throughput_controller`
|
70
|
+
- Transaction Controller
|
71
|
+
`transaction_controller`
|
72
|
+
- While Controller
|
73
|
+
`while_controller`
|
74
|
+
- BeanShell Timer
|
75
|
+
`beanshell_timer`
|
76
|
+
- BSF Timer
|
77
|
+
`bsf_timer`
|
78
|
+
- Constant Throughput Timer
|
79
|
+
`constant_throughput_timer`
|
80
|
+
- Constant Timer
|
81
|
+
`constant_timer`
|
82
|
+
- Gaussian Random Timer
|
83
|
+
`gaussian_random_timer`
|
84
|
+
- JSR223 Timer
|
85
|
+
`jsr223_timer`
|
86
|
+
- Poisson Random Timer
|
87
|
+
`poisson_random_timer`
|
88
|
+
- Synchronizing Timer
|
89
|
+
`synchronizing_timer`
|
90
|
+
- Uniform Random Timer
|
91
|
+
`uniform_random_timer`
|
92
|
+
- BeanShell PreProcessor
|
93
|
+
`beanshell_preprocessor`
|
94
|
+
- BSF PreProcessor
|
95
|
+
`bsf_preprocessor`
|
96
|
+
- HTML Link Parser
|
97
|
+
`html_link_parser`
|
98
|
+
- HTML Parameter Mask
|
99
|
+
`html_parameter_mask`
|
100
|
+
- HTTP URL Re-writing Modifier
|
101
|
+
`http_url_rewriting_modifier`
|
102
|
+
- JDBC PreProcessor
|
103
|
+
`jdbc_preprocessor`
|
104
|
+
- JSR223 PreProcessor
|
105
|
+
`jsr223_preprocessor`
|
106
|
+
- RegEx User Parameters
|
107
|
+
`regex_user_parameters`
|
108
|
+
- User Parameters
|
109
|
+
`user_parameters`
|
110
|
+
- Access Log Sampler
|
111
|
+
`access_log_sampler`
|
112
|
+
- AJP/1.3 Sampler
|
113
|
+
`ajp13_sampler`
|
114
|
+
- BeanShell Sampler
|
115
|
+
`beanshell_sampler`
|
116
|
+
- BSF Sampler
|
117
|
+
`bsf_sampler`
|
118
|
+
- Debug Sampler
|
119
|
+
`debug_sampler`
|
120
|
+
- FTP Request
|
121
|
+
`ftp_request`
|
122
|
+
- HTTP Request
|
123
|
+
`http_request`
|
124
|
+
- Java Request
|
125
|
+
`java_request`
|
126
|
+
- JDBC Request
|
127
|
+
`jdbc_request`
|
128
|
+
- JMS Point-to-Point
|
129
|
+
`jms_pointtopoint`
|
130
|
+
- JMS Publisher
|
131
|
+
`jms_publisher`
|
132
|
+
- JMS Subscriber
|
133
|
+
`jms_subscriber`
|
134
|
+
- JSR223 Sampler
|
135
|
+
`jsr223_sampler`
|
136
|
+
- JUnit Request
|
137
|
+
`junit_request`
|
138
|
+
- LDAP Extended Request
|
139
|
+
`ldap_extended_request`
|
140
|
+
- LDAP Request
|
141
|
+
`ldap_request`
|
142
|
+
- Mail Reader Sampler
|
143
|
+
`mail_reader_sampler`
|
144
|
+
- OS Process Sampler
|
145
|
+
`os_process_sampler`
|
146
|
+
- SMTP Sampler
|
147
|
+
`smtp_sampler`
|
148
|
+
- SOAP/XML-RPC Request
|
149
|
+
`soapxmlrpc_request`
|
150
|
+
- TCP Sampler
|
151
|
+
`tcp_sampler`
|
152
|
+
- Test Action
|
153
|
+
`test_action`
|
154
|
+
- BeanShell PostProcessor
|
155
|
+
`beanshell_postprocessor`
|
156
|
+
- BSF PostProcessor
|
157
|
+
`bsf_postprocessor`
|
158
|
+
- CSS/JQuery Extractor
|
159
|
+
`cssjquery_extractor`
|
160
|
+
- Debug PostProcessor
|
161
|
+
`debug_postprocessor`
|
162
|
+
- JDBC PostProcessor
|
163
|
+
`jdbc_postprocessor`
|
164
|
+
- JSON Path PostProcessor
|
165
|
+
`json_path_postprocessor`
|
166
|
+
- JSR223 PostProcessor
|
167
|
+
`jsr223_postprocessor`
|
168
|
+
- Regular Expression Extractor
|
169
|
+
`regular_expression_extractor`
|
170
|
+
- Result Status Action Handler
|
171
|
+
`result_status_action_handler`
|
172
|
+
- XPath Extractor
|
173
|
+
`xpath_extractor`
|
174
|
+
- BeanShell Assertion
|
175
|
+
`beanshell_assertion`
|
176
|
+
- BSF Assertion
|
177
|
+
`bsf_assertion`
|
178
|
+
- Compare Assertion
|
179
|
+
`compare_assertion`
|
180
|
+
- Duration Assertion
|
181
|
+
`duration_assertion`
|
182
|
+
- HTML Assertion
|
183
|
+
`html_assertion`
|
184
|
+
- JSR223 Assertion
|
185
|
+
`jsr223_assertion`
|
186
|
+
- MD5Hex Assertion
|
187
|
+
`md5hex_assertion`
|
188
|
+
- Response Assertion
|
189
|
+
`response_assertion`
|
190
|
+
- SMIME Assertion
|
191
|
+
`smime_assertion`
|
192
|
+
- XML Assertion
|
193
|
+
`xml_assertion`
|
194
|
+
- XML Schema Assertion
|
195
|
+
`xml_schema_assertion`
|
196
|
+
- XPath Assertion
|
197
|
+
`xpath_assertion`
|
198
|
+
- Aggregate Graph
|
199
|
+
`aggregate_graph`
|
200
|
+
- Aggregate Report
|
201
|
+
`aggregate_report`
|
202
|
+
- Assertion Results
|
203
|
+
`assertion_results`
|
204
|
+
- BeanShell Listener
|
205
|
+
`beanshell_listener`
|
206
|
+
- BSF Listener
|
207
|
+
`bsf_listener`
|
208
|
+
- Comparison Assertion Visualizer
|
209
|
+
`comparison_assertion_visualizer`
|
210
|
+
- Distribution Graph (alpha)
|
211
|
+
`distribution_graphalpha`
|
212
|
+
- Generate Summary Results
|
213
|
+
`generate_summary_results`
|
214
|
+
- Graph Results
|
215
|
+
`graph_results`
|
216
|
+
- JSR223 Listener
|
217
|
+
`jsr223_listener`
|
218
|
+
- Mailer Visualizer
|
219
|
+
`mailer_visualizer`
|
220
|
+
- Monitor Results
|
221
|
+
`monitor_results`
|
222
|
+
- Response Time Graph
|
223
|
+
`response_time_graph`
|
224
|
+
- Save Responses to a file
|
225
|
+
`save_responses_to_a_file`
|
226
|
+
- Simple Data Writer
|
227
|
+
`simple_data_writer`
|
228
|
+
- Spline Visualizer
|
229
|
+
`spline_visualizer`
|
230
|
+
- Summary Report
|
231
|
+
`summary_report`
|
232
|
+
- View Results in Table
|
233
|
+
`view_results_in_table`
|
234
|
+
- View Results Tree
|
235
|
+
`view_results_tree`
|
@@ -0,0 +1,32 @@
|
|
1
|
+
module JmeterRuby
|
2
|
+
class DSL
|
3
|
+
def access_log_sampler(params={}, &block)
|
4
|
+
node = JmeterRuby::AccessLogSampler.new(params)
|
5
|
+
attach_node(node, &block)
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
9
|
+
class AccessLogSampler
|
10
|
+
attr_accessor :doc
|
11
|
+
include Helper
|
12
|
+
|
13
|
+
def initialize(params={})
|
14
|
+
testname = params.kind_of?(Array) ? 'AccessLogSampler' : (params[:name] || 'AccessLogSampler')
|
15
|
+
@doc = Nokogiri::XML(<<-EOS.strip_heredoc)
|
16
|
+
<AccessLogSampler guiclass="TestBeanGUI" testclass="AccessLogSampler" testname="#{testname}" enabled="true">
|
17
|
+
<elementProp name="HTTPsampler.Arguments" elementType="Arguments">
|
18
|
+
<collectionProp name="Arguments.arguments"/>
|
19
|
+
</elementProp>
|
20
|
+
<stringProp name="domain"/>
|
21
|
+
<boolProp name="imageParsing">false</boolProp>
|
22
|
+
<stringProp name="logFile"/>
|
23
|
+
<stringProp name="parserClassName">org.apache.jmeter.protocol.http.util.accesslog.TCLogParser</stringProp>
|
24
|
+
<stringProp name="portString"/>
|
25
|
+
</AccessLogSampler>)
|
26
|
+
EOS
|
27
|
+
update params
|
28
|
+
update_at_xpath params if params.is_a?(Hash) && params[:update_at_xpath]
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
end
|
@@ -0,0 +1,55 @@
|
|
1
|
+
module JmeterRuby
|
2
|
+
class DSL
|
3
|
+
def aggregate_graph(params={}, &block)
|
4
|
+
node = JmeterRuby::AggregateGraph.new(params)
|
5
|
+
attach_node(node, &block)
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
9
|
+
class AggregateGraph
|
10
|
+
attr_accessor :doc
|
11
|
+
include Helper
|
12
|
+
|
13
|
+
def initialize(params={})
|
14
|
+
testname = params.kind_of?(Array) ? 'AggregateGraph' : (params[:name] || 'AggregateGraph')
|
15
|
+
@doc = Nokogiri::XML(<<-EOS.strip_heredoc)
|
16
|
+
<ResultCollector guiclass="StatGraphVisualizer" testclass="ResultCollector" testname="#{testname}" enabled="true">
|
17
|
+
<boolProp name="ResultCollector.error_logging">false</boolProp>
|
18
|
+
<objProp>
|
19
|
+
<name>saveConfig</name>
|
20
|
+
<value class="SampleSaveConfiguration">
|
21
|
+
<time>true</time>
|
22
|
+
<latency>true</latency>
|
23
|
+
<timestamp>true</timestamp>
|
24
|
+
<success>true</success>
|
25
|
+
<label>true</label>
|
26
|
+
<code>true</code>
|
27
|
+
<message>false</message>
|
28
|
+
<threadName>true</threadName>
|
29
|
+
<dataType>false</dataType>
|
30
|
+
<encoding>false</encoding>
|
31
|
+
<assertions>false</assertions>
|
32
|
+
<subresults>false</subresults>
|
33
|
+
<responseData>false</responseData>
|
34
|
+
<samplerData>false</samplerData>
|
35
|
+
<xml>false</xml>
|
36
|
+
<fieldNames>false</fieldNames>
|
37
|
+
<responseHeaders>false</responseHeaders>
|
38
|
+
<requestHeaders>false</requestHeaders>
|
39
|
+
<responseDataOnError>false</responseDataOnError>
|
40
|
+
<saveAssertionResultsFailureMessage>false</saveAssertionResultsFailureMessage>
|
41
|
+
<assertionsResultsToSave>0</assertionsResultsToSave>
|
42
|
+
<bytes>true</bytes>
|
43
|
+
<threadCounts>true</threadCounts>
|
44
|
+
<sampleCount>true</sampleCount>
|
45
|
+
</value>
|
46
|
+
</objProp>
|
47
|
+
<stringProp name="filename"/>
|
48
|
+
</ResultCollector>)
|
49
|
+
EOS
|
50
|
+
update params
|
51
|
+
update_at_xpath params if params.is_a?(Hash) && params[:update_at_xpath]
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
55
|
+
end
|
@@ -0,0 +1,55 @@
|
|
1
|
+
module JmeterRuby
|
2
|
+
class DSL
|
3
|
+
def aggregate_report(params={}, &block)
|
4
|
+
node = JmeterRuby::AggregateReport.new(params)
|
5
|
+
attach_node(node, &block)
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
9
|
+
class AggregateReport
|
10
|
+
attr_accessor :doc
|
11
|
+
include Helper
|
12
|
+
|
13
|
+
def initialize(params={})
|
14
|
+
testname = params.kind_of?(Array) ? 'AggregateReport' : (params[:name] || 'AggregateReport')
|
15
|
+
@doc = Nokogiri::XML(<<-EOS.strip_heredoc)
|
16
|
+
<ResultCollector guiclass="StatVisualizer" testclass="ResultCollector" testname="#{testname}" enabled="true">
|
17
|
+
<boolProp name="ResultCollector.error_logging">false</boolProp>
|
18
|
+
<objProp>
|
19
|
+
<name>saveConfig</name>
|
20
|
+
<value class="SampleSaveConfiguration">
|
21
|
+
<time>true</time>
|
22
|
+
<latency>true</latency>
|
23
|
+
<timestamp>true</timestamp>
|
24
|
+
<success>true</success>
|
25
|
+
<label>true</label>
|
26
|
+
<code>true</code>
|
27
|
+
<message>false</message>
|
28
|
+
<threadName>true</threadName>
|
29
|
+
<dataType>false</dataType>
|
30
|
+
<encoding>false</encoding>
|
31
|
+
<assertions>false</assertions>
|
32
|
+
<subresults>false</subresults>
|
33
|
+
<responseData>false</responseData>
|
34
|
+
<samplerData>false</samplerData>
|
35
|
+
<xml>false</xml>
|
36
|
+
<fieldNames>false</fieldNames>
|
37
|
+
<responseHeaders>false</responseHeaders>
|
38
|
+
<requestHeaders>false</requestHeaders>
|
39
|
+
<responseDataOnError>false</responseDataOnError>
|
40
|
+
<saveAssertionResultsFailureMessage>false</saveAssertionResultsFailureMessage>
|
41
|
+
<assertionsResultsToSave>0</assertionsResultsToSave>
|
42
|
+
<bytes>true</bytes>
|
43
|
+
<threadCounts>true</threadCounts>
|
44
|
+
<sampleCount>true</sampleCount>
|
45
|
+
</value>
|
46
|
+
</objProp>
|
47
|
+
<stringProp name="filename"/>
|
48
|
+
</ResultCollector>)
|
49
|
+
EOS
|
50
|
+
update params
|
51
|
+
update_at_xpath params if params.is_a?(Hash) && params[:update_at_xpath]
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
55
|
+
end
|
@@ -0,0 +1,41 @@
|
|
1
|
+
module JmeterRuby
|
2
|
+
class DSL
|
3
|
+
def ajp13_sampler(params={}, &block)
|
4
|
+
node = JmeterRuby::Ajp13Sampler.new(params)
|
5
|
+
attach_node(node, &block)
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
9
|
+
class Ajp13Sampler
|
10
|
+
attr_accessor :doc
|
11
|
+
include Helper
|
12
|
+
|
13
|
+
def initialize(params={})
|
14
|
+
testname = params.kind_of?(Array) ? 'Ajp13Sampler' : (params[:name] || 'Ajp13Sampler')
|
15
|
+
@doc = Nokogiri::XML(<<-EOS.strip_heredoc)
|
16
|
+
<AjpSampler guiclass="AjpSamplerGui" testclass="AjpSampler" testname="#{testname}" enabled="true">
|
17
|
+
<elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="#{testname}" enabled="true">
|
18
|
+
<collectionProp name="Arguments.arguments"/>
|
19
|
+
</elementProp>
|
20
|
+
<stringProp name="HTTPSampler.domain"/>
|
21
|
+
<stringProp name="HTTPSampler.port"/>
|
22
|
+
<stringProp name="HTTPSampler.connect_timeout"/>
|
23
|
+
<stringProp name="HTTPSampler.response_timeout"/>
|
24
|
+
<stringProp name="HTTPSampler.protocol"/>
|
25
|
+
<stringProp name="HTTPSampler.contentEncoding"/>
|
26
|
+
<stringProp name="HTTPSampler.path"/>
|
27
|
+
<stringProp name="HTTPSampler.method">GET</stringProp>
|
28
|
+
<boolProp name="HTTPSampler.follow_redirects">true</boolProp>
|
29
|
+
<boolProp name="HTTPSampler.auto_redirects">false</boolProp>
|
30
|
+
<boolProp name="HTTPSampler.use_keepalive">true</boolProp>
|
31
|
+
<boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
|
32
|
+
<boolProp name="HTTPSampler.monitor">false</boolProp>
|
33
|
+
<stringProp name="HTTPSampler.embedded_url_re"/>
|
34
|
+
</AjpSampler>)
|
35
|
+
EOS
|
36
|
+
update params
|
37
|
+
update_at_xpath params if params.is_a?(Hash) && params[:update_at_xpath]
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
end
|
@@ -0,0 +1,55 @@
|
|
1
|
+
module JmeterRuby
|
2
|
+
class DSL
|
3
|
+
def assertion_results(params={}, &block)
|
4
|
+
node = JmeterRuby::AssertionResults.new(params)
|
5
|
+
attach_node(node, &block)
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
9
|
+
class AssertionResults
|
10
|
+
attr_accessor :doc
|
11
|
+
include Helper
|
12
|
+
|
13
|
+
def initialize(params={})
|
14
|
+
testname = params.kind_of?(Array) ? 'AssertionResults' : (params[:name] || 'AssertionResults')
|
15
|
+
@doc = Nokogiri::XML(<<-EOS.strip_heredoc)
|
16
|
+
<ResultCollector guiclass="AssertionVisualizer" testclass="ResultCollector" testname="#{testname}" enabled="true">
|
17
|
+
<boolProp name="ResultCollector.error_logging">false</boolProp>
|
18
|
+
<objProp>
|
19
|
+
<name>saveConfig</name>
|
20
|
+
<value class="SampleSaveConfiguration">
|
21
|
+
<time>true</time>
|
22
|
+
<latency>true</latency>
|
23
|
+
<timestamp>true</timestamp>
|
24
|
+
<success>true</success>
|
25
|
+
<label>true</label>
|
26
|
+
<code>true</code>
|
27
|
+
<message>false</message>
|
28
|
+
<threadName>true</threadName>
|
29
|
+
<dataType>false</dataType>
|
30
|
+
<encoding>false</encoding>
|
31
|
+
<assertions>false</assertions>
|
32
|
+
<subresults>false</subresults>
|
33
|
+
<responseData>false</responseData>
|
34
|
+
<samplerData>false</samplerData>
|
35
|
+
<xml>false</xml>
|
36
|
+
<fieldNames>false</fieldNames>
|
37
|
+
<responseHeaders>false</responseHeaders>
|
38
|
+
<requestHeaders>false</requestHeaders>
|
39
|
+
<responseDataOnError>false</responseDataOnError>
|
40
|
+
<saveAssertionResultsFailureMessage>false</saveAssertionResultsFailureMessage>
|
41
|
+
<assertionsResultsToSave>0</assertionsResultsToSave>
|
42
|
+
<bytes>true</bytes>
|
43
|
+
<threadCounts>true</threadCounts>
|
44
|
+
<sampleCount>true</sampleCount>
|
45
|
+
</value>
|
46
|
+
</objProp>
|
47
|
+
<stringProp name="filename"/>
|
48
|
+
</ResultCollector>)
|
49
|
+
EOS
|
50
|
+
update params
|
51
|
+
update_at_xpath params if params.is_a?(Hash) && params[:update_at_xpath]
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
55
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
module JmeterRuby
|
2
|
+
class DSL
|
3
|
+
def beanshell_assertion(params={}, &block)
|
4
|
+
node = JmeterRuby::BeanshellAssertion.new(params)
|
5
|
+
attach_node(node, &block)
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
9
|
+
class BeanshellAssertion
|
10
|
+
attr_accessor :doc
|
11
|
+
include Helper
|
12
|
+
|
13
|
+
def initialize(params={})
|
14
|
+
testname = params.kind_of?(Array) ? 'BeanshellAssertion' : (params[:name] || 'BeanshellAssertion')
|
15
|
+
@doc = Nokogiri::XML(<<-EOS.strip_heredoc)
|
16
|
+
<BeanShellAssertion guiclass="BeanShellAssertionGui" testclass="BeanShellAssertion" testname="#{testname}" enabled="true">
|
17
|
+
<stringProp name="BeanShellAssertion.query"/>
|
18
|
+
<stringProp name="BeanShellAssertion.filename"/>
|
19
|
+
<stringProp name="BeanShellAssertion.parameters"/>
|
20
|
+
<boolProp name="BeanShellAssertion.resetInterpreter">false</boolProp>
|
21
|
+
</BeanShellAssertion>)
|
22
|
+
EOS
|
23
|
+
update params
|
24
|
+
update_at_xpath params if params.is_a?(Hash) && params[:update_at_xpath]
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
module JmeterRuby
|
2
|
+
class DSL
|
3
|
+
def beanshell_listener(params={}, &block)
|
4
|
+
node = JmeterRuby::BeanshellListener.new(params)
|
5
|
+
attach_node(node, &block)
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
9
|
+
class BeanshellListener
|
10
|
+
attr_accessor :doc
|
11
|
+
include Helper
|
12
|
+
|
13
|
+
def initialize(params={})
|
14
|
+
testname = params.kind_of?(Array) ? 'BeanshellListener' : (params[:name] || 'BeanshellListener')
|
15
|
+
@doc = Nokogiri::XML(<<-EOS.strip_heredoc)
|
16
|
+
<BeanShellListener guiclass="TestBeanGUI" testclass="BeanShellListener" testname="#{testname}" enabled="true">
|
17
|
+
<stringProp name="filename"/>
|
18
|
+
<stringProp name="parameters"/>
|
19
|
+
<boolProp name="resetInterpreter">false</boolProp>
|
20
|
+
<stringProp name="script"/>
|
21
|
+
</BeanShellListener>)
|
22
|
+
EOS
|
23
|
+
update params
|
24
|
+
update_at_xpath params if params.is_a?(Hash) && params[:update_at_xpath]
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
module JmeterRuby
|
2
|
+
class DSL
|
3
|
+
def beanshell_postprocessor(params={}, &block)
|
4
|
+
node = JmeterRuby::BeanshellPostprocessor.new(params)
|
5
|
+
attach_node(node, &block)
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
9
|
+
class BeanshellPostprocessor
|
10
|
+
attr_accessor :doc
|
11
|
+
include Helper
|
12
|
+
|
13
|
+
def initialize(params={})
|
14
|
+
testname = params.kind_of?(Array) ? 'BeanshellPostprocessor' : (params[:name] || 'BeanshellPostprocessor')
|
15
|
+
@doc = Nokogiri::XML(<<-EOS.strip_heredoc)
|
16
|
+
<BeanShellPostProcessor guiclass="TestBeanGUI" testclass="BeanShellPostProcessor" testname="#{testname}" enabled="true">
|
17
|
+
<stringProp name="filename"/>
|
18
|
+
<stringProp name="parameters"/>
|
19
|
+
<boolProp name="resetInterpreter">false</boolProp>
|
20
|
+
<stringProp name="script"/>
|
21
|
+
</BeanShellPostProcessor>)
|
22
|
+
EOS
|
23
|
+
update params
|
24
|
+
update_at_xpath params if params.is_a?(Hash) && params[:update_at_xpath]
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
module JmeterRuby
|
2
|
+
class DSL
|
3
|
+
def beanshell_preprocessor(params={}, &block)
|
4
|
+
node = JmeterRuby::BeanshellPreprocessor.new(params)
|
5
|
+
attach_node(node, &block)
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
9
|
+
class BeanshellPreprocessor
|
10
|
+
attr_accessor :doc
|
11
|
+
include Helper
|
12
|
+
|
13
|
+
def initialize(params={})
|
14
|
+
testname = params.kind_of?(Array) ? 'BeanshellPreprocessor' : (params[:name] || 'BeanshellPreprocessor')
|
15
|
+
@doc = Nokogiri::XML(<<-EOS.strip_heredoc)
|
16
|
+
<BeanShellPreProcessor guiclass="TestBeanGUI" testclass="BeanShellPreProcessor" testname="#{testname}" enabled="true">
|
17
|
+
<stringProp name="filename"/>
|
18
|
+
<stringProp name="parameters"/>
|
19
|
+
<boolProp name="resetInterpreter">false</boolProp>
|
20
|
+
<stringProp name="script"/>
|
21
|
+
</BeanShellPreProcessor>)
|
22
|
+
EOS
|
23
|
+
update params
|
24
|
+
update_at_xpath params if params.is_a?(Hash) && params[:update_at_xpath]
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
module JmeterRuby
|
2
|
+
class DSL
|
3
|
+
def beanshell_sampler(params={}, &block)
|
4
|
+
node = JmeterRuby::BeanshellSampler.new(params)
|
5
|
+
attach_node(node, &block)
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
9
|
+
class BeanshellSampler
|
10
|
+
attr_accessor :doc
|
11
|
+
include Helper
|
12
|
+
|
13
|
+
def initialize(params={})
|
14
|
+
testname = params.kind_of?(Array) ? 'BeanshellSampler' : (params[:name] || 'BeanshellSampler')
|
15
|
+
@doc = Nokogiri::XML(<<-EOS.strip_heredoc)
|
16
|
+
<BeanShellSampler guiclass="BeanShellSamplerGui" testclass="BeanShellSampler" testname="#{testname}" enabled="true">
|
17
|
+
<stringProp name="BeanShellSampler.query"/>
|
18
|
+
<stringProp name="BeanShellSampler.filename"/>
|
19
|
+
<stringProp name="BeanShellSampler.parameters"/>
|
20
|
+
<boolProp name="BeanShellSampler.resetInterpreter">false</boolProp>
|
21
|
+
</BeanShellSampler>)
|
22
|
+
EOS
|
23
|
+
update params
|
24
|
+
update_at_xpath params if params.is_a?(Hash) && params[:update_at_xpath]
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
module JmeterRuby
|
2
|
+
class DSL
|
3
|
+
def beanshell_timer(params={}, &block)
|
4
|
+
node = JmeterRuby::BeanshellTimer.new(params)
|
5
|
+
attach_node(node, &block)
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
9
|
+
class BeanshellTimer
|
10
|
+
attr_accessor :doc
|
11
|
+
include Helper
|
12
|
+
|
13
|
+
def initialize(params={})
|
14
|
+
testname = params.kind_of?(Array) ? 'BeanshellTimer' : (params[:name] || 'BeanshellTimer')
|
15
|
+
@doc = Nokogiri::XML(<<-EOS.strip_heredoc)
|
16
|
+
<BeanShellTimer guiclass="TestBeanGUI" testclass="BeanShellTimer" testname="#{testname}" enabled="true">
|
17
|
+
<stringProp name="filename"/>
|
18
|
+
<stringProp name="parameters"/>
|
19
|
+
<boolProp name="resetInterpreter">false</boolProp>
|
20
|
+
<stringProp name="script"/>
|
21
|
+
</BeanShellTimer>)
|
22
|
+
EOS
|
23
|
+
update params
|
24
|
+
update_at_xpath params if params.is_a?(Hash) && params[:update_at_xpath]
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
module JmeterRuby
|
2
|
+
class DSL
|
3
|
+
def bsf_assertion(params={}, &block)
|
4
|
+
node = JmeterRuby::BsfAssertion.new(params)
|
5
|
+
attach_node(node, &block)
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
9
|
+
class BsfAssertion
|
10
|
+
attr_accessor :doc
|
11
|
+
include Helper
|
12
|
+
|
13
|
+
def initialize(params={})
|
14
|
+
testname = params.kind_of?(Array) ? 'BsfAssertion' : (params[:name] || 'BsfAssertion')
|
15
|
+
@doc = Nokogiri::XML(<<-EOS.strip_heredoc)
|
16
|
+
<BSFAssertion guiclass="TestBeanGUI" testclass="BSFAssertion" testname="#{testname}" enabled="true">
|
17
|
+
<stringProp name="filename"/>
|
18
|
+
<stringProp name="parameters"/>
|
19
|
+
<stringProp name="script"/>
|
20
|
+
<stringProp name="scriptLanguage"/>
|
21
|
+
</BSFAssertion>)
|
22
|
+
EOS
|
23
|
+
update params
|
24
|
+
update_at_xpath params if params.is_a?(Hash) && params[:update_at_xpath]
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|