MDL-63927 performance: Update the plan to support the new login token
[moodle.git] / admin / tool / generator / testplan.template.jmx
CommitLineData
8520de1e
DM
1<?xml version="1.0" encoding="UTF-8"?>
2<jmeterTestPlan version="1.2" properties="2.4">
3 <hashTree>
4 <TestPlan guiclass="TestPlanGui" testclass="TestPlan" testname="Test Plan" enabled="true">
5 <stringProp name="TestPlan.comments"></stringProp>
6 <boolProp name="TestPlan.functional_mode">false</boolProp>
7 <boolProp name="TestPlan.serialize_threadgroups">true</boolProp>
8 <elementProp name="TestPlan.user_defined_variables" elementType="Arguments" guiclass="ArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
9 <collectionProp name="Arguments.arguments">
10 <elementProp name="runtimestamp" elementType="Argument">
11 <stringProp name="Argument.name">runtimestamp</stringProp>
12 <stringProp name="Argument.value">${__time()}</stringProp>
13 <stringProp name="Argument.metadata">=</stringProp>
14 </elementProp>
9a79e456
DM
15 <elementProp name="moodleversion" elementType="Argument">
16 <stringProp name="Argument.name">moodleversion</stringProp>
17 <stringProp name="Argument.value">{{MOODLEVERSION_PLACEHOLDER}}</stringProp>
18 <stringProp name="Argument.metadata">=</stringProp>
19 </elementProp>
1325d493
DM
20 <elementProp name="size" elementType="Argument">
21 <stringProp name="Argument.name">size</stringProp>
22 <stringProp name="Argument.value">{{SIZE_PLACEHOLDER}}</stringProp>
8520de1e
DM
23 <stringProp name="Argument.metadata">=</stringProp>
24 </elementProp>
25 <elementProp name="host" elementType="Argument">
26 <stringProp name="Argument.name">host</stringProp>
27 <stringProp name="Argument.value">{{HOST_PLACEHOLDER}}</stringProp>
28 <stringProp name="Argument.metadata">=</stringProp>
29 </elementProp>
30 <elementProp name="sitepath" elementType="Argument">
31 <stringProp name="Argument.name">sitepath</stringProp>
32 <stringProp name="Argument.value">{{SITEPATH_PLACEHOLDER}}</stringProp>
33 <stringProp name="Argument.metadata">=</stringProp>
34 </elementProp>
35 <elementProp name="courseid" elementType="Argument">
36 <stringProp name="Argument.name">courseid</stringProp>
37 <stringProp name="Argument.value">{{COURSEID_PLACEHOLDER}}</stringProp>
38 <stringProp name="Argument.metadata">=</stringProp>
39 </elementProp>
40 <elementProp name="pageactivityid" elementType="Argument">
41 <stringProp name="Argument.name">pageactivityid</stringProp>
42 <stringProp name="Argument.value">{{PAGEACTIVITYID_PLACEHOLDER}}</stringProp>
43 <stringProp name="Argument.metadata">=</stringProp>
44 </elementProp>
45 <elementProp name="forumactivityid" elementType="Argument">
46 <stringProp name="Argument.name">forumactivityid</stringProp>
47 <stringProp name="Argument.value">{{FORUMACTIVITYID_PLACEHOLDER}}</stringProp>
48 <stringProp name="Argument.metadata">=</stringProp>
49 </elementProp>
50 <elementProp name="forumdiscussionid" elementType="Argument">
51 <stringProp name="Argument.name">forumdiscussionid</stringProp>
52 <stringProp name="Argument.value">{{FORUMDISCUSSIONID_PLACEHOLDER}}</stringProp>
53 <stringProp name="Argument.metadata">=</stringProp>
54 </elementProp>
55 <elementProp name="forumreplyid" elementType="Argument">
56 <stringProp name="Argument.name">forumreplyid</stringProp>
57 <stringProp name="Argument.value">{{FORUMREPLYID_PLACEHOLDER}}</stringProp>
58 <stringProp name="Argument.metadata">=</stringProp>
59 </elementProp>
8520de1e
DM
60 </collectionProp>
61 </elementProp>
62 <stringProp name="TestPlan.user_define_classpath"></stringProp>
63 </TestPlan>
64 <hashTree>
65 <ConstantThroughputTimer guiclass="TestBeanGUI" testclass="ConstantThroughputTimer" testname="Samples per minute" enabled="true">
66 <stringProp name="calcMode">all active threads (shared)</stringProp>
1325d493 67 <stringProp name="throughput">${__property(throughput,throughput,120.0)}</stringProp>
8520de1e
DM
68 </ConstantThroughputTimer>
69 <hashTree/>
70 <ThreadGroup guiclass="ThreadGroupGui" testclass="ThreadGroup" testname="Warm-up site" enabled="true">
71 <stringProp name="TestPlan.comments">Used to fill the caches, logs in every user</stringProp>
72 <stringProp name="ThreadGroup.on_sample_error">continue</stringProp>
73 <elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true">
74 <boolProp name="LoopController.continue_forever">false</boolProp>
75 <stringProp name="LoopController.loops">1</stringProp>
76 </elementProp>
1325d493
DM
77 <stringProp name="ThreadGroup.num_threads">${__P(users,{{USERS_PLACEHOLDER}})}</stringProp>
78 <stringProp name="ThreadGroup.ramp_time">${__P(rampup,{{RAMPUP_PLACEHOLDER}})}</stringProp>
8520de1e
DM
79 <longProp name="ThreadGroup.start_time">1378187955000</longProp>
80 <longProp name="ThreadGroup.end_time">1378187955000</longProp>
81 <boolProp name="ThreadGroup.scheduler">false</boolProp>
82 <stringProp name="ThreadGroup.duration"></stringProp>
83 <stringProp name="ThreadGroup.delay"></stringProp>
84 </ThreadGroup>
85 <hashTree>
86 <ConfigTestElement guiclass="HttpDefaultsGui" testclass="ConfigTestElement" testname="Default site request" enabled="true">
87 <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
88 <collectionProp name="Arguments.arguments"/>
89 </elementProp>
90 <stringProp name="HTTPSampler.domain">${host}</stringProp>
91 <stringProp name="HTTPSampler.port"></stringProp>
92 <stringProp name="HTTPSampler.connect_timeout"></stringProp>
93 <stringProp name="HTTPSampler.response_timeout"></stringProp>
94 <stringProp name="HTTPSampler.protocol"></stringProp>
95 <stringProp name="HTTPSampler.contentEncoding"></stringProp>
96 <stringProp name="HTTPSampler.path">${sitepath}</stringProp>
97 <stringProp name="HTTPSampler.concurrentPool">4</stringProp>
98 </ConfigTestElement>
99 <hashTree/>
100 <CSVDataSet guiclass="TestBeanGUI" testclass="CSVDataSet" testname="CSV users data" enabled="true">
101 <stringProp name="delimiter">,</stringProp>
102 <stringProp name="fileEncoding"></stringProp>
103 <stringProp name="filename">${__P(usersfile,YOU_FORGOT_TO_SPECIFY_USERS_CSV_FILE.csv)}</stringProp>
104 <boolProp name="quotedData">false</boolProp>
105 <boolProp name="recycle">true</boolProp>
106 <stringProp name="shareMode">All threads</stringProp>
107 <boolProp name="stopThread">false</boolProp>
108 <stringProp name="variableNames">username,password</stringProp>
109 </CSVDataSet>
110 <hashTree/>
111 <LoopController guiclass="LoopControlPanel" testclass="LoopController" testname="Test plan loop" enabled="true">
112 <boolProp name="LoopController.continue_forever">true</boolProp>
113 <stringProp name="LoopController.loops">1</stringProp>
114 </LoopController>
115 <hashTree>
116 <CookieManager guiclass="CookiePanel" testclass="CookieManager" testname="HTTP Cookie Manager" enabled="true">
117 <collectionProp name="CookieManager.cookies"/>
118 <boolProp name="CookieManager.clearEachIteration">true</boolProp>
119 <stringProp name="CookieManager.policy">rfc2109</stringProp>
120 </CookieManager>
121 <hashTree/>
122 <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Frontpage not logged" enabled="true">
123 <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
124 <collectionProp name="Arguments.arguments"/>
125 </elementProp>
126 <stringProp name="HTTPSampler.domain"></stringProp>
127 <stringProp name="HTTPSampler.port"></stringProp>
128 <stringProp name="HTTPSampler.connect_timeout"></stringProp>
129 <stringProp name="HTTPSampler.response_timeout"></stringProp>
130 <stringProp name="HTTPSampler.protocol"></stringProp>
131 <stringProp name="HTTPSampler.contentEncoding"></stringProp>
132 <stringProp name="HTTPSampler.path"></stringProp>
133 <stringProp name="HTTPSampler.method">GET</stringProp>
134 <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
135 <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
136 <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
137 <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
138 <boolProp name="HTTPSampler.monitor">false</boolProp>
139 <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
140 </HTTPSamplerProxy>
141 <hashTree/>
5b3f4bbb
EL
142 <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="View login page" enabled="true">
143 <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
144 <collectionProp name="Arguments.arguments"/>
145 </elementProp>
146 <stringProp name="HTTPSampler.domain"></stringProp>
147 <stringProp name="HTTPSampler.port"></stringProp>
148 <stringProp name="HTTPSampler.connect_timeout"></stringProp>
149 <stringProp name="HTTPSampler.response_timeout"></stringProp>
150 <stringProp name="HTTPSampler.protocol"></stringProp>
151 <stringProp name="HTTPSampler.contentEncoding"></stringProp>
152 <stringProp name="HTTPSampler.path">${sitepath}/login/index.php</stringProp>
153 <stringProp name="HTTPSampler.method">GET</stringProp>
154 <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
155 <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
156 <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
157 <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
158 <boolProp name="HTTPSampler.monitor">false</boolProp>
159 <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
160 </HTTPSamplerProxy>
161 <hashTree>
162 <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="Get logintoken" enabled="true">
163 <stringProp name="RegexExtractor.useHeaders">false</stringProp>
164 <stringProp name="RegexExtractor.refname">LOGIN_TOKEN</stringProp>
165 <stringProp name="RegexExtractor.regex">type=&quot;hidden&quot;\sname=&quot;logintoken&quot;\svalue=&quot;(\w+)&quot;</stringProp>
166 <stringProp name="RegexExtractor.template">$1$</stringProp>
167 <stringProp name="RegexExtractor.default">0</stringProp>
168 <stringProp name="RegexExtractor.match_number">1</stringProp>
169 </RegexExtractor>
170 <hashTree/>
171 </hashTree>
8520de1e
DM
172 <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Login" enabled="true">
173 <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
174 <collectionProp name="Arguments.arguments">
175 <elementProp name="username" elementType="HTTPArgument">
176 <boolProp name="HTTPArgument.always_encode">false</boolProp>
177 <stringProp name="Argument.value">${username}</stringProp>
178 <stringProp name="Argument.metadata">=</stringProp>
179 <boolProp name="HTTPArgument.use_equals">true</boolProp>
180 <stringProp name="Argument.name">username</stringProp>
181 </elementProp>
182 <elementProp name="password" elementType="HTTPArgument">
183 <boolProp name="HTTPArgument.always_encode">false</boolProp>
184 <stringProp name="Argument.value">${password}</stringProp>
185 <stringProp name="Argument.metadata">=</stringProp>
186 <boolProp name="HTTPArgument.use_equals">true</boolProp>
187 <stringProp name="Argument.name">password</stringProp>
188 </elementProp>
5b3f4bbb
EL
189 <elementProp name="logintoken" elementType="HTTPArgument">
190 <boolProp name="HTTPArgument.always_encode">false</boolProp>
191 <stringProp name="Argument.value">${LOGIN_TOKEN}</stringProp>
192 <stringProp name="Argument.metadata">=</stringProp>
193 <boolProp name="HTTPArgument.use_equals">true</boolProp>
194 <stringProp name="Argument.name">logintoken</stringProp>
195 </elementProp>
8520de1e
DM
196 </collectionProp>
197 </elementProp>
198 <stringProp name="HTTPSampler.domain"></stringProp>
199 <stringProp name="HTTPSampler.port"></stringProp>
200 <stringProp name="HTTPSampler.connect_timeout"></stringProp>
201 <stringProp name="HTTPSampler.response_timeout"></stringProp>
202 <stringProp name="HTTPSampler.protocol"></stringProp>
203 <stringProp name="HTTPSampler.contentEncoding"></stringProp>
204 <stringProp name="HTTPSampler.path">${sitepath}/login/index.php</stringProp>
205 <stringProp name="HTTPSampler.method">POST</stringProp>
206 <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
207 <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
208 <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
209 <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
210 <boolProp name="HTTPSampler.monitor">false</boolProp>
211 <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
212 </HTTPSamplerProxy>
5b3f4bbb
EL
213 <hashTree>
214 <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Logged in" enabled="true">
215 <collectionProp name="Asserion.test_strings">
216 <stringProp name="615717117">&lt;div class=&quot;logininfo&quot;&gt;You are logged in as</stringProp>
217 </collectionProp>
218 <stringProp name="Assertion.test_field">Assertion.response_data</stringProp>
219 <boolProp name="Assertion.assume_success">false</boolProp>
220 <intProp name="Assertion.test_type">2</intProp>
221 </ResponseAssertion>
222 <hashTree/>
223 </hashTree>
8520de1e
DM
224 <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Frontpage logged" enabled="true">
225 <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
226 <collectionProp name="Arguments.arguments"/>
227 </elementProp>
228 <stringProp name="HTTPSampler.domain"></stringProp>
229 <stringProp name="HTTPSampler.port"></stringProp>
230 <stringProp name="HTTPSampler.connect_timeout"></stringProp>
231 <stringProp name="HTTPSampler.response_timeout"></stringProp>
232 <stringProp name="HTTPSampler.protocol"></stringProp>
233 <stringProp name="HTTPSampler.contentEncoding"></stringProp>
234 <stringProp name="HTTPSampler.path"></stringProp>
235 <stringProp name="HTTPSampler.method">GET</stringProp>
236 <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
237 <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
238 <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
239 <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
240 <boolProp name="HTTPSampler.monitor">false</boolProp>
241 <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
242 </HTTPSamplerProxy>
243 <hashTree/>
244 <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="View course" enabled="true">
245 <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
246 <collectionProp name="Arguments.arguments">
247 <elementProp name="id" elementType="HTTPArgument">
248 <boolProp name="HTTPArgument.always_encode">false</boolProp>
249 <stringProp name="Argument.value">${courseid}</stringProp>
250 <stringProp name="Argument.metadata">=</stringProp>
251 <boolProp name="HTTPArgument.use_equals">true</boolProp>
252 <stringProp name="Argument.name">id</stringProp>
253 </elementProp>
254 </collectionProp>
255 </elementProp>
256 <stringProp name="HTTPSampler.domain"></stringProp>
257 <stringProp name="HTTPSampler.port"></stringProp>
258 <stringProp name="HTTPSampler.connect_timeout"></stringProp>
259 <stringProp name="HTTPSampler.response_timeout"></stringProp>
260 <stringProp name="HTTPSampler.protocol"></stringProp>
261 <stringProp name="HTTPSampler.contentEncoding"></stringProp>
262 <stringProp name="HTTPSampler.path">${sitepath}/course/view.php</stringProp>
263 <stringProp name="HTTPSampler.method">GET</stringProp>
264 <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
265 <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
266 <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
267 <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
268 <boolProp name="HTTPSampler.monitor">false</boolProp>
269 <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
270 <stringProp name="TestPlan.comments"> </stringProp>
271 </HTTPSamplerProxy>
272 <hashTree>
273 <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="Regular Expression Extractor" enabled="true">
274 <stringProp name="RegexExtractor.useHeaders">false</stringProp>
275 <stringProp name="RegexExtractor.refname">SESSION_SESSKEY</stringProp>
276 <stringProp name="RegexExtractor.regex">sesskey=([^&quot;]+)&quot;</stringProp>
277 <stringProp name="RegexExtractor.template">$1$</stringProp>
278 <stringProp name="RegexExtractor.default"></stringProp>
279 <stringProp name="RegexExtractor.match_number">2</stringProp>
280 <stringProp name="Sample.scope">all</stringProp>
281 </RegexExtractor>
282 <hashTree/>
283 </hashTree>
284 <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Logout" enabled="true">
285 <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
286 <collectionProp name="Arguments.arguments">
287 <elementProp name="sesskey" elementType="HTTPArgument">
288 <boolProp name="HTTPArgument.always_encode">false</boolProp>
289 <stringProp name="Argument.value">${SESSION_SESSKEY}</stringProp>
290 <stringProp name="Argument.metadata">=</stringProp>
291 <boolProp name="HTTPArgument.use_equals">true</boolProp>
292 <stringProp name="Argument.name">sesskey</stringProp>
293 </elementProp>
294 </collectionProp>
295 </elementProp>
296 <stringProp name="HTTPSampler.domain"></stringProp>
297 <stringProp name="HTTPSampler.port"></stringProp>
298 <stringProp name="HTTPSampler.connect_timeout"></stringProp>
299 <stringProp name="HTTPSampler.response_timeout"></stringProp>
300 <stringProp name="HTTPSampler.protocol"></stringProp>
301 <stringProp name="HTTPSampler.contentEncoding"></stringProp>
302 <stringProp name="HTTPSampler.path">${sitepath}/login/logout.php</stringProp>
303 <stringProp name="HTTPSampler.method">GET</stringProp>
304 <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
305 <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
306 <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
307 <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
308 <boolProp name="HTTPSampler.monitor">false</boolProp>
309 <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
310 </HTTPSamplerProxy>
311 <hashTree/>
312 </hashTree>
313 </hashTree>
314 <ThreadGroup guiclass="ThreadGroupGui" testclass="ThreadGroup" testname="Moodle Test" enabled="true">
315 <stringProp name="ThreadGroup.on_sample_error">continue</stringProp>
316 <elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true">
317 <boolProp name="LoopController.continue_forever">false</boolProp>
1325d493 318 <stringProp name="LoopController.loops">${__property(loops,loops,{{LOOPS_PLACEHOLDER}})}</stringProp>
8520de1e 319 </elementProp>
1325d493
DM
320 <stringProp name="ThreadGroup.num_threads">${__property(users,users,{{USERS_PLACEHOLDER}})}</stringProp>
321 <stringProp name="ThreadGroup.ramp_time">${__property(rampup,rampup,{{RAMPUP_PLACEHOLDER}})}</stringProp>
8520de1e
DM
322 <longProp name="ThreadGroup.start_time">1376636813000</longProp>
323 <longProp name="ThreadGroup.end_time">1376636813000</longProp>
324 <boolProp name="ThreadGroup.scheduler">false</boolProp>
325 <stringProp name="ThreadGroup.duration"></stringProp>
326 <stringProp name="ThreadGroup.delay"></stringProp>
327 </ThreadGroup>
328 <hashTree>
329 <ConfigTestElement guiclass="HttpDefaultsGui" testclass="ConfigTestElement" testname="Default site request" enabled="true">
330 <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
331 <collectionProp name="Arguments.arguments"/>
332 </elementProp>
333 <stringProp name="HTTPSampler.domain">${host}</stringProp>
334 <stringProp name="HTTPSampler.port"></stringProp>
335 <stringProp name="HTTPSampler.connect_timeout"></stringProp>
336 <stringProp name="HTTPSampler.response_timeout"></stringProp>
337 <stringProp name="HTTPSampler.protocol"></stringProp>
338 <stringProp name="HTTPSampler.contentEncoding"></stringProp>
339 <stringProp name="HTTPSampler.path">${sitepath}</stringProp>
340 <stringProp name="HTTPSampler.concurrentPool">4</stringProp>
341 </ConfigTestElement>
342 <hashTree/>
343 <CSVDataSet guiclass="TestBeanGUI" testclass="CSVDataSet" testname="CSV users data" enabled="true">
344 <stringProp name="delimiter">,</stringProp>
345 <stringProp name="fileEncoding"></stringProp>
346 <stringProp name="filename">${__P(usersfile,YOU_FORGOT_TO_SPECIFY_USERS_CSV_FILE.csv)}</stringProp>
347 <boolProp name="quotedData">false</boolProp>
348 <boolProp name="recycle">true</boolProp>
349 <stringProp name="shareMode">All threads</stringProp>
350 <boolProp name="stopThread">false</boolProp>
351 <stringProp name="variableNames">username,password</stringProp>
352 </CSVDataSet>
353 <hashTree/>
354 <LoopController guiclass="LoopControlPanel" testclass="LoopController" testname="Test plan loop" enabled="true">
355 <boolProp name="LoopController.continue_forever">true</boolProp>
356 <stringProp name="LoopController.loops">1</stringProp>
357 </LoopController>
358 <hashTree>
359 <CookieManager guiclass="CookiePanel" testclass="CookieManager" testname="HTTP Cookie Manager" enabled="true">
360 <collectionProp name="CookieManager.cookies"/>
361 <boolProp name="CookieManager.clearEachIteration">true</boolProp>
362 <stringProp name="CookieManager.policy">rfc2109</stringProp>
363 </CookieManager>
364 <hashTree/>
365 <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Frontpage not logged" enabled="true">
366 <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
367 <collectionProp name="Arguments.arguments"/>
368 </elementProp>
369 <stringProp name="HTTPSampler.domain"></stringProp>
370 <stringProp name="HTTPSampler.port"></stringProp>
371 <stringProp name="HTTPSampler.connect_timeout"></stringProp>
372 <stringProp name="HTTPSampler.response_timeout"></stringProp>
373 <stringProp name="HTTPSampler.protocol"></stringProp>
374 <stringProp name="HTTPSampler.contentEncoding"></stringProp>
375 <stringProp name="HTTPSampler.path"></stringProp>
376 <stringProp name="HTTPSampler.method">GET</stringProp>
377 <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
378 <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
379 <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
380 <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
381 <boolProp name="HTTPSampler.monitor">false</boolProp>
382 <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
383 </HTTPSamplerProxy>
384 <hashTree/>
5b3f4bbb
EL
385 <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="View login page" enabled="true">
386 <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
387 <collectionProp name="Arguments.arguments"/>
388 </elementProp>
389 <stringProp name="HTTPSampler.domain"></stringProp>
390 <stringProp name="HTTPSampler.port"></stringProp>
391 <stringProp name="HTTPSampler.connect_timeout"></stringProp>
392 <stringProp name="HTTPSampler.response_timeout"></stringProp>
393 <stringProp name="HTTPSampler.protocol"></stringProp>
394 <stringProp name="HTTPSampler.contentEncoding"></stringProp>
395 <stringProp name="HTTPSampler.path">${sitepath}/login/index.php</stringProp>
396 <stringProp name="HTTPSampler.method">GET</stringProp>
397 <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
398 <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
399 <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
400 <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
401 <boolProp name="HTTPSampler.monitor">false</boolProp>
402 <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
403 </HTTPSamplerProxy>
404 <hashTree>
405 <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="Get logintoken" enabled="true">
406 <stringProp name="RegexExtractor.useHeaders">false</stringProp>
407 <stringProp name="RegexExtractor.refname">LOGIN_TOKEN</stringProp>
408 <stringProp name="RegexExtractor.regex">type=&quot;hidden&quot;\sname=&quot;logintoken&quot;\svalue=&quot;(\w+)&quot;</stringProp>
409 <stringProp name="RegexExtractor.template">$1$</stringProp>
410 <stringProp name="RegexExtractor.default">0</stringProp>
411 <stringProp name="RegexExtractor.match_number">1</stringProp>
412 </RegexExtractor>
413 <hashTree/>
414 </hashTree>
8520de1e
DM
415 <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Login" enabled="true">
416 <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
417 <collectionProp name="Arguments.arguments">
418 <elementProp name="username" elementType="HTTPArgument">
419 <boolProp name="HTTPArgument.always_encode">false</boolProp>
420 <stringProp name="Argument.value">${username}</stringProp>
421 <stringProp name="Argument.metadata">=</stringProp>
422 <boolProp name="HTTPArgument.use_equals">true</boolProp>
423 <stringProp name="Argument.name">username</stringProp>
424 </elementProp>
425 <elementProp name="password" elementType="HTTPArgument">
426 <boolProp name="HTTPArgument.always_encode">false</boolProp>
427 <stringProp name="Argument.value">${password}</stringProp>
428 <stringProp name="Argument.metadata">=</stringProp>
429 <boolProp name="HTTPArgument.use_equals">true</boolProp>
430 <stringProp name="Argument.name">password</stringProp>
431 </elementProp>
5b3f4bbb
EL
432 <elementProp name="logintoken" elementType="HTTPArgument">
433 <boolProp name="HTTPArgument.always_encode">false</boolProp>
434 <stringProp name="Argument.value">${LOGIN_TOKEN}</stringProp>
435 <stringProp name="Argument.metadata">=</stringProp>
436 <boolProp name="HTTPArgument.use_equals">true</boolProp>
437 <stringProp name="Argument.name">logintoken</stringProp>
438 </elementProp>
8520de1e
DM
439 </collectionProp>
440 </elementProp>
441 <stringProp name="HTTPSampler.domain"></stringProp>
442 <stringProp name="HTTPSampler.port"></stringProp>
443 <stringProp name="HTTPSampler.connect_timeout"></stringProp>
444 <stringProp name="HTTPSampler.response_timeout"></stringProp>
445 <stringProp name="HTTPSampler.protocol"></stringProp>
446 <stringProp name="HTTPSampler.contentEncoding"></stringProp>
447 <stringProp name="HTTPSampler.path">${sitepath}/login/index.php</stringProp>
448 <stringProp name="HTTPSampler.method">POST</stringProp>
449 <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
450 <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
451 <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
452 <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
453 <boolProp name="HTTPSampler.monitor">false</boolProp>
454 <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
455 </HTTPSamplerProxy>
456 <hashTree>
457 <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Logged in" enabled="true">
458 <collectionProp name="Asserion.test_strings">
459 <stringProp name="615717117">&lt;div class=&quot;logininfo&quot;&gt;You are logged in as</stringProp>
460 </collectionProp>
461 <stringProp name="Assertion.test_field">Assertion.response_data</stringProp>
462 <boolProp name="Assertion.assume_success">false</boolProp>
463 <intProp name="Assertion.test_type">2</intProp>
464 </ResponseAssertion>
465 <hashTree/>
466 </hashTree>
467 <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Frontpage logged" enabled="true">
468 <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
469 <collectionProp name="Arguments.arguments"/>
470 </elementProp>
471 <stringProp name="HTTPSampler.domain"></stringProp>
472 <stringProp name="HTTPSampler.port"></stringProp>
473 <stringProp name="HTTPSampler.connect_timeout"></stringProp>
474 <stringProp name="HTTPSampler.response_timeout"></stringProp>
475 <stringProp name="HTTPSampler.protocol"></stringProp>
476 <stringProp name="HTTPSampler.contentEncoding"></stringProp>
477 <stringProp name="HTTPSampler.path"></stringProp>
478 <stringProp name="HTTPSampler.method">GET</stringProp>
479 <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
480 <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
481 <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
482 <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
483 <boolProp name="HTTPSampler.monitor">false</boolProp>
484 <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
485 </HTTPSamplerProxy>
486 <hashTree/>
487 <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="View course" enabled="true">
488 <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
489 <collectionProp name="Arguments.arguments">
490 <elementProp name="id" elementType="HTTPArgument">
491 <boolProp name="HTTPArgument.always_encode">false</boolProp>
492 <stringProp name="Argument.value">${courseid}</stringProp>
493 <stringProp name="Argument.metadata">=</stringProp>
494 <boolProp name="HTTPArgument.use_equals">true</boolProp>
495 <stringProp name="Argument.name">id</stringProp>
496 </elementProp>
497 </collectionProp>
498 </elementProp>
499 <stringProp name="HTTPSampler.domain"></stringProp>
500 <stringProp name="HTTPSampler.port"></stringProp>
501 <stringProp name="HTTPSampler.connect_timeout"></stringProp>
502 <stringProp name="HTTPSampler.response_timeout"></stringProp>
503 <stringProp name="HTTPSampler.protocol"></stringProp>
504 <stringProp name="HTTPSampler.contentEncoding"></stringProp>
505 <stringProp name="HTTPSampler.path">${sitepath}/course/view.php</stringProp>
506 <stringProp name="HTTPSampler.method">GET</stringProp>
507 <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
508 <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
509 <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
510 <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
511 <boolProp name="HTTPSampler.monitor">false</boolProp>
512 <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
513 <stringProp name="TestPlan.comments"> </stringProp>
514 </HTTPSamplerProxy>
515 <hashTree/>
516 <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="View a page activity" enabled="true">
517 <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
518 <collectionProp name="Arguments.arguments">
519 <elementProp name="id" elementType="HTTPArgument">
520 <boolProp name="HTTPArgument.always_encode">false</boolProp>
521 <stringProp name="Argument.value">${pageactivityid}</stringProp>
522 <stringProp name="Argument.metadata">=</stringProp>
523 <boolProp name="HTTPArgument.use_equals">true</boolProp>
524 <stringProp name="Argument.name">id</stringProp>
525 </elementProp>
526 </collectionProp>
527 </elementProp>
528 <stringProp name="HTTPSampler.domain"></stringProp>
529 <stringProp name="HTTPSampler.port"></stringProp>
530 <stringProp name="HTTPSampler.connect_timeout"></stringProp>
531 <stringProp name="HTTPSampler.response_timeout"></stringProp>
532 <stringProp name="HTTPSampler.protocol"></stringProp>
533 <stringProp name="HTTPSampler.contentEncoding"></stringProp>
534 <stringProp name="HTTPSampler.path">${sitepath}/mod/page/view.php</stringProp>
535 <stringProp name="HTTPSampler.method">GET</stringProp>
536 <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
537 <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
538 <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
539 <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
540 <boolProp name="HTTPSampler.monitor">false</boolProp>
541 <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
542 </HTTPSamplerProxy>
543 <hashTree/>
544 <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="View course again" enabled="true">
545 <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
546 <collectionProp name="Arguments.arguments">
547 <elementProp name="id" elementType="HTTPArgument">
548 <boolProp name="HTTPArgument.always_encode">false</boolProp>
549 <stringProp name="Argument.value">${courseid}</stringProp>
550 <stringProp name="Argument.metadata">=</stringProp>
551 <boolProp name="HTTPArgument.use_equals">true</boolProp>
552 <stringProp name="Argument.name">id</stringProp>
553 </elementProp>
554 </collectionProp>
555 </elementProp>
556 <stringProp name="HTTPSampler.domain"></stringProp>
557 <stringProp name="HTTPSampler.port"></stringProp>
558 <stringProp name="HTTPSampler.connect_timeout"></stringProp>
559 <stringProp name="HTTPSampler.response_timeout"></stringProp>
560 <stringProp name="HTTPSampler.protocol"></stringProp>
561 <stringProp name="HTTPSampler.contentEncoding"></stringProp>
562 <stringProp name="HTTPSampler.path">${sitepath}/course/view.php</stringProp>
563 <stringProp name="HTTPSampler.method">GET</stringProp>
564 <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
565 <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
566 <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
567 <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
568 <boolProp name="HTTPSampler.monitor">false</boolProp>
569 <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
570 </HTTPSamplerProxy>
571 <hashTree/>
572 <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="View a forum activity" enabled="true">
573 <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
574 <collectionProp name="Arguments.arguments">
575 <elementProp name="id" elementType="HTTPArgument">
576 <boolProp name="HTTPArgument.always_encode">false</boolProp>
577 <stringProp name="Argument.value">${forumactivityid}</stringProp>
578 <stringProp name="Argument.metadata">=</stringProp>
579 <boolProp name="HTTPArgument.use_equals">true</boolProp>
580 <stringProp name="Argument.name">id</stringProp>
581 </elementProp>
582 </collectionProp>
583 </elementProp>
584 <stringProp name="HTTPSampler.domain"></stringProp>
585 <stringProp name="HTTPSampler.port"></stringProp>
586 <stringProp name="HTTPSampler.connect_timeout"></stringProp>
587 <stringProp name="HTTPSampler.response_timeout"></stringProp>
588 <stringProp name="HTTPSampler.protocol"></stringProp>
589 <stringProp name="HTTPSampler.contentEncoding"></stringProp>
590 <stringProp name="HTTPSampler.path">${sitepath}/mod/forum/view.php</stringProp>
591 <stringProp name="HTTPSampler.method">GET</stringProp>
592 <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
593 <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
594 <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
595 <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
596 <boolProp name="HTTPSampler.monitor">false</boolProp>
597 <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
598 </HTTPSamplerProxy>
599 <hashTree/>
600 <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="View a forum discussion" enabled="true">
601 <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
602 <collectionProp name="Arguments.arguments">
603 <elementProp name="d" elementType="HTTPArgument">
604 <boolProp name="HTTPArgument.always_encode">false</boolProp>
605 <stringProp name="Argument.value">${forumdiscussionid}</stringProp>
606 <stringProp name="Argument.metadata">=</stringProp>
607 <boolProp name="HTTPArgument.use_equals">true</boolProp>
608 <stringProp name="Argument.name">d</stringProp>
609 </elementProp>
610 </collectionProp>
611 </elementProp>
612 <stringProp name="HTTPSampler.domain"></stringProp>
613 <stringProp name="HTTPSampler.port"></stringProp>
614 <stringProp name="HTTPSampler.connect_timeout"></stringProp>
615 <stringProp name="HTTPSampler.response_timeout"></stringProp>
616 <stringProp name="HTTPSampler.protocol"></stringProp>
617 <stringProp name="HTTPSampler.contentEncoding"></stringProp>
618 <stringProp name="HTTPSampler.path">${sitepath}/mod/forum/discuss.php</stringProp>
619 <stringProp name="HTTPSampler.method">GET</stringProp>
620 <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
621 <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
622 <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
623 <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
624 <boolProp name="HTTPSampler.monitor">false</boolProp>
625 <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
626 </HTTPSamplerProxy>
627 <hashTree/>
628 <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Fill a form to reply a forum discussion" enabled="true">
629 <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
630 <collectionProp name="Arguments.arguments">
631 <elementProp name="reply" elementType="HTTPArgument">
632 <boolProp name="HTTPArgument.always_encode">false</boolProp>
633 <stringProp name="Argument.value">${forumreplyid}</stringProp>
634 <stringProp name="Argument.metadata">=</stringProp>
635 <boolProp name="HTTPArgument.use_equals">true</boolProp>
636 <stringProp name="Argument.name">reply</stringProp>
637 </elementProp>
638 </collectionProp>
639 </elementProp>
640 <stringProp name="HTTPSampler.domain"></stringProp>
641 <stringProp name="HTTPSampler.port"></stringProp>
642 <stringProp name="HTTPSampler.connect_timeout"></stringProp>
643 <stringProp name="HTTPSampler.response_timeout"></stringProp>
644 <stringProp name="HTTPSampler.protocol"></stringProp>
645 <stringProp name="HTTPSampler.contentEncoding"></stringProp>
646 <stringProp name="HTTPSampler.path">${sitepath}/mod/forum/post.php</stringProp>
647 <stringProp name="HTTPSampler.method">GET</stringProp>
648 <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
649 <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
650 <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
651 <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
652 <boolProp name="HTTPSampler.monitor">false</boolProp>
653 <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
654 </HTTPSamplerProxy>
655 <hashTree>
656 <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="Get session userid" enabled="true">
657 <stringProp name="RegexExtractor.useHeaders">false</stringProp>
658 <stringProp name="RegexExtractor.refname">SESSION_USERID</stringProp>
659 <stringProp name="RegexExtractor.regex">name=&quot;userid&quot;\stype=&quot;hidden&quot;\svalue=&quot;(\d+)&quot;</stringProp>
660 <stringProp name="RegexExtractor.template">$1$</stringProp>
661 <stringProp name="RegexExtractor.default">0</stringProp>
662 <stringProp name="RegexExtractor.match_number">1</stringProp>
663 </RegexExtractor>
664 <hashTree/>
665 <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="Get session sesskey" enabled="true">
666 <stringProp name="RegexExtractor.useHeaders">false</stringProp>
667 <stringProp name="RegexExtractor.refname">SESSION_SESSKEY</stringProp>
668 <stringProp name="RegexExtractor.regex">name=&quot;sesskey&quot;\stype=&quot;hidden&quot;\svalue=&quot;([^&quot;]+)&quot;</stringProp>
669 <stringProp name="RegexExtractor.template">$1$</stringProp>
670 <stringProp name="RegexExtractor.default">0</stringProp>
671 <stringProp name="RegexExtractor.match_number">1</stringProp>
672 </RegexExtractor>
673 <hashTree/>
674 <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="Get forum form attachments" enabled="true">
675 <stringProp name="RegexExtractor.useHeaders">false</stringProp>
676 <stringProp name="RegexExtractor.refname">SESSION_FORUMFORMATTACHMENTS</stringProp>
677 <stringProp name="RegexExtractor.regex">value=&quot;(\d+)&quot;\sname=&quot;attachments&quot;\stype=&quot;hidden&quot;</stringProp>
678 <stringProp name="RegexExtractor.template">$1$</stringProp>
679 <stringProp name="RegexExtractor.default">0</stringProp>
680 <stringProp name="RegexExtractor.match_number">1</stringProp>
681 </RegexExtractor>
682 <hashTree/>
683 <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="Get forum form itemid" enabled="true">
684 <stringProp name="RegexExtractor.useHeaders">false</stringProp>
685 <stringProp name="RegexExtractor.refname">SESSION_FORUMFORMITEMID</stringProp>
686 <stringProp name="RegexExtractor.regex">type=&quot;hidden&quot;\sname=&quot;message\[itemid\]&quot;\svalue=&quot;(\d+)&quot;</stringProp>
687 <stringProp name="RegexExtractor.template">$1$</stringProp>
688 <stringProp name="RegexExtractor.default">0</stringProp>
689 <stringProp name="RegexExtractor.match_number">1</stringProp>
690 </RegexExtractor>
691 <hashTree/>
692 </hashTree>
693 <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Send the forum discussion reply" enabled="true">
694 <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
695 <collectionProp name="Arguments.arguments">
696 <elementProp name="course" elementType="HTTPArgument">
697 <boolProp name="HTTPArgument.always_encode">false</boolProp>
698 <stringProp name="Argument.value">${courseid}</stringProp>
699 <stringProp name="Argument.metadata">=</stringProp>
700 <boolProp name="HTTPArgument.use_equals">true</boolProp>
701 <stringProp name="Argument.name">course</stringProp>
702 </elementProp>
703 <elementProp name="forum" elementType="HTTPArgument">
704 <boolProp name="HTTPArgument.always_encode">false</boolProp>
705 <stringProp name="Argument.value">0</stringProp>
706 <stringProp name="Argument.metadata">=</stringProp>
707 <boolProp name="HTTPArgument.use_equals">true</boolProp>
708 <stringProp name="Argument.name">forum</stringProp>
709 </elementProp>
710 <elementProp name="discussion" elementType="HTTPArgument">
711 <boolProp name="HTTPArgument.always_encode">false</boolProp>
712 <stringProp name="Argument.value">${forumdiscussionid}</stringProp>
713 <stringProp name="Argument.metadata">=</stringProp>
714 <boolProp name="HTTPArgument.use_equals">true</boolProp>
715 <stringProp name="Argument.name">discussion</stringProp>
716 </elementProp>
717 <elementProp name="userid" elementType="HTTPArgument">
718 <boolProp name="HTTPArgument.always_encode">false</boolProp>
719 <stringProp name="Argument.value">${SESSION_USERID}</stringProp>
720 <stringProp name="Argument.metadata">=</stringProp>
721 <boolProp name="HTTPArgument.use_equals">true</boolProp>
722 <stringProp name="Argument.name">userid</stringProp>
723 </elementProp>
724 <elementProp name="groupid" elementType="HTTPArgument">
725 <boolProp name="HTTPArgument.always_encode">false</boolProp>
726 <stringProp name="Argument.value">0</stringProp>
727 <stringProp name="Argument.metadata">=</stringProp>
728 <boolProp name="HTTPArgument.use_equals">true</boolProp>
729 <stringProp name="Argument.name">groupid</stringProp>
730 </elementProp>
731 <elementProp name="edit" elementType="HTTPArgument">
732 <boolProp name="HTTPArgument.always_encode">false</boolProp>
733 <stringProp name="Argument.value">0</stringProp>
734 <stringProp name="Argument.metadata">=</stringProp>
735 <boolProp name="HTTPArgument.use_equals">true</boolProp>
736 <stringProp name="Argument.name">edit</stringProp>
737 </elementProp>
738 <elementProp name="reply" elementType="HTTPArgument">
739 <boolProp name="HTTPArgument.always_encode">false</boolProp>
740 <stringProp name="Argument.value">${forumreplyid}</stringProp>
741 <stringProp name="Argument.metadata">=</stringProp>
742 <boolProp name="HTTPArgument.use_equals">true</boolProp>
743 <stringProp name="Argument.name">reply</stringProp>
744 </elementProp>
745 <elementProp name="sesskey" elementType="HTTPArgument">
746 <boolProp name="HTTPArgument.always_encode">false</boolProp>
747 <stringProp name="Argument.value">${SESSION_SESSKEY}</stringProp>
748 <stringProp name="Argument.metadata">=</stringProp>
749 <boolProp name="HTTPArgument.use_equals">true</boolProp>
750 <stringProp name="Argument.name">sesskey</stringProp>
751 </elementProp>
752 <elementProp name="_qf__mod_forum_post_form" elementType="HTTPArgument">
753 <boolProp name="HTTPArgument.always_encode">false</boolProp>
754 <stringProp name="Argument.value">1</stringProp>
755 <stringProp name="Argument.metadata">=</stringProp>
756 <boolProp name="HTTPArgument.use_equals">true</boolProp>
757 <stringProp name="Argument.name">_qf__mod_forum_post_form</stringProp>
758 </elementProp>
759 <elementProp name="subject" elementType="HTTPArgument">
760 <boolProp name="HTTPArgument.always_encode">false</boolProp>
761 <stringProp name="Argument.value">Re: I am the test plan reply subject</stringProp>
762 <stringProp name="Argument.metadata">=</stringProp>
763 <boolProp name="HTTPArgument.use_equals">true</boolProp>
764 <stringProp name="Argument.name">subject</stringProp>
765 </elementProp>
766 <elementProp name="message[itemid]" elementType="HTTPArgument">
767 <boolProp name="HTTPArgument.always_encode">false</boolProp>
768 <stringProp name="Argument.value">${SESSION_FORUMFORMITEMID}</stringProp>
769 <stringProp name="Argument.metadata">=</stringProp>
770 <boolProp name="HTTPArgument.use_equals">true</boolProp>
771 <stringProp name="Argument.name">message[itemid]</stringProp>
772 </elementProp>
773 <elementProp name="message[format]" elementType="HTTPArgument">
774 <boolProp name="HTTPArgument.always_encode">false</boolProp>
775 <stringProp name="Argument.value">1</stringProp>
776 <stringProp name="Argument.metadata">=</stringProp>
777 <boolProp name="HTTPArgument.use_equals">true</boolProp>
778 <stringProp name="Argument.name">message[format]</stringProp>
779 </elementProp>
780 <elementProp name="message[text]" elementType="HTTPArgument">
781 <boolProp name="HTTPArgument.always_encode">false</boolProp>
782 <stringProp name="Argument.value">I am the test plan reply message</stringProp>
783 <stringProp name="Argument.metadata">=</stringProp>
784 <boolProp name="HTTPArgument.use_equals">true</boolProp>
785 <stringProp name="Argument.name">message[text]</stringProp>
786 </elementProp>
787 <elementProp name="parent" elementType="HTTPArgument">
788 <boolProp name="HTTPArgument.always_encode">false</boolProp>
789 <stringProp name="Argument.value">${forumreplyid}</stringProp>
790 <stringProp name="Argument.metadata">=</stringProp>
791 <boolProp name="HTTPArgument.use_equals">true</boolProp>
792 <stringProp name="Argument.name">parent</stringProp>
793 </elementProp>
794 <elementProp name="subscribe" elementType="HTTPArgument">
795 <boolProp name="HTTPArgument.always_encode">false</boolProp>
796 <stringProp name="Argument.value">1</stringProp>
797 <stringProp name="Argument.metadata">=</stringProp>
798 <boolProp name="HTTPArgument.use_equals">true</boolProp>
799 <stringProp name="Argument.name">subscribe</stringProp>
800 </elementProp>
801 <elementProp name="attachments" elementType="HTTPArgument">
802 <boolProp name="HTTPArgument.always_encode">false</boolProp>
803 <stringProp name="Argument.value">${SESSION_FORUMFORMATTACHMENTS}</stringProp>
804 <stringProp name="Argument.metadata">=</stringProp>
805 <boolProp name="HTTPArgument.use_equals">true</boolProp>
806 <stringProp name="Argument.name">attachments</stringProp>
807 </elementProp>
808 <elementProp name="timestart" elementType="HTTPArgument">
809 <boolProp name="HTTPArgument.always_encode">false</boolProp>
810 <stringProp name="Argument.value">0</stringProp>
811 <stringProp name="Argument.metadata">=</stringProp>
812 <boolProp name="HTTPArgument.use_equals">true</boolProp>
813 <stringProp name="Argument.name">timestart</stringProp>
814 </elementProp>
815 <elementProp name="timeend" elementType="HTTPArgument">
816 <boolProp name="HTTPArgument.always_encode">false</boolProp>
817 <stringProp name="Argument.value">0</stringProp>
818 <stringProp name="Argument.metadata">=</stringProp>
819 <boolProp name="HTTPArgument.use_equals">true</boolProp>
820 <stringProp name="Argument.name">timeend</stringProp>
821 </elementProp>
822 <elementProp name="submitbutton" elementType="HTTPArgument">
823 <boolProp name="HTTPArgument.always_encode">false</boolProp>
824 <stringProp name="Argument.value">Post to forum</stringProp>
825 <stringProp name="Argument.metadata">=</stringProp>
826 <boolProp name="HTTPArgument.use_equals">true</boolProp>
827 <stringProp name="Argument.name">submitbutton</stringProp>
828 </elementProp>
829 </collectionProp>
830 </elementProp>
831 <stringProp name="HTTPSampler.domain"></stringProp>
832 <stringProp name="HTTPSampler.port"></stringProp>
833 <stringProp name="HTTPSampler.connect_timeout"></stringProp>
834 <stringProp name="HTTPSampler.response_timeout"></stringProp>
835 <stringProp name="HTTPSampler.protocol"></stringProp>
836 <stringProp name="HTTPSampler.contentEncoding"></stringProp>
837 <stringProp name="HTTPSampler.path">${sitepath}/mod/forum/post.php</stringProp>
838 <stringProp name="HTTPSampler.method">POST</stringProp>
58a3a34e 839 <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
8520de1e
DM
840 <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
841 <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
842 <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
843 <boolProp name="HTTPSampler.monitor">false</boolProp>
844 <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
845 </HTTPSamplerProxy>
846 <hashTree/>
847 <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="View course once more" enabled="true">
848 <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
849 <collectionProp name="Arguments.arguments">
850 <elementProp name="id" elementType="HTTPArgument">
851 <boolProp name="HTTPArgument.always_encode">false</boolProp>
852 <stringProp name="Argument.value">${courseid}</stringProp>
853 <stringProp name="Argument.metadata">=</stringProp>
854 <boolProp name="HTTPArgument.use_equals">true</boolProp>
855 <stringProp name="Argument.name">id</stringProp>
856 </elementProp>
857 </collectionProp>
858 </elementProp>
859 <stringProp name="HTTPSampler.domain"></stringProp>
860 <stringProp name="HTTPSampler.port"></stringProp>
861 <stringProp name="HTTPSampler.connect_timeout"></stringProp>
862 <stringProp name="HTTPSampler.response_timeout"></stringProp>
863 <stringProp name="HTTPSampler.protocol"></stringProp>
864 <stringProp name="HTTPSampler.contentEncoding"></stringProp>
865 <stringProp name="HTTPSampler.path">${sitepath}/course/view.php</stringProp>
866 <stringProp name="HTTPSampler.method">GET</stringProp>
867 <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
868 <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
869 <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
870 <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
871 <boolProp name="HTTPSampler.monitor">false</boolProp>
872 <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
873 </HTTPSamplerProxy>
874 <hashTree/>
875 <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="View course participants" enabled="true">
876 <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
877 <collectionProp name="Arguments.arguments">
878 <elementProp name="id" elementType="HTTPArgument">
879 <boolProp name="HTTPArgument.always_encode">false</boolProp>
880 <stringProp name="Argument.value">${courseid}</stringProp>
881 <stringProp name="Argument.metadata">=</stringProp>
882 <boolProp name="HTTPArgument.use_equals">true</boolProp>
883 <stringProp name="Argument.name">id</stringProp>
884 </elementProp>
885 </collectionProp>
886 </elementProp>
887 <stringProp name="HTTPSampler.domain"></stringProp>
888 <stringProp name="HTTPSampler.port"></stringProp>
889 <stringProp name="HTTPSampler.connect_timeout"></stringProp>
890 <stringProp name="HTTPSampler.response_timeout"></stringProp>
891 <stringProp name="HTTPSampler.protocol"></stringProp>
892 <stringProp name="HTTPSampler.contentEncoding"></stringProp>
893 <stringProp name="HTTPSampler.path">${sitepath}/user/index.php</stringProp>
894 <stringProp name="HTTPSampler.method">GET</stringProp>
895 <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
896 <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
897 <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
898 <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
899 <boolProp name="HTTPSampler.monitor">false</boolProp>
900 <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
901 </HTTPSamplerProxy>
902 <hashTree/>
903 <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Logout" enabled="true">
904 <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
905 <collectionProp name="Arguments.arguments">
906 <elementProp name="sesskey" elementType="HTTPArgument">
907 <boolProp name="HTTPArgument.always_encode">false</boolProp>
908 <stringProp name="Argument.value">${SESSION_SESSKEY}</stringProp>
909 <stringProp name="Argument.metadata">=</stringProp>
910 <boolProp name="HTTPArgument.use_equals">true</boolProp>
911 <stringProp name="Argument.name">sesskey</stringProp>
912 </elementProp>
913 </collectionProp>
914 </elementProp>
915 <stringProp name="HTTPSampler.domain"></stringProp>
916 <stringProp name="HTTPSampler.port"></stringProp>
917 <stringProp name="HTTPSampler.connect_timeout"></stringProp>
918 <stringProp name="HTTPSampler.response_timeout"></stringProp>
919 <stringProp name="HTTPSampler.protocol"></stringProp>
920 <stringProp name="HTTPSampler.contentEncoding"></stringProp>
921 <stringProp name="HTTPSampler.path">${sitepath}/login/logout.php</stringProp>
922 <stringProp name="HTTPSampler.method">GET</stringProp>
923 <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
924 <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
925 <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
926 <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
927 <boolProp name="HTTPSampler.monitor">false</boolProp>
928 <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
929 </HTTPSamplerProxy>
930 <hashTree/>
931 </hashTree>
932 <BeanShellListener guiclass="TestBeanGUI" testclass="BeanShellListener" testname="Create php array results" enabled="true">
933 <stringProp name="filename">recorder.bsf</stringProp>
934 <stringProp name="parameters"></stringProp>
935 <boolProp name="resetInterpreter">false</boolProp>
936 <stringProp name="script"></stringProp>
937 </BeanShellListener>
938 <hashTree/>
939 <ResultCollector guiclass="SimpleDataWriter" testclass="ResultCollector" testname="Simple Data Writer" enabled="true">
940 <boolProp name="ResultCollector.error_logging">false</boolProp>
941 <objProp>
942 <name>saveConfig</name>
943 <value class="SampleSaveConfiguration">
944 <time>true</time>
945 <latency>true</latency>
946 <timestamp>true</timestamp>
947 <success>true</success>
948 <label>true</label>
949 <code>true</code>
950 <message>true</message>
951 <threadName>true</threadName>
952 <dataType>true</dataType>
953 <encoding>false</encoding>
954 <assertions>true</assertions>
955 <subresults>true</subresults>
956 <responseData>false</responseData>
957 <samplerData>false</samplerData>
958 <xml>true</xml>
959 <fieldNames>false</fieldNames>
960 <responseHeaders>false</responseHeaders>
961 <requestHeaders>false</requestHeaders>
962 <responseDataOnError>false</responseDataOnError>
963 <saveAssertionResultsFailureMessage>false</saveAssertionResultsFailureMessage>
964 <assertionsResultsToSave>0</assertionsResultsToSave>
965 <bytes>true</bytes>
966 </value>
967 </objProp>
968 <stringProp name="filename">runs_samples/data.${runtimestamp}.jtl</stringProp>
969 </ResultCollector>
970 <hashTree/>
971 </hashTree>
972 </hashTree>
973 </hashTree>
974</jmeterTestPlan>