mirror of
https://github.com/suitenumerique/drive.git
synced 2026-10-21 15:31:29 +02:00
Item creation now rejects a file without a reservation, so both session scenarios would fail at the upload step. The size is read from the file the scenario is about to send, keeping the generated traffic realistic.
736 lines
47 KiB
XML
736 lines
47 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<jmeterTestPlan version="1.2" properties="5.0" jmeter="5.6.3">
|
|
<hashTree>
|
|
<TestPlan guiclass="TestPlanGui" testclass="TestPlan" testname="Drive basic user session">
|
|
<boolProp name="TestPlan.functional_mode">false</boolProp>
|
|
<boolProp name="TestPlan.serialize_threadgroups">false</boolProp>
|
|
<boolProp name="TestPlan.tearDown_on_shutdown">true</boolProp>
|
|
<elementProp name="TestPlan.user_defined_variables" elementType="Arguments" guiclass="ArgumentsPanel" testclass="Arguments" testname="User Defined Variables">
|
|
<collectionProp name="Arguments.arguments"/>
|
|
</elementProp>
|
|
</TestPlan>
|
|
<hashTree>
|
|
<Arguments guiclass="ArgumentsPanel" testclass="Arguments" testname="Variables">
|
|
<collectionProp name="Arguments.arguments">
|
|
<elementProp name="BASE_URL" elementType="Argument">
|
|
<stringProp name="Argument.name">BASE_URL</stringProp>
|
|
<stringProp name="Argument.value">${__P(BASE_URL,http://localhost:8071)}</stringProp>
|
|
<stringProp name="Argument.metadata">=</stringProp>
|
|
</elementProp>
|
|
</collectionProp>
|
|
</Arguments>
|
|
<hashTree/>
|
|
<ThreadGroup guiclass="ThreadGroupGui" testclass="ThreadGroup" testname="Users">
|
|
<stringProp name="ThreadGroup.on_sample_error">continue</stringProp>
|
|
<elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Session Loop">
|
|
<boolProp name="LoopController.continue_forever">false</boolProp>
|
|
<stringProp name="LoopController.loops">${__P(LOOPS,-1)}</stringProp>
|
|
</elementProp>
|
|
<stringProp name="ThreadGroup.num_threads">${__P(USERS,5)}</stringProp>
|
|
<stringProp name="ThreadGroup.ramp_time">${__P(RAMP_UP,5)}</stringProp>
|
|
<boolProp name="ThreadGroup.scheduler">true</boolProp>
|
|
<stringProp name="ThreadGroup.duration">${__P(DURATION,120)}</stringProp>
|
|
<stringProp name="ThreadGroup.delay">0</stringProp>
|
|
<boolProp name="ThreadGroup.same_user_on_next_iteration">true</boolProp>
|
|
</ThreadGroup>
|
|
<hashTree>
|
|
<CookieManager guiclass="CookiePanel" testclass="CookieManager" testname="Cookies">
|
|
<collectionProp name="CookieManager.cookies"/>
|
|
<boolProp name="CookieManager.clearEachIteration">false</boolProp>
|
|
<boolProp name="CookieManager.controlledByThreadGroup">false</boolProp>
|
|
</CookieManager>
|
|
<hashTree/>
|
|
<HeaderManager guiclass="HeaderPanel" testclass="HeaderManager" testname="API Headers">
|
|
<collectionProp name="HeaderManager.headers">
|
|
<elementProp name="" elementType="Header">
|
|
<stringProp name="Header.name">Content-Type</stringProp>
|
|
<stringProp name="Header.value">application/json</stringProp>
|
|
</elementProp>
|
|
<elementProp name="" elementType="Header">
|
|
<stringProp name="Header.name">Accept</stringProp>
|
|
<stringProp name="Header.value">application/json</stringProp>
|
|
</elementProp>
|
|
<elementProp name="" elementType="Header">
|
|
<stringProp name="Header.name">X-CSRFToken</stringProp>
|
|
<stringProp name="Header.value">${csrftoken}</stringProp>
|
|
</elementProp>
|
|
</collectionProp>
|
|
</HeaderManager>
|
|
<hashTree/>
|
|
<OnceOnlyController guiclass="OnceOnlyControllerGui" testclass="OnceOnlyController" testname="Login (once per user)"/>
|
|
<hashTree>
|
|
<HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="00 login">
|
|
<boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
|
|
<elementProp name="HTTPsampler.Arguments" elementType="Arguments">
|
|
<collectionProp name="Arguments.arguments">
|
|
<elementProp name="" elementType="HTTPArgument">
|
|
<boolProp name="HTTPArgument.always_encode">false</boolProp>
|
|
<stringProp name="Argument.value">{"email": "${login_email}"}</stringProp>
|
|
<stringProp name="Argument.metadata">=</stringProp>
|
|
</elementProp>
|
|
</collectionProp>
|
|
</elementProp>
|
|
<stringProp name="HTTPSampler.path">${BASE_URL}/api/v1.0/e2e/user-auth/</stringProp>
|
|
<stringProp name="HTTPSampler.method">POST</stringProp>
|
|
<boolProp name="HTTPSampler.follow_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.auto_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.use_keepalive">true</boolProp>
|
|
<stringProp name="HTTPSampler.connect_timeout">${__P(CONNECT_TIMEOUT_MS,10000)}</stringProp>
|
|
<stringProp name="HTTPSampler.response_timeout">${__P(RESPONSE_TIMEOUT_MS,60000)}</stringProp>
|
|
</HTTPSamplerProxy>
|
|
<hashTree>
|
|
<JSR223PreProcessor guiclass="TestBeanGUI" testclass="JSR223PreProcessor" testname="resolve login email">
|
|
<stringProp name="scriptLanguage">groovy</stringProp>
|
|
<stringProp name="filename">scripts/prep_login_email.groovy</stringProp>
|
|
<stringProp name="cacheKey">true</stringProp>
|
|
<stringProp name="parameters"></stringProp>
|
|
<stringProp name="script"></stringProp>
|
|
</JSR223PreProcessor>
|
|
<hashTree/>
|
|
<RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="extract csrftoken">
|
|
<stringProp name="RegexExtractor.useHeaders">true</stringProp>
|
|
<stringProp name="RegexExtractor.refname">csrftoken</stringProp>
|
|
<stringProp name="RegexExtractor.regex">csrftoken=([^;]+)</stringProp>
|
|
<stringProp name="RegexExtractor.template">$1$</stringProp>
|
|
<stringProp name="RegexExtractor.default">NO_CSRF</stringProp>
|
|
<stringProp name="RegexExtractor.match_number">1</stringProp>
|
|
</RegexExtractor>
|
|
<hashTree/>
|
|
<ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="expect 200">
|
|
<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">8</intProp>
|
|
</ResponseAssertion>
|
|
<hashTree/>
|
|
</hashTree>
|
|
<TransactionController guiclass="TransactionControllerGui" testclass="TransactionController" testname="00 app bootstrap">
|
|
<boolProp name="TransactionController.includeTimers">false</boolProp>
|
|
<boolProp name="TransactionController.parent">true</boolProp>
|
|
</TransactionController>
|
|
<hashTree>
|
|
<HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="GET config">
|
|
<elementProp name="HTTPsampler.Arguments" elementType="Arguments">
|
|
<collectionProp name="Arguments.arguments"/>
|
|
</elementProp>
|
|
<stringProp name="HTTPSampler.path">${BASE_URL}/api/v1.0/config/</stringProp>
|
|
<stringProp name="HTTPSampler.method">GET</stringProp>
|
|
<boolProp name="HTTPSampler.follow_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.auto_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.use_keepalive">true</boolProp>
|
|
<stringProp name="HTTPSampler.connect_timeout">${__P(CONNECT_TIMEOUT_MS,10000)}</stringProp>
|
|
<stringProp name="HTTPSampler.response_timeout">${__P(RESPONSE_TIMEOUT_MS,60000)}</stringProp>
|
|
</HTTPSamplerProxy>
|
|
<hashTree>
|
|
<ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="expect 200">
|
|
<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">8</intProp>
|
|
</ResponseAssertion>
|
|
<hashTree/>
|
|
</hashTree>
|
|
<HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="GET users me">
|
|
<elementProp name="HTTPsampler.Arguments" elementType="Arguments">
|
|
<collectionProp name="Arguments.arguments"/>
|
|
</elementProp>
|
|
<stringProp name="HTTPSampler.path">${BASE_URL}/api/v1.0/users/me/</stringProp>
|
|
<stringProp name="HTTPSampler.method">GET</stringProp>
|
|
<boolProp name="HTTPSampler.follow_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.auto_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.use_keepalive">true</boolProp>
|
|
<stringProp name="HTTPSampler.connect_timeout">${__P(CONNECT_TIMEOUT_MS,10000)}</stringProp>
|
|
<stringProp name="HTTPSampler.response_timeout">${__P(RESPONSE_TIMEOUT_MS,60000)}</stringProp>
|
|
</HTTPSamplerProxy>
|
|
<hashTree>
|
|
<ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="expect 200">
|
|
<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">8</intProp>
|
|
</ResponseAssertion>
|
|
<hashTree/>
|
|
</hashTree>
|
|
<HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="GET entitlements">
|
|
<elementProp name="HTTPsampler.Arguments" elementType="Arguments">
|
|
<collectionProp name="Arguments.arguments"/>
|
|
</elementProp>
|
|
<stringProp name="HTTPSampler.path">${BASE_URL}/api/v1.0/entitlements/</stringProp>
|
|
<stringProp name="HTTPSampler.method">GET</stringProp>
|
|
<boolProp name="HTTPSampler.follow_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.auto_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.use_keepalive">true</boolProp>
|
|
<stringProp name="HTTPSampler.connect_timeout">${__P(CONNECT_TIMEOUT_MS,10000)}</stringProp>
|
|
<stringProp name="HTTPSampler.response_timeout">${__P(RESPONSE_TIMEOUT_MS,60000)}</stringProp>
|
|
</HTTPSamplerProxy>
|
|
<hashTree>
|
|
<ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="expect 200">
|
|
<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">8</intProp>
|
|
</ResponseAssertion>
|
|
<hashTree/>
|
|
</hashTree>
|
|
</hashTree>
|
|
</hashTree>
|
|
<TransactionController guiclass="TransactionControllerGui" testclass="TransactionController" testname="01 list root items">
|
|
<boolProp name="TransactionController.includeTimers">false</boolProp>
|
|
<boolProp name="TransactionController.parent">true</boolProp>
|
|
</TransactionController>
|
|
<hashTree>
|
|
<HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="GET items">
|
|
<elementProp name="HTTPsampler.Arguments" elementType="Arguments">
|
|
<collectionProp name="Arguments.arguments"/>
|
|
</elementProp>
|
|
<stringProp name="HTTPSampler.path">${BASE_URL}/api/v1.0/items/?page_size=50</stringProp>
|
|
<stringProp name="HTTPSampler.method">GET</stringProp>
|
|
<boolProp name="HTTPSampler.follow_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.auto_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.use_keepalive">true</boolProp>
|
|
<stringProp name="HTTPSampler.connect_timeout">${__P(CONNECT_TIMEOUT_MS,10000)}</stringProp>
|
|
<stringProp name="HTTPSampler.response_timeout">${__P(RESPONSE_TIMEOUT_MS,60000)}</stringProp>
|
|
</HTTPSamplerProxy>
|
|
<hashTree>
|
|
<UniformRandomTimer guiclass="UniformRandomTimerGui" testclass="UniformRandomTimer" testname="think">
|
|
<stringProp name="ConstantTimer.delay">${__P(THINK_BASE_MS,2000)}</stringProp>
|
|
<stringProp name="RandomTimer.range">${__P(THINK_RANGE_MS,3000)}</stringProp>
|
|
</UniformRandomTimer>
|
|
<hashTree/>
|
|
<ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="expect 200">
|
|
<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">8</intProp>
|
|
</ResponseAssertion>
|
|
<hashTree/>
|
|
</hashTree>
|
|
</hashTree>
|
|
<TransactionController guiclass="TransactionControllerGui" testclass="TransactionController" testname="02 view recents">
|
|
<boolProp name="TransactionController.includeTimers">false</boolProp>
|
|
<boolProp name="TransactionController.parent">true</boolProp>
|
|
</TransactionController>
|
|
<hashTree>
|
|
<HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="GET recents">
|
|
<elementProp name="HTTPsampler.Arguments" elementType="Arguments">
|
|
<collectionProp name="Arguments.arguments"/>
|
|
</elementProp>
|
|
<stringProp name="HTTPSampler.path">${BASE_URL}/api/v1.0/items/recents/?page_size=200</stringProp>
|
|
<stringProp name="HTTPSampler.method">GET</stringProp>
|
|
<boolProp name="HTTPSampler.follow_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.auto_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.use_keepalive">true</boolProp>
|
|
<stringProp name="HTTPSampler.connect_timeout">${__P(CONNECT_TIMEOUT_MS,10000)}</stringProp>
|
|
<stringProp name="HTTPSampler.response_timeout">${__P(RESPONSE_TIMEOUT_MS,60000)}</stringProp>
|
|
</HTTPSamplerProxy>
|
|
<hashTree>
|
|
<UniformRandomTimer guiclass="UniformRandomTimerGui" testclass="UniformRandomTimer" testname="think">
|
|
<stringProp name="ConstantTimer.delay">${__P(THINK_BASE_MS,2000)}</stringProp>
|
|
<stringProp name="RandomTimer.range">${__P(THINK_RANGE_MS,3000)}</stringProp>
|
|
</UniformRandomTimer>
|
|
<hashTree/>
|
|
<ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="expect 200">
|
|
<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">8</intProp>
|
|
</ResponseAssertion>
|
|
<hashTree/>
|
|
</hashTree>
|
|
</hashTree>
|
|
<TransactionController guiclass="TransactionControllerGui" testclass="TransactionController" testname="03 view shared with me">
|
|
<boolProp name="TransactionController.includeTimers">false</boolProp>
|
|
<boolProp name="TransactionController.parent">true</boolProp>
|
|
</TransactionController>
|
|
<hashTree>
|
|
<HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="GET shared with me">
|
|
<elementProp name="HTTPsampler.Arguments" elementType="Arguments">
|
|
<collectionProp name="Arguments.arguments"/>
|
|
</elementProp>
|
|
<stringProp name="HTTPSampler.path">${BASE_URL}/api/v1.0/items/?page=1&page_size=100&is_creator_me=false</stringProp>
|
|
<stringProp name="HTTPSampler.method">GET</stringProp>
|
|
<boolProp name="HTTPSampler.follow_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.auto_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.use_keepalive">true</boolProp>
|
|
<stringProp name="HTTPSampler.connect_timeout">${__P(CONNECT_TIMEOUT_MS,10000)}</stringProp>
|
|
<stringProp name="HTTPSampler.response_timeout">${__P(RESPONSE_TIMEOUT_MS,60000)}</stringProp>
|
|
</HTTPSamplerProxy>
|
|
<hashTree>
|
|
<UniformRandomTimer guiclass="UniformRandomTimerGui" testclass="UniformRandomTimer" testname="think">
|
|
<stringProp name="ConstantTimer.delay">${__P(THINK_BASE_MS,2000)}</stringProp>
|
|
<stringProp name="RandomTimer.range">${__P(THINK_RANGE_MS,3000)}</stringProp>
|
|
</UniformRandomTimer>
|
|
<hashTree/>
|
|
<ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="expect 200">
|
|
<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">8</intProp>
|
|
</ResponseAssertion>
|
|
<hashTree/>
|
|
</hashTree>
|
|
</hashTree>
|
|
<TransactionController guiclass="TransactionControllerGui" testclass="TransactionController" testname="04 create folder">
|
|
<boolProp name="TransactionController.includeTimers">false</boolProp>
|
|
<boolProp name="TransactionController.parent">true</boolProp>
|
|
</TransactionController>
|
|
<hashTree>
|
|
<HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="POST items (folder)">
|
|
<boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
|
|
<elementProp name="HTTPsampler.Arguments" elementType="Arguments">
|
|
<collectionProp name="Arguments.arguments">
|
|
<elementProp name="" elementType="HTTPArgument">
|
|
<boolProp name="HTTPArgument.always_encode">false</boolProp>
|
|
<stringProp name="Argument.value">{"title": "load-${__threadNum}-${__jm__Users__idx}", "type": "folder"}</stringProp>
|
|
<stringProp name="Argument.metadata">=</stringProp>
|
|
</elementProp>
|
|
</collectionProp>
|
|
</elementProp>
|
|
<stringProp name="HTTPSampler.path">${BASE_URL}/api/v1.0/items/</stringProp>
|
|
<stringProp name="HTTPSampler.method">POST</stringProp>
|
|
<boolProp name="HTTPSampler.follow_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.auto_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.use_keepalive">true</boolProp>
|
|
<stringProp name="HTTPSampler.connect_timeout">${__P(CONNECT_TIMEOUT_MS,10000)}</stringProp>
|
|
<stringProp name="HTTPSampler.response_timeout">${__P(RESPONSE_TIMEOUT_MS,60000)}</stringProp>
|
|
</HTTPSamplerProxy>
|
|
<hashTree>
|
|
<UniformRandomTimer guiclass="UniformRandomTimerGui" testclass="UniformRandomTimer" testname="think">
|
|
<stringProp name="ConstantTimer.delay">${__P(THINK_BASE_MS,2000)}</stringProp>
|
|
<stringProp name="RandomTimer.range">${__P(THINK_RANGE_MS,3000)}</stringProp>
|
|
</UniformRandomTimer>
|
|
<hashTree/>
|
|
<JSONPostProcessor guiclass="JSONPostProcessorGui" testclass="JSONPostProcessor" testname="extract folder_id">
|
|
<stringProp name="JSONPostProcessor.referenceNames">folder_id</stringProp>
|
|
<stringProp name="JSONPostProcessor.jsonPathExprs">$.id</stringProp>
|
|
<stringProp name="JSONPostProcessor.match_numbers">1</stringProp>
|
|
<stringProp name="JSONPostProcessor.defaultValues">FOLDER_ID_NOT_FOUND</stringProp>
|
|
</JSONPostProcessor>
|
|
<hashTree/>
|
|
<ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="expect 201">
|
|
<collectionProp name="Asserion.test_strings">
|
|
<stringProp name="49587">201</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">8</intProp>
|
|
</ResponseAssertion>
|
|
<hashTree/>
|
|
</hashTree>
|
|
</hashTree>
|
|
<TransactionController guiclass="TransactionControllerGui" testclass="TransactionController" testname="05 open folder">
|
|
<boolProp name="TransactionController.includeTimers">false</boolProp>
|
|
<boolProp name="TransactionController.parent">true</boolProp>
|
|
</TransactionController>
|
|
<hashTree>
|
|
<HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="GET folder children">
|
|
<elementProp name="HTTPsampler.Arguments" elementType="Arguments">
|
|
<collectionProp name="Arguments.arguments"/>
|
|
</elementProp>
|
|
<stringProp name="HTTPSampler.path">${BASE_URL}/api/v1.0/items/${folder_id}/children/</stringProp>
|
|
<stringProp name="HTTPSampler.method">GET</stringProp>
|
|
<boolProp name="HTTPSampler.follow_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.auto_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.use_keepalive">true</boolProp>
|
|
<stringProp name="HTTPSampler.connect_timeout">${__P(CONNECT_TIMEOUT_MS,10000)}</stringProp>
|
|
<stringProp name="HTTPSampler.response_timeout">${__P(RESPONSE_TIMEOUT_MS,60000)}</stringProp>
|
|
</HTTPSamplerProxy>
|
|
<hashTree>
|
|
<UniformRandomTimer guiclass="UniformRandomTimerGui" testclass="UniformRandomTimer" testname="think">
|
|
<stringProp name="ConstantTimer.delay">${__P(THINK_BASE_MS,2000)}</stringProp>
|
|
<stringProp name="RandomTimer.range">${__P(THINK_RANGE_MS,3000)}</stringProp>
|
|
</UniformRandomTimer>
|
|
<hashTree/>
|
|
<ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="expect 200">
|
|
<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">8</intProp>
|
|
</ResponseAssertion>
|
|
<hashTree/>
|
|
</hashTree>
|
|
</hashTree>
|
|
<TransactionController guiclass="TransactionControllerGui" testclass="TransactionController" testname="06 upload entry">
|
|
<boolProp name="TransactionController.includeTimers">false</boolProp>
|
|
<boolProp name="TransactionController.parent">true</boolProp>
|
|
</TransactionController>
|
|
<hashTree>
|
|
<JSR223Sampler guiclass="TestBeanGUI" testclass="JSR223Sampler" testname="plan upload (pick random entry)">
|
|
<stringProp name="scriptLanguage">groovy</stringProp>
|
|
<stringProp name="filename">scripts/plan_upload.groovy</stringProp>
|
|
<stringProp name="cacheKey">true</stringProp>
|
|
<stringProp name="parameters"></stringProp>
|
|
<stringProp name="script"></stringProp>
|
|
</JSR223Sampler>
|
|
<hashTree>
|
|
<UniformRandomTimer guiclass="UniformRandomTimerGui" testclass="UniformRandomTimer" testname="think">
|
|
<stringProp name="ConstantTimer.delay">${__P(THINK_BASE_MS,2000)}</stringProp>
|
|
<stringProp name="RandomTimer.range">${__P(THINK_RANGE_MS,3000)}</stringProp>
|
|
</UniformRandomTimer>
|
|
<hashTree/>
|
|
</hashTree>
|
|
<ForeachController guiclass="ForeachControlPanel" testclass="ForeachController" testname="for each subfolder">
|
|
<stringProp name="ForeachController.inputVal">updir</stringProp>
|
|
<stringProp name="ForeachController.returnVal">current_updir</stringProp>
|
|
<boolProp name="ForeachController.useSeparator">true</boolProp>
|
|
</ForeachController>
|
|
<hashTree>
|
|
<HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="POST children (subfolder)">
|
|
<boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
|
|
<elementProp name="HTTPsampler.Arguments" elementType="Arguments">
|
|
<collectionProp name="Arguments.arguments">
|
|
<elementProp name="" elementType="HTTPArgument">
|
|
<boolProp name="HTTPArgument.always_encode">false</boolProp>
|
|
<stringProp name="Argument.value">{"title": "${cdir_title}", "type": "folder"}</stringProp>
|
|
<stringProp name="Argument.metadata">=</stringProp>
|
|
</elementProp>
|
|
</collectionProp>
|
|
</elementProp>
|
|
<stringProp name="HTTPSampler.path">${BASE_URL}/api/v1.0/items/${cdir_parent}/children/</stringProp>
|
|
<stringProp name="HTTPSampler.method">POST</stringProp>
|
|
<stringProp name="HTTPSampler.contentEncoding">UTF-8</stringProp>
|
|
<boolProp name="HTTPSampler.follow_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.auto_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.use_keepalive">true</boolProp>
|
|
<stringProp name="HTTPSampler.connect_timeout">${__P(CONNECT_TIMEOUT_MS,10000)}</stringProp>
|
|
<stringProp name="HTTPSampler.response_timeout">${__P(RESPONSE_TIMEOUT_MS,60000)}</stringProp>
|
|
</HTTPSamplerProxy>
|
|
<hashTree>
|
|
<JSR223PreProcessor guiclass="TestBeanGUI" testclass="JSR223PreProcessor" testname="resolve parent + title">
|
|
<stringProp name="scriptLanguage">groovy</stringProp>
|
|
<stringProp name="filename">scripts/prep_subfolder.groovy</stringProp>
|
|
<stringProp name="cacheKey">true</stringProp>
|
|
<stringProp name="parameters"></stringProp>
|
|
<stringProp name="script"></stringProp>
|
|
</JSR223PreProcessor>
|
|
<hashTree/>
|
|
<JSONPostProcessor guiclass="JSONPostProcessorGui" testclass="JSONPostProcessor" testname="extract cdir_id">
|
|
<stringProp name="JSONPostProcessor.referenceNames">cdir_id</stringProp>
|
|
<stringProp name="JSONPostProcessor.jsonPathExprs">$.id</stringProp>
|
|
<stringProp name="JSONPostProcessor.match_numbers">1</stringProp>
|
|
<stringProp name="JSONPostProcessor.defaultValues">SUBFOLDER_ID_NOT_FOUND</stringProp>
|
|
</JSONPostProcessor>
|
|
<hashTree/>
|
|
<JSR223PostProcessor guiclass="TestBeanGUI" testclass="JSR223PostProcessor" testname="store subfolder id">
|
|
<stringProp name="scriptLanguage">groovy</stringProp>
|
|
<stringProp name="filename">scripts/store_subfolder_id.groovy</stringProp>
|
|
<stringProp name="cacheKey">true</stringProp>
|
|
<stringProp name="parameters"></stringProp>
|
|
<stringProp name="script"></stringProp>
|
|
</JSR223PostProcessor>
|
|
<hashTree/>
|
|
<ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="expect 201">
|
|
<collectionProp name="Asserion.test_strings">
|
|
<stringProp name="49587">201</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">8</intProp>
|
|
</ResponseAssertion>
|
|
<hashTree/>
|
|
</hashTree>
|
|
</hashTree>
|
|
<ForeachController guiclass="ForeachControlPanel" testclass="ForeachController" testname="for each file">
|
|
<stringProp name="ForeachController.inputVal">upfile</stringProp>
|
|
<stringProp name="ForeachController.returnVal">current_upfile</stringProp>
|
|
<boolProp name="ForeachController.useSeparator">true</boolProp>
|
|
</ForeachController>
|
|
<hashTree>
|
|
<HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="POST children (file item)">
|
|
<boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
|
|
<elementProp name="HTTPsampler.Arguments" elementType="Arguments">
|
|
<collectionProp name="Arguments.arguments">
|
|
<elementProp name="" elementType="HTTPArgument">
|
|
<boolProp name="HTTPArgument.always_encode">false</boolProp>
|
|
<stringProp name="Argument.value">{"filename": "${cf_name}", "type": "file", "size": ${cf_size}}</stringProp>
|
|
<stringProp name="Argument.metadata">=</stringProp>
|
|
</elementProp>
|
|
</collectionProp>
|
|
</elementProp>
|
|
<stringProp name="HTTPSampler.path">${BASE_URL}/api/v1.0/items/${cf_parent}/children/</stringProp>
|
|
<stringProp name="HTTPSampler.method">POST</stringProp>
|
|
<stringProp name="HTTPSampler.contentEncoding">UTF-8</stringProp>
|
|
<boolProp name="HTTPSampler.follow_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.auto_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.use_keepalive">true</boolProp>
|
|
<stringProp name="HTTPSampler.connect_timeout">${__P(CONNECT_TIMEOUT_MS,10000)}</stringProp>
|
|
<stringProp name="HTTPSampler.response_timeout">${__P(RESPONSE_TIMEOUT_MS,60000)}</stringProp>
|
|
</HTTPSamplerProxy>
|
|
<hashTree>
|
|
<JSR223PreProcessor guiclass="TestBeanGUI" testclass="JSR223PreProcessor" testname="resolve file vars">
|
|
<stringProp name="scriptLanguage">groovy</stringProp>
|
|
<stringProp name="filename">scripts/prep_file.groovy</stringProp>
|
|
<stringProp name="cacheKey">true</stringProp>
|
|
<stringProp name="parameters"></stringProp>
|
|
<stringProp name="script"></stringProp>
|
|
</JSR223PreProcessor>
|
|
<hashTree/>
|
|
<JSONPostProcessor guiclass="JSONPostProcessorGui" testclass="JSONPostProcessor" testname="extract cfile_id + policy">
|
|
<stringProp name="JSONPostProcessor.referenceNames">cfile_id;cpolicy_url</stringProp>
|
|
<stringProp name="JSONPostProcessor.jsonPathExprs">$.id;$.policy</stringProp>
|
|
<stringProp name="JSONPostProcessor.match_numbers">1;1</stringProp>
|
|
<stringProp name="JSONPostProcessor.defaultValues">FILE_ID_NOT_FOUND;POLICY_NOT_FOUND</stringProp>
|
|
</JSONPostProcessor>
|
|
<hashTree/>
|
|
<ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="expect 201">
|
|
<collectionProp name="Asserion.test_strings">
|
|
<stringProp name="49587">201</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">8</intProp>
|
|
</ResponseAssertion>
|
|
<hashTree/>
|
|
</hashTree>
|
|
<HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="PUT file to storage">
|
|
<elementProp name="HTTPsampler.Arguments" elementType="Arguments">
|
|
<collectionProp name="Arguments.arguments"/>
|
|
</elementProp>
|
|
<elementProp name="HTTPsampler.Files" elementType="HTTPFileArgs">
|
|
<collectionProp name="HTTPFileArgs.files">
|
|
<elementProp name="${cf_abs}" elementType="HTTPFileArg">
|
|
<stringProp name="File.path">${cf_abs}</stringProp>
|
|
<stringProp name="File.paramname"></stringProp>
|
|
<stringProp name="File.mimetype">${cf_mime}</stringProp>
|
|
</elementProp>
|
|
</collectionProp>
|
|
</elementProp>
|
|
<boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
|
|
<stringProp name="HTTPSampler.path">${cpolicy_url}</stringProp>
|
|
<stringProp name="HTTPSampler.method">PUT</stringProp>
|
|
<boolProp name="HTTPSampler.follow_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.auto_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.use_keepalive">true</boolProp>
|
|
<stringProp name="HTTPSampler.connect_timeout">${__P(CONNECT_TIMEOUT_MS,10000)}</stringProp>
|
|
<stringProp name="HTTPSampler.response_timeout">${__P(RESPONSE_TIMEOUT_MS,60000)}</stringProp>
|
|
</HTTPSamplerProxy>
|
|
<hashTree>
|
|
<HeaderManager guiclass="HeaderPanel" testclass="HeaderManager" testname="Storage Headers">
|
|
<collectionProp name="HeaderManager.headers">
|
|
<elementProp name="" elementType="Header">
|
|
<stringProp name="Header.name">Content-Type</stringProp>
|
|
<stringProp name="Header.value">${cf_mime}</stringProp>
|
|
</elementProp>
|
|
<elementProp name="" elementType="Header">
|
|
<stringProp name="Header.name">X-amz-acl</stringProp>
|
|
<stringProp name="Header.value">${__P(UPLOAD_ACL,private)}</stringProp>
|
|
</elementProp>
|
|
</collectionProp>
|
|
</HeaderManager>
|
|
<hashTree/>
|
|
<ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="expect 200">
|
|
<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">8</intProp>
|
|
</ResponseAssertion>
|
|
<hashTree/>
|
|
</hashTree>
|
|
<HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="POST upload-ended">
|
|
<boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
|
|
<elementProp name="HTTPsampler.Arguments" elementType="Arguments">
|
|
<collectionProp name="Arguments.arguments">
|
|
<elementProp name="" elementType="HTTPArgument">
|
|
<boolProp name="HTTPArgument.always_encode">false</boolProp>
|
|
<stringProp name="Argument.value">{}</stringProp>
|
|
<stringProp name="Argument.metadata">=</stringProp>
|
|
</elementProp>
|
|
</collectionProp>
|
|
</elementProp>
|
|
<stringProp name="HTTPSampler.path">${BASE_URL}/api/v1.0/items/${cfile_id}/upload-ended/</stringProp>
|
|
<stringProp name="HTTPSampler.method">POST</stringProp>
|
|
<boolProp name="HTTPSampler.follow_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.auto_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.use_keepalive">true</boolProp>
|
|
<stringProp name="HTTPSampler.connect_timeout">${__P(CONNECT_TIMEOUT_MS,10000)}</stringProp>
|
|
<stringProp name="HTTPSampler.response_timeout">${__P(RESPONSE_TIMEOUT_MS,60000)}</stringProp>
|
|
</HTTPSamplerProxy>
|
|
<hashTree>
|
|
<ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="expect 200">
|
|
<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">8</intProp>
|
|
</ResponseAssertion>
|
|
<hashTree/>
|
|
</hashTree>
|
|
</hashTree>
|
|
</hashTree>
|
|
<TransactionController guiclass="TransactionControllerGui" testclass="TransactionController" testname="07 browse folder">
|
|
<boolProp name="TransactionController.includeTimers">false</boolProp>
|
|
<boolProp name="TransactionController.parent">true</boolProp>
|
|
</TransactionController>
|
|
<hashTree>
|
|
<HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="GET folder children (with file)">
|
|
<elementProp name="HTTPsampler.Arguments" elementType="Arguments">
|
|
<collectionProp name="Arguments.arguments"/>
|
|
</elementProp>
|
|
<stringProp name="HTTPSampler.path">${BASE_URL}/api/v1.0/items/${folder_id}/children/</stringProp>
|
|
<stringProp name="HTTPSampler.method">GET</stringProp>
|
|
<boolProp name="HTTPSampler.follow_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.auto_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.use_keepalive">true</boolProp>
|
|
<stringProp name="HTTPSampler.connect_timeout">${__P(CONNECT_TIMEOUT_MS,10000)}</stringProp>
|
|
<stringProp name="HTTPSampler.response_timeout">${__P(RESPONSE_TIMEOUT_MS,60000)}</stringProp>
|
|
</HTTPSamplerProxy>
|
|
<hashTree>
|
|
<UniformRandomTimer guiclass="UniformRandomTimerGui" testclass="UniformRandomTimer" testname="think">
|
|
<stringProp name="ConstantTimer.delay">${__P(THINK_BASE_MS,2000)}</stringProp>
|
|
<stringProp name="RandomTimer.range">${__P(THINK_RANGE_MS,3000)}</stringProp>
|
|
</UniformRandomTimer>
|
|
<hashTree/>
|
|
<ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="expect 200">
|
|
<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">8</intProp>
|
|
</ResponseAssertion>
|
|
<hashTree/>
|
|
</hashTree>
|
|
</hashTree>
|
|
<TransactionController guiclass="TransactionControllerGui" testclass="TransactionController" testname="08 move to trash">
|
|
<boolProp name="TransactionController.includeTimers">false</boolProp>
|
|
<boolProp name="TransactionController.parent">true</boolProp>
|
|
</TransactionController>
|
|
<hashTree>
|
|
<HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="DELETE folder">
|
|
<elementProp name="HTTPsampler.Arguments" elementType="Arguments">
|
|
<collectionProp name="Arguments.arguments"/>
|
|
</elementProp>
|
|
<stringProp name="HTTPSampler.path">${BASE_URL}/api/v1.0/items/${folder_id}/</stringProp>
|
|
<stringProp name="HTTPSampler.method">DELETE</stringProp>
|
|
<boolProp name="HTTPSampler.follow_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.auto_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.use_keepalive">true</boolProp>
|
|
<stringProp name="HTTPSampler.connect_timeout">${__P(CONNECT_TIMEOUT_MS,10000)}</stringProp>
|
|
<stringProp name="HTTPSampler.response_timeout">${__P(RESPONSE_TIMEOUT_MS,60000)}</stringProp>
|
|
</HTTPSamplerProxy>
|
|
<hashTree>
|
|
<UniformRandomTimer guiclass="UniformRandomTimerGui" testclass="UniformRandomTimer" testname="think">
|
|
<stringProp name="ConstantTimer.delay">${__P(THINK_BASE_MS,2000)}</stringProp>
|
|
<stringProp name="RandomTimer.range">${__P(THINK_RANGE_MS,3000)}</stringProp>
|
|
</UniformRandomTimer>
|
|
<hashTree/>
|
|
<ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="expect 204">
|
|
<collectionProp name="Asserion.test_strings">
|
|
<stringProp name="49650">204</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">8</intProp>
|
|
</ResponseAssertion>
|
|
<hashTree/>
|
|
</hashTree>
|
|
</hashTree>
|
|
<TransactionController guiclass="TransactionControllerGui" testclass="TransactionController" testname="09 view trash">
|
|
<boolProp name="TransactionController.includeTimers">false</boolProp>
|
|
<boolProp name="TransactionController.parent">true</boolProp>
|
|
</TransactionController>
|
|
<hashTree>
|
|
<HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="GET trashbin">
|
|
<elementProp name="HTTPsampler.Arguments" elementType="Arguments">
|
|
<collectionProp name="Arguments.arguments"/>
|
|
</elementProp>
|
|
<stringProp name="HTTPSampler.path">${BASE_URL}/api/v1.0/items/trashbin/</stringProp>
|
|
<stringProp name="HTTPSampler.method">GET</stringProp>
|
|
<boolProp name="HTTPSampler.follow_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.auto_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.use_keepalive">true</boolProp>
|
|
<stringProp name="HTTPSampler.connect_timeout">${__P(CONNECT_TIMEOUT_MS,10000)}</stringProp>
|
|
<stringProp name="HTTPSampler.response_timeout">${__P(RESPONSE_TIMEOUT_MS,60000)}</stringProp>
|
|
</HTTPSamplerProxy>
|
|
<hashTree>
|
|
<UniformRandomTimer guiclass="UniformRandomTimerGui" testclass="UniformRandomTimer" testname="think">
|
|
<stringProp name="ConstantTimer.delay">${__P(THINK_BASE_MS,2000)}</stringProp>
|
|
<stringProp name="RandomTimer.range">${__P(THINK_RANGE_MS,3000)}</stringProp>
|
|
</UniformRandomTimer>
|
|
<hashTree/>
|
|
<ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="expect 200">
|
|
<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">8</intProp>
|
|
</ResponseAssertion>
|
|
<hashTree/>
|
|
</hashTree>
|
|
</hashTree>
|
|
<TransactionController guiclass="TransactionControllerGui" testclass="TransactionController" testname="10 empty trash">
|
|
<boolProp name="TransactionController.includeTimers">false</boolProp>
|
|
<boolProp name="TransactionController.parent">true</boolProp>
|
|
</TransactionController>
|
|
<hashTree>
|
|
<HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="DELETE folder hard-delete">
|
|
<elementProp name="HTTPsampler.Arguments" elementType="Arguments">
|
|
<collectionProp name="Arguments.arguments"/>
|
|
</elementProp>
|
|
<stringProp name="HTTPSampler.path">${BASE_URL}/api/v1.0/items/${folder_id}/hard-delete/</stringProp>
|
|
<stringProp name="HTTPSampler.method">DELETE</stringProp>
|
|
<boolProp name="HTTPSampler.follow_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.auto_redirects">false</boolProp>
|
|
<boolProp name="HTTPSampler.use_keepalive">true</boolProp>
|
|
<stringProp name="HTTPSampler.connect_timeout">${__P(CONNECT_TIMEOUT_MS,10000)}</stringProp>
|
|
<stringProp name="HTTPSampler.response_timeout">${__P(RESPONSE_TIMEOUT_MS,60000)}</stringProp>
|
|
</HTTPSamplerProxy>
|
|
<hashTree>
|
|
<UniformRandomTimer guiclass="UniformRandomTimerGui" testclass="UniformRandomTimer" testname="think">
|
|
<stringProp name="ConstantTimer.delay">${__P(THINK_BASE_MS,2000)}</stringProp>
|
|
<stringProp name="RandomTimer.range">${__P(THINK_RANGE_MS,3000)}</stringProp>
|
|
</UniformRandomTimer>
|
|
<hashTree/>
|
|
<ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="expect 204">
|
|
<collectionProp name="Asserion.test_strings">
|
|
<stringProp name="49650">204</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">8</intProp>
|
|
</ResponseAssertion>
|
|
<hashTree/>
|
|
</hashTree>
|
|
</hashTree>
|
|
</hashTree>
|
|
</hashTree>
|
|
</hashTree>
|
|
</jmeterTestPlan>
|