diff options
Diffstat (limited to 'testsuites/stability/src/main/resources')
-rw-r--r-- | testsuites/stability/src/main/resources/testplans/policy_api_stability.jmx | 109 |
1 files changed, 105 insertions, 4 deletions
diff --git a/testsuites/stability/src/main/resources/testplans/policy_api_stability.jmx b/testsuites/stability/src/main/resources/testplans/policy_api_stability.jmx index cf2d4727..58692b72 100644 --- a/testsuites/stability/src/main/resources/testplans/policy_api_stability.jmx +++ b/testsuites/stability/src/main/resources/testplans/policy_api_stability.jmx @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8"?> -<jmeterTestPlan version="1.2" properties="5.0" jmeter="5.3"> +<jmeterTestPlan version="1.2" properties="5.0" jmeter="5.4.1"> <hashTree> <TestPlan guiclass="TestPlanGui" testclass="TestPlan" testname="Policy API Performance" enabled="true"> <stringProp name="TestPlan.comments"></stringProp> @@ -10,12 +10,12 @@ <collectionProp name="Arguments.arguments"> <elementProp name="API_HOST" elementType="Argument"> <stringProp name="Argument.name">API_HOST</stringProp> - <stringProp name="Argument.value">10.2.0.48</stringProp> + <stringProp name="Argument.value">10.12.6.14</stringProp> <stringProp name="Argument.metadata">=</stringProp> </elementProp> <elementProp name="API_PORT" elementType="Argument"> <stringProp name="Argument.name">API_PORT</stringProp> - <stringProp name="Argument.value">30785</stringProp> + <stringProp name="Argument.value">32191</stringProp> <stringProp name="Argument.metadata">=</stringProp> </elementProp> </collectionProp> @@ -26,7 +26,7 @@ <AuthManager guiclass="AuthPanel" testclass="AuthManager" testname="HTTP Authorization Manager" enabled="true"> <collectionProp name="AuthManager.auth_list"> <elementProp name="" elementType="Authorization"> - <stringProp name="Authorization.url">https://${API_HOST}:${API_PORT}/policy/api/v1</stringProp> + <stringProp name="Authorization.url">https://${API_HOST}:${API_PORT}/</stringProp> <stringProp name="Authorization.username">healthcheck</stringProp> <stringProp name="Authorization.password">zb!XztG34</stringProp> <stringProp name="Authorization.domain"></stringProp> @@ -64,6 +64,56 @@ <boolProp name="ThreadGroup.same_user_on_next_iteration">true</boolProp> </SetupThreadGroup> <hashTree> + <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get Healthcheck" enabled="true"> + <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true"> + <collectionProp name="Arguments.arguments"/> + </elementProp> + <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp> + <stringProp name="HTTPSampler.port">${API_PORT}</stringProp> + <stringProp name="HTTPSampler.protocol">https</stringProp> + <stringProp name="HTTPSampler.contentEncoding"></stringProp> + <stringProp name="HTTPSampler.path">/policy/api/v1/healthcheck</stringProp> + <stringProp name="HTTPSampler.method">GET</stringProp> + <boolProp name="HTTPSampler.follow_redirects">true</boolProp> + <boolProp name="HTTPSampler.auto_redirects">false</boolProp> + <boolProp name="HTTPSampler.use_keepalive">true</boolProp> + <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp> + <stringProp name="HTTPSampler.embedded_url_re"></stringProp> + <stringProp name="HTTPSampler.connect_timeout"></stringProp> + <stringProp name="HTTPSampler.response_timeout"></stringProp> + </HTTPSamplerProxy> + <hashTree> + <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true"> + <collectionProp name="Asserion.test_strings"> + <stringProp name="49586">200</stringProp> + </collectionProp> + <stringProp name="Assertion.custom_message"></stringProp> + <stringProp name="Assertion.test_field">Assertion.response_code</stringProp> + <boolProp name="Assertion.assume_success">false</boolProp> + <intProp name="Assertion.test_type">1</intProp> + </ResponseAssertion> + <hashTree/> + <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true"> + <stringProp name="cacheKey">true</stringProp> + <stringProp name="filename"></stringProp> + <stringProp name="parameters"></stringProp> + <stringProp name="script">import groovy.json.JsonSlurper; + +def res = []; +if (prev.getResponseCode() == '200') { + def jsonSlurper = new JsonSlurper(); + res = jsonSlurper.parseText(prev.getResponseDataAsString()); + + assert res instanceof Map; + assert res.code == 200; + assert res.name == "Policy API"; + assert res.healthy==true; + assert res.message=="alive"; +}</stringProp> + <stringProp name="scriptLanguage">groovy</stringProp> + </JSR223Assertion> + <hashTree/> + </hashTree> <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get Statistics" enabled="true"> <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true"> <collectionProp name="Arguments.arguments"/> @@ -174,6 +224,57 @@ if (prev.getResponseCode() == '200') { <boolProp name="ThreadGroup.same_user_on_next_iteration">true</boolProp> </ThreadGroup> <hashTree> + <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get Policy Metrics" enabled="true"> + <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true"> + <collectionProp name="Arguments.arguments"/> + </elementProp> + <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp> + <stringProp name="HTTPSampler.port">${API_PORT}</stringProp> + <stringProp name="HTTPSampler.protocol">https</stringProp> + <stringProp name="HTTPSampler.contentEncoding"></stringProp> + <stringProp name="HTTPSampler.path">/metrics</stringProp> + <stringProp name="HTTPSampler.method">GET</stringProp> + <boolProp name="HTTPSampler.follow_redirects">true</boolProp> + <boolProp name="HTTPSampler.auto_redirects">false</boolProp> + <boolProp name="HTTPSampler.use_keepalive">true</boolProp> + <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp> + <stringProp name="HTTPSampler.embedded_url_re"></stringProp> + <stringProp name="HTTPSampler.connect_timeout"></stringProp> + <stringProp name="HTTPSampler.response_timeout"></stringProp> + </HTTPSamplerProxy> + <hashTree> + <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true"> + <collectionProp name="Asserion.test_strings"> + <stringProp name="49586">200</stringProp> + </collectionProp> + <stringProp name="Assertion.custom_message"></stringProp> + <stringProp name="Assertion.test_field">Assertion.response_code</stringProp> + <boolProp name="Assertion.assume_success">false</boolProp> + <intProp name="Assertion.test_type">1</intProp> + </ResponseAssertion> + <hashTree/> + <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true"> + <stringProp name="scriptLanguage">groovy</stringProp> + <stringProp name="parameters"></stringProp> + <stringProp name="filename"></stringProp> + <stringProp name="cacheKey">true</stringProp> + <stringProp name="script">def res = []; +if (prev.getResponseCode() == '200') { + res = prev.getResponseDataAsString(); + + assert res.contains("jvm_buffer_pool_used_bytes") + assert res.contains("jvm_buffer_pool_capacity_bytes") + assert res.contains("jvm_buffer_pool_used_buffers") + assert res.contains("jvm_memory_bytes_used") + assert res.contains("jvm_memory_bytes_committed") + assert res.contains("jvm_memory_pool_bytes_used") + assert res.contains("jvm_memory_pool_bytes_committed") + assert res.contains("jvm_memory_pool_allocated_bytes_created") + assert res.contains("jvm_memory_pool_allocated_bytes_total") +}</stringProp> + </JSR223Assertion> + <hashTree/> + </hashTree> <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Create Policy Type Monitoring" enabled="true"> <boolProp name="HTTPSampler.postBodyRaw">true</boolProp> <elementProp name="HTTPsampler.Arguments" elementType="Arguments"> |