ccd8cfb3c0bf07eef45d49c26404f83ce6073f25
[moodle.git] / admin / tool / generator / testplan.template.jmx
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>
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>
20           <elementProp name="size" elementType="Argument">
21             <stringProp name="Argument.name">size</stringProp>
22             <stringProp name="Argument.value">{{SIZE_PLACEHOLDER}}</stringProp>
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>
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>
67         <stringProp name="throughput">${__property(throughput,throughput,120.0)}</stringProp>
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>
77         <stringProp name="ThreadGroup.num_threads">${__P(users,{{USERS_PLACEHOLDER}})}</stringProp>
78         <stringProp name="ThreadGroup.ramp_time">${__P(rampup,{{RAMPUP_PLACEHOLDER}})}</stringProp>
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/>
142           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Login" 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 name="username" elementType="HTTPArgument">
146                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
147                   <stringProp name="Argument.value">${username}</stringProp>
148                   <stringProp name="Argument.metadata">=</stringProp>
149                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
150                   <stringProp name="Argument.name">username</stringProp>
151                 </elementProp>
152                 <elementProp name="password" elementType="HTTPArgument">
153                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
154                   <stringProp name="Argument.value">${password}</stringProp>
155                   <stringProp name="Argument.metadata">=</stringProp>
156                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
157                   <stringProp name="Argument.name">password</stringProp>
158                 </elementProp>
159               </collectionProp>
160             </elementProp>
161             <stringProp name="HTTPSampler.domain"></stringProp>
162             <stringProp name="HTTPSampler.port"></stringProp>
163             <stringProp name="HTTPSampler.connect_timeout"></stringProp>
164             <stringProp name="HTTPSampler.response_timeout"></stringProp>
165             <stringProp name="HTTPSampler.protocol"></stringProp>
166             <stringProp name="HTTPSampler.contentEncoding"></stringProp>
167             <stringProp name="HTTPSampler.path">${sitepath}/login/index.php</stringProp>
168             <stringProp name="HTTPSampler.method">POST</stringProp>
169             <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
170             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
171             <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
172             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
173             <boolProp name="HTTPSampler.monitor">false</boolProp>
174             <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
175           </HTTPSamplerProxy>
176           <hashTree/>
177           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Frontpage logged" enabled="true">
178             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
179               <collectionProp name="Arguments.arguments"/>
180             </elementProp>
181             <stringProp name="HTTPSampler.domain"></stringProp>
182             <stringProp name="HTTPSampler.port"></stringProp>
183             <stringProp name="HTTPSampler.connect_timeout"></stringProp>
184             <stringProp name="HTTPSampler.response_timeout"></stringProp>
185             <stringProp name="HTTPSampler.protocol"></stringProp>
186             <stringProp name="HTTPSampler.contentEncoding"></stringProp>
187             <stringProp name="HTTPSampler.path"></stringProp>
188             <stringProp name="HTTPSampler.method">GET</stringProp>
189             <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
190             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
191             <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
192             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
193             <boolProp name="HTTPSampler.monitor">false</boolProp>
194             <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
195           </HTTPSamplerProxy>
196           <hashTree/>
197           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="View course" enabled="true">
198             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
199               <collectionProp name="Arguments.arguments">
200                 <elementProp name="id" elementType="HTTPArgument">
201                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
202                   <stringProp name="Argument.value">${courseid}</stringProp>
203                   <stringProp name="Argument.metadata">=</stringProp>
204                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
205                   <stringProp name="Argument.name">id</stringProp>
206                 </elementProp>
207               </collectionProp>
208             </elementProp>
209             <stringProp name="HTTPSampler.domain"></stringProp>
210             <stringProp name="HTTPSampler.port"></stringProp>
211             <stringProp name="HTTPSampler.connect_timeout"></stringProp>
212             <stringProp name="HTTPSampler.response_timeout"></stringProp>
213             <stringProp name="HTTPSampler.protocol"></stringProp>
214             <stringProp name="HTTPSampler.contentEncoding"></stringProp>
215             <stringProp name="HTTPSampler.path">${sitepath}/course/view.php</stringProp>
216             <stringProp name="HTTPSampler.method">GET</stringProp>
217             <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
218             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
219             <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
220             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
221             <boolProp name="HTTPSampler.monitor">false</boolProp>
222             <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
223             <stringProp name="TestPlan.comments">       </stringProp>
224           </HTTPSamplerProxy>
225           <hashTree>
226             <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="Regular Expression Extractor" enabled="true">
227               <stringProp name="RegexExtractor.useHeaders">false</stringProp>
228               <stringProp name="RegexExtractor.refname">SESSION_SESSKEY</stringProp>
229               <stringProp name="RegexExtractor.regex">sesskey=([^&quot;]+)&quot;</stringProp>
230               <stringProp name="RegexExtractor.template">$1$</stringProp>
231               <stringProp name="RegexExtractor.default"></stringProp>
232               <stringProp name="RegexExtractor.match_number">2</stringProp>
233               <stringProp name="Sample.scope">all</stringProp>
234             </RegexExtractor>
235             <hashTree/>
236           </hashTree>
237           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Logout" enabled="true">
238             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
239               <collectionProp name="Arguments.arguments">
240                 <elementProp name="sesskey" elementType="HTTPArgument">
241                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
242                   <stringProp name="Argument.value">${SESSION_SESSKEY}</stringProp>
243                   <stringProp name="Argument.metadata">=</stringProp>
244                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
245                   <stringProp name="Argument.name">sesskey</stringProp>
246                 </elementProp>
247               </collectionProp>
248             </elementProp>
249             <stringProp name="HTTPSampler.domain"></stringProp>
250             <stringProp name="HTTPSampler.port"></stringProp>
251             <stringProp name="HTTPSampler.connect_timeout"></stringProp>
252             <stringProp name="HTTPSampler.response_timeout"></stringProp>
253             <stringProp name="HTTPSampler.protocol"></stringProp>
254             <stringProp name="HTTPSampler.contentEncoding"></stringProp>
255             <stringProp name="HTTPSampler.path">${sitepath}/login/logout.php</stringProp>
256             <stringProp name="HTTPSampler.method">GET</stringProp>
257             <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
258             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
259             <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
260             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
261             <boolProp name="HTTPSampler.monitor">false</boolProp>
262             <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
263           </HTTPSamplerProxy>
264           <hashTree/>
265         </hashTree>
266       </hashTree>
267       <ThreadGroup guiclass="ThreadGroupGui" testclass="ThreadGroup" testname="Moodle Test" enabled="true">
268         <stringProp name="ThreadGroup.on_sample_error">continue</stringProp>
269         <elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true">
270           <boolProp name="LoopController.continue_forever">false</boolProp>
271           <stringProp name="LoopController.loops">${__property(loops,loops,{{LOOPS_PLACEHOLDER}})}</stringProp>
272         </elementProp>
273         <stringProp name="ThreadGroup.num_threads">${__property(users,users,{{USERS_PLACEHOLDER}})}</stringProp>
274         <stringProp name="ThreadGroup.ramp_time">${__property(rampup,rampup,{{RAMPUP_PLACEHOLDER}})}</stringProp>
275         <longProp name="ThreadGroup.start_time">1376636813000</longProp>
276         <longProp name="ThreadGroup.end_time">1376636813000</longProp>
277         <boolProp name="ThreadGroup.scheduler">false</boolProp>
278         <stringProp name="ThreadGroup.duration"></stringProp>
279         <stringProp name="ThreadGroup.delay"></stringProp>
280       </ThreadGroup>
281       <hashTree>
282         <ConfigTestElement guiclass="HttpDefaultsGui" testclass="ConfigTestElement" testname="Default site request" enabled="true">
283           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
284             <collectionProp name="Arguments.arguments"/>
285           </elementProp>
286           <stringProp name="HTTPSampler.domain">${host}</stringProp>
287           <stringProp name="HTTPSampler.port"></stringProp>
288           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
289           <stringProp name="HTTPSampler.response_timeout"></stringProp>
290           <stringProp name="HTTPSampler.protocol"></stringProp>
291           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
292           <stringProp name="HTTPSampler.path">${sitepath}</stringProp>
293           <stringProp name="HTTPSampler.concurrentPool">4</stringProp>
294         </ConfigTestElement>
295         <hashTree/>
296         <CSVDataSet guiclass="TestBeanGUI" testclass="CSVDataSet" testname="CSV users data" enabled="true">
297           <stringProp name="delimiter">,</stringProp>
298           <stringProp name="fileEncoding"></stringProp>
299           <stringProp name="filename">${__P(usersfile,YOU_FORGOT_TO_SPECIFY_USERS_CSV_FILE.csv)}</stringProp>
300           <boolProp name="quotedData">false</boolProp>
301           <boolProp name="recycle">true</boolProp>
302           <stringProp name="shareMode">All threads</stringProp>
303           <boolProp name="stopThread">false</boolProp>
304           <stringProp name="variableNames">username,password</stringProp>
305         </CSVDataSet>
306         <hashTree/>
307         <LoopController guiclass="LoopControlPanel" testclass="LoopController" testname="Test plan loop" enabled="true">
308           <boolProp name="LoopController.continue_forever">true</boolProp>
309           <stringProp name="LoopController.loops">1</stringProp>
310         </LoopController>
311         <hashTree>
312           <CookieManager guiclass="CookiePanel" testclass="CookieManager" testname="HTTP Cookie Manager" enabled="true">
313             <collectionProp name="CookieManager.cookies"/>
314             <boolProp name="CookieManager.clearEachIteration">true</boolProp>
315             <stringProp name="CookieManager.policy">rfc2109</stringProp>
316           </CookieManager>
317           <hashTree/>
318           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Frontpage not logged" enabled="true">
319             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
320               <collectionProp name="Arguments.arguments"/>
321             </elementProp>
322             <stringProp name="HTTPSampler.domain"></stringProp>
323             <stringProp name="HTTPSampler.port"></stringProp>
324             <stringProp name="HTTPSampler.connect_timeout"></stringProp>
325             <stringProp name="HTTPSampler.response_timeout"></stringProp>
326             <stringProp name="HTTPSampler.protocol"></stringProp>
327             <stringProp name="HTTPSampler.contentEncoding"></stringProp>
328             <stringProp name="HTTPSampler.path"></stringProp>
329             <stringProp name="HTTPSampler.method">GET</stringProp>
330             <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
331             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
332             <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
333             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
334             <boolProp name="HTTPSampler.monitor">false</boolProp>
335             <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
336           </HTTPSamplerProxy>
337           <hashTree/>
338           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Login" enabled="true">
339             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
340               <collectionProp name="Arguments.arguments">
341                 <elementProp name="username" elementType="HTTPArgument">
342                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
343                   <stringProp name="Argument.value">${username}</stringProp>
344                   <stringProp name="Argument.metadata">=</stringProp>
345                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
346                   <stringProp name="Argument.name">username</stringProp>
347                 </elementProp>
348                 <elementProp name="password" elementType="HTTPArgument">
349                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
350                   <stringProp name="Argument.value">${password}</stringProp>
351                   <stringProp name="Argument.metadata">=</stringProp>
352                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
353                   <stringProp name="Argument.name">password</stringProp>
354                 </elementProp>
355               </collectionProp>
356             </elementProp>
357             <stringProp name="HTTPSampler.domain"></stringProp>
358             <stringProp name="HTTPSampler.port"></stringProp>
359             <stringProp name="HTTPSampler.connect_timeout"></stringProp>
360             <stringProp name="HTTPSampler.response_timeout"></stringProp>
361             <stringProp name="HTTPSampler.protocol"></stringProp>
362             <stringProp name="HTTPSampler.contentEncoding"></stringProp>
363             <stringProp name="HTTPSampler.path">${sitepath}/login/index.php</stringProp>
364             <stringProp name="HTTPSampler.method">POST</stringProp>
365             <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
366             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
367             <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
368             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
369             <boolProp name="HTTPSampler.monitor">false</boolProp>
370             <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
371           </HTTPSamplerProxy>
372           <hashTree>
373             <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Logged in" enabled="true">
374               <collectionProp name="Asserion.test_strings">
375                 <stringProp name="615717117">&lt;div class=&quot;logininfo&quot;&gt;You are logged in as</stringProp>
376               </collectionProp>
377               <stringProp name="Assertion.test_field">Assertion.response_data</stringProp>
378               <boolProp name="Assertion.assume_success">false</boolProp>
379               <intProp name="Assertion.test_type">2</intProp>
380             </ResponseAssertion>
381             <hashTree/>
382           </hashTree>
383           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Frontpage logged" enabled="true">
384             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
385               <collectionProp name="Arguments.arguments"/>
386             </elementProp>
387             <stringProp name="HTTPSampler.domain"></stringProp>
388             <stringProp name="HTTPSampler.port"></stringProp>
389             <stringProp name="HTTPSampler.connect_timeout"></stringProp>
390             <stringProp name="HTTPSampler.response_timeout"></stringProp>
391             <stringProp name="HTTPSampler.protocol"></stringProp>
392             <stringProp name="HTTPSampler.contentEncoding"></stringProp>
393             <stringProp name="HTTPSampler.path"></stringProp>
394             <stringProp name="HTTPSampler.method">GET</stringProp>
395             <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
396             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
397             <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
398             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
399             <boolProp name="HTTPSampler.monitor">false</boolProp>
400             <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
401           </HTTPSamplerProxy>
402           <hashTree/>
403           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="View course" enabled="true">
404             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
405               <collectionProp name="Arguments.arguments">
406                 <elementProp name="id" elementType="HTTPArgument">
407                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
408                   <stringProp name="Argument.value">${courseid}</stringProp>
409                   <stringProp name="Argument.metadata">=</stringProp>
410                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
411                   <stringProp name="Argument.name">id</stringProp>
412                 </elementProp>
413               </collectionProp>
414             </elementProp>
415             <stringProp name="HTTPSampler.domain"></stringProp>
416             <stringProp name="HTTPSampler.port"></stringProp>
417             <stringProp name="HTTPSampler.connect_timeout"></stringProp>
418             <stringProp name="HTTPSampler.response_timeout"></stringProp>
419             <stringProp name="HTTPSampler.protocol"></stringProp>
420             <stringProp name="HTTPSampler.contentEncoding"></stringProp>
421             <stringProp name="HTTPSampler.path">${sitepath}/course/view.php</stringProp>
422             <stringProp name="HTTPSampler.method">GET</stringProp>
423             <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
424             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
425             <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
426             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
427             <boolProp name="HTTPSampler.monitor">false</boolProp>
428             <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
429             <stringProp name="TestPlan.comments">               </stringProp>
430           </HTTPSamplerProxy>
431           <hashTree/>
432           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="View a page activity" enabled="true">
433             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
434               <collectionProp name="Arguments.arguments">
435                 <elementProp name="id" elementType="HTTPArgument">
436                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
437                   <stringProp name="Argument.value">${pageactivityid}</stringProp>
438                   <stringProp name="Argument.metadata">=</stringProp>
439                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
440                   <stringProp name="Argument.name">id</stringProp>
441                 </elementProp>
442               </collectionProp>
443             </elementProp>
444             <stringProp name="HTTPSampler.domain"></stringProp>
445             <stringProp name="HTTPSampler.port"></stringProp>
446             <stringProp name="HTTPSampler.connect_timeout"></stringProp>
447             <stringProp name="HTTPSampler.response_timeout"></stringProp>
448             <stringProp name="HTTPSampler.protocol"></stringProp>
449             <stringProp name="HTTPSampler.contentEncoding"></stringProp>
450             <stringProp name="HTTPSampler.path">${sitepath}/mod/page/view.php</stringProp>
451             <stringProp name="HTTPSampler.method">GET</stringProp>
452             <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
453             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
454             <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
455             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
456             <boolProp name="HTTPSampler.monitor">false</boolProp>
457             <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
458           </HTTPSamplerProxy>
459           <hashTree/>
460           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="View course again" enabled="true">
461             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
462               <collectionProp name="Arguments.arguments">
463                 <elementProp name="id" elementType="HTTPArgument">
464                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
465                   <stringProp name="Argument.value">${courseid}</stringProp>
466                   <stringProp name="Argument.metadata">=</stringProp>
467                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
468                   <stringProp name="Argument.name">id</stringProp>
469                 </elementProp>
470               </collectionProp>
471             </elementProp>
472             <stringProp name="HTTPSampler.domain"></stringProp>
473             <stringProp name="HTTPSampler.port"></stringProp>
474             <stringProp name="HTTPSampler.connect_timeout"></stringProp>
475             <stringProp name="HTTPSampler.response_timeout"></stringProp>
476             <stringProp name="HTTPSampler.protocol"></stringProp>
477             <stringProp name="HTTPSampler.contentEncoding"></stringProp>
478             <stringProp name="HTTPSampler.path">${sitepath}/course/view.php</stringProp>
479             <stringProp name="HTTPSampler.method">GET</stringProp>
480             <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
481             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
482             <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
483             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
484             <boolProp name="HTTPSampler.monitor">false</boolProp>
485             <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
486           </HTTPSamplerProxy>
487           <hashTree/>
488           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="View a forum activity" enabled="true">
489             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
490               <collectionProp name="Arguments.arguments">
491                 <elementProp name="id" elementType="HTTPArgument">
492                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
493                   <stringProp name="Argument.value">${forumactivityid}</stringProp>
494                   <stringProp name="Argument.metadata">=</stringProp>
495                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
496                   <stringProp name="Argument.name">id</stringProp>
497                 </elementProp>
498               </collectionProp>
499             </elementProp>
500             <stringProp name="HTTPSampler.domain"></stringProp>
501             <stringProp name="HTTPSampler.port"></stringProp>
502             <stringProp name="HTTPSampler.connect_timeout"></stringProp>
503             <stringProp name="HTTPSampler.response_timeout"></stringProp>
504             <stringProp name="HTTPSampler.protocol"></stringProp>
505             <stringProp name="HTTPSampler.contentEncoding"></stringProp>
506             <stringProp name="HTTPSampler.path">${sitepath}/mod/forum/view.php</stringProp>
507             <stringProp name="HTTPSampler.method">GET</stringProp>
508             <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
509             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
510             <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
511             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
512             <boolProp name="HTTPSampler.monitor">false</boolProp>
513             <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
514           </HTTPSamplerProxy>
515           <hashTree/>
516           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="View a forum discussion" 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="d" elementType="HTTPArgument">
520                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
521                   <stringProp name="Argument.value">${forumdiscussionid}</stringProp>
522                   <stringProp name="Argument.metadata">=</stringProp>
523                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
524                   <stringProp name="Argument.name">d</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/forum/discuss.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="Fill a form to reply a forum discussion" 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="reply" elementType="HTTPArgument">
548                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
549                   <stringProp name="Argument.value">${forumreplyid}</stringProp>
550                   <stringProp name="Argument.metadata">=</stringProp>
551                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
552                   <stringProp name="Argument.name">reply</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}/mod/forum/post.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             <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="Get session userid" enabled="true">
573               <stringProp name="RegexExtractor.useHeaders">false</stringProp>
574               <stringProp name="RegexExtractor.refname">SESSION_USERID</stringProp>
575               <stringProp name="RegexExtractor.regex">name=&quot;userid&quot;\stype=&quot;hidden&quot;\svalue=&quot;(\d+)&quot;</stringProp>
576               <stringProp name="RegexExtractor.template">$1$</stringProp>
577               <stringProp name="RegexExtractor.default">0</stringProp>
578               <stringProp name="RegexExtractor.match_number">1</stringProp>
579             </RegexExtractor>
580             <hashTree/>
581             <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="Get session sesskey" enabled="true">
582               <stringProp name="RegexExtractor.useHeaders">false</stringProp>
583               <stringProp name="RegexExtractor.refname">SESSION_SESSKEY</stringProp>
584               <stringProp name="RegexExtractor.regex">name=&quot;sesskey&quot;\stype=&quot;hidden&quot;\svalue=&quot;([^&quot;]+)&quot;</stringProp>
585               <stringProp name="RegexExtractor.template">$1$</stringProp>
586               <stringProp name="RegexExtractor.default">0</stringProp>
587               <stringProp name="RegexExtractor.match_number">1</stringProp>
588             </RegexExtractor>
589             <hashTree/>
590             <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="Get forum form attachments" enabled="true">
591               <stringProp name="RegexExtractor.useHeaders">false</stringProp>
592               <stringProp name="RegexExtractor.refname">SESSION_FORUMFORMATTACHMENTS</stringProp>
593               <stringProp name="RegexExtractor.regex">value=&quot;(\d+)&quot;\sname=&quot;attachments&quot;\stype=&quot;hidden&quot;</stringProp>
594               <stringProp name="RegexExtractor.template">$1$</stringProp>
595               <stringProp name="RegexExtractor.default">0</stringProp>
596               <stringProp name="RegexExtractor.match_number">1</stringProp>
597             </RegexExtractor>
598             <hashTree/>
599             <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="Get forum form itemid" enabled="true">
600               <stringProp name="RegexExtractor.useHeaders">false</stringProp>
601               <stringProp name="RegexExtractor.refname">SESSION_FORUMFORMITEMID</stringProp>
602               <stringProp name="RegexExtractor.regex">type=&quot;hidden&quot;\sname=&quot;message\[itemid\]&quot;\svalue=&quot;(\d+)&quot;</stringProp>
603               <stringProp name="RegexExtractor.template">$1$</stringProp>
604               <stringProp name="RegexExtractor.default">0</stringProp>
605               <stringProp name="RegexExtractor.match_number">1</stringProp>
606             </RegexExtractor>
607             <hashTree/>
608           </hashTree>
609           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Send the forum discussion reply" enabled="true">
610             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
611               <collectionProp name="Arguments.arguments">
612                 <elementProp name="course" elementType="HTTPArgument">
613                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
614                   <stringProp name="Argument.value">${courseid}</stringProp>
615                   <stringProp name="Argument.metadata">=</stringProp>
616                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
617                   <stringProp name="Argument.name">course</stringProp>
618                 </elementProp>
619                 <elementProp name="forum" elementType="HTTPArgument">
620                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
621                   <stringProp name="Argument.value">0</stringProp>
622                   <stringProp name="Argument.metadata">=</stringProp>
623                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
624                   <stringProp name="Argument.name">forum</stringProp>
625                 </elementProp>
626                 <elementProp name="discussion" elementType="HTTPArgument">
627                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
628                   <stringProp name="Argument.value">${forumdiscussionid}</stringProp>
629                   <stringProp name="Argument.metadata">=</stringProp>
630                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
631                   <stringProp name="Argument.name">discussion</stringProp>
632                 </elementProp>
633                 <elementProp name="userid" elementType="HTTPArgument">
634                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
635                   <stringProp name="Argument.value">${SESSION_USERID}</stringProp>
636                   <stringProp name="Argument.metadata">=</stringProp>
637                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
638                   <stringProp name="Argument.name">userid</stringProp>
639                 </elementProp>
640                 <elementProp name="groupid" elementType="HTTPArgument">
641                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
642                   <stringProp name="Argument.value">0</stringProp>
643                   <stringProp name="Argument.metadata">=</stringProp>
644                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
645                   <stringProp name="Argument.name">groupid</stringProp>
646                 </elementProp>
647                 <elementProp name="edit" elementType="HTTPArgument">
648                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
649                   <stringProp name="Argument.value">0</stringProp>
650                   <stringProp name="Argument.metadata">=</stringProp>
651                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
652                   <stringProp name="Argument.name">edit</stringProp>
653                 </elementProp>
654                 <elementProp name="reply" elementType="HTTPArgument">
655                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
656                   <stringProp name="Argument.value">${forumreplyid}</stringProp>
657                   <stringProp name="Argument.metadata">=</stringProp>
658                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
659                   <stringProp name="Argument.name">reply</stringProp>
660                 </elementProp>
661                 <elementProp name="sesskey" elementType="HTTPArgument">
662                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
663                   <stringProp name="Argument.value">${SESSION_SESSKEY}</stringProp>
664                   <stringProp name="Argument.metadata">=</stringProp>
665                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
666                   <stringProp name="Argument.name">sesskey</stringProp>
667                 </elementProp>
668                 <elementProp name="_qf__mod_forum_post_form" elementType="HTTPArgument">
669                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
670                   <stringProp name="Argument.value">1</stringProp>
671                   <stringProp name="Argument.metadata">=</stringProp>
672                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
673                   <stringProp name="Argument.name">_qf__mod_forum_post_form</stringProp>
674                 </elementProp>
675                 <elementProp name="subject" elementType="HTTPArgument">
676                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
677                   <stringProp name="Argument.value">Re: I am the test plan reply subject</stringProp>
678                   <stringProp name="Argument.metadata">=</stringProp>
679                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
680                   <stringProp name="Argument.name">subject</stringProp>
681                 </elementProp>
682                 <elementProp name="message[itemid]" elementType="HTTPArgument">
683                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
684                   <stringProp name="Argument.value">${SESSION_FORUMFORMITEMID}</stringProp>
685                   <stringProp name="Argument.metadata">=</stringProp>
686                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
687                   <stringProp name="Argument.name">message[itemid]</stringProp>
688                 </elementProp>
689                 <elementProp name="message[format]" elementType="HTTPArgument">
690                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
691                   <stringProp name="Argument.value">1</stringProp>
692                   <stringProp name="Argument.metadata">=</stringProp>
693                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
694                   <stringProp name="Argument.name">message[format]</stringProp>
695                 </elementProp>
696                 <elementProp name="message[text]" elementType="HTTPArgument">
697                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
698                   <stringProp name="Argument.value">I am the test plan reply message</stringProp>
699                   <stringProp name="Argument.metadata">=</stringProp>
700                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
701                   <stringProp name="Argument.name">message[text]</stringProp>
702                 </elementProp>
703                 <elementProp name="parent" elementType="HTTPArgument">
704                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
705                   <stringProp name="Argument.value">${forumreplyid}</stringProp>
706                   <stringProp name="Argument.metadata">=</stringProp>
707                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
708                   <stringProp name="Argument.name">parent</stringProp>
709                 </elementProp>
710                 <elementProp name="subscribe" elementType="HTTPArgument">
711                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
712                   <stringProp name="Argument.value">1</stringProp>
713                   <stringProp name="Argument.metadata">=</stringProp>
714                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
715                   <stringProp name="Argument.name">subscribe</stringProp>
716                 </elementProp>
717                 <elementProp name="attachments" elementType="HTTPArgument">
718                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
719                   <stringProp name="Argument.value">${SESSION_FORUMFORMATTACHMENTS}</stringProp>
720                   <stringProp name="Argument.metadata">=</stringProp>
721                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
722                   <stringProp name="Argument.name">attachments</stringProp>
723                 </elementProp>
724                 <elementProp name="timestart" 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">timestart</stringProp>
730                 </elementProp>
731                 <elementProp name="timeend" 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">timeend</stringProp>
737                 </elementProp>
738                 <elementProp name="submitbutton" elementType="HTTPArgument">
739                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
740                   <stringProp name="Argument.value">Post to forum</stringProp>
741                   <stringProp name="Argument.metadata">=</stringProp>
742                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
743                   <stringProp name="Argument.name">submitbutton</stringProp>
744                 </elementProp>
745               </collectionProp>
746             </elementProp>
747             <stringProp name="HTTPSampler.domain"></stringProp>
748             <stringProp name="HTTPSampler.port"></stringProp>
749             <stringProp name="HTTPSampler.connect_timeout"></stringProp>
750             <stringProp name="HTTPSampler.response_timeout"></stringProp>
751             <stringProp name="HTTPSampler.protocol"></stringProp>
752             <stringProp name="HTTPSampler.contentEncoding"></stringProp>
753             <stringProp name="HTTPSampler.path">${sitepath}/mod/forum/post.php</stringProp>
754             <stringProp name="HTTPSampler.method">POST</stringProp>
755             <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
756             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
757             <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
758             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
759             <boolProp name="HTTPSampler.monitor">false</boolProp>
760             <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
761           </HTTPSamplerProxy>
762           <hashTree/>
763           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="View course once more" enabled="true">
764             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
765               <collectionProp name="Arguments.arguments">
766                 <elementProp name="id" elementType="HTTPArgument">
767                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
768                   <stringProp name="Argument.value">${courseid}</stringProp>
769                   <stringProp name="Argument.metadata">=</stringProp>
770                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
771                   <stringProp name="Argument.name">id</stringProp>
772                 </elementProp>
773               </collectionProp>
774             </elementProp>
775             <stringProp name="HTTPSampler.domain"></stringProp>
776             <stringProp name="HTTPSampler.port"></stringProp>
777             <stringProp name="HTTPSampler.connect_timeout"></stringProp>
778             <stringProp name="HTTPSampler.response_timeout"></stringProp>
779             <stringProp name="HTTPSampler.protocol"></stringProp>
780             <stringProp name="HTTPSampler.contentEncoding"></stringProp>
781             <stringProp name="HTTPSampler.path">${sitepath}/course/view.php</stringProp>
782             <stringProp name="HTTPSampler.method">GET</stringProp>
783             <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
784             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
785             <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
786             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
787             <boolProp name="HTTPSampler.monitor">false</boolProp>
788             <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
789           </HTTPSamplerProxy>
790           <hashTree/>
791           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="View course participants" enabled="true">
792             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
793               <collectionProp name="Arguments.arguments">
794                 <elementProp name="id" elementType="HTTPArgument">
795                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
796                   <stringProp name="Argument.value">${courseid}</stringProp>
797                   <stringProp name="Argument.metadata">=</stringProp>
798                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
799                   <stringProp name="Argument.name">id</stringProp>
800                 </elementProp>
801               </collectionProp>
802             </elementProp>
803             <stringProp name="HTTPSampler.domain"></stringProp>
804             <stringProp name="HTTPSampler.port"></stringProp>
805             <stringProp name="HTTPSampler.connect_timeout"></stringProp>
806             <stringProp name="HTTPSampler.response_timeout"></stringProp>
807             <stringProp name="HTTPSampler.protocol"></stringProp>
808             <stringProp name="HTTPSampler.contentEncoding"></stringProp>
809             <stringProp name="HTTPSampler.path">${sitepath}/user/index.php</stringProp>
810             <stringProp name="HTTPSampler.method">GET</stringProp>
811             <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
812             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
813             <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
814             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
815             <boolProp name="HTTPSampler.monitor">false</boolProp>
816             <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
817           </HTTPSamplerProxy>
818           <hashTree/>
819           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Logout" enabled="true">
820             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
821               <collectionProp name="Arguments.arguments">
822                 <elementProp name="sesskey" elementType="HTTPArgument">
823                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
824                   <stringProp name="Argument.value">${SESSION_SESSKEY}</stringProp>
825                   <stringProp name="Argument.metadata">=</stringProp>
826                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
827                   <stringProp name="Argument.name">sesskey</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}/login/logout.php</stringProp>
838             <stringProp name="HTTPSampler.method">GET</stringProp>
839             <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
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         </hashTree>
848         <BeanShellListener guiclass="TestBeanGUI" testclass="BeanShellListener" testname="Create php array results" enabled="true">
849           <stringProp name="filename">recorder.bsf</stringProp>
850           <stringProp name="parameters"></stringProp>
851           <boolProp name="resetInterpreter">false</boolProp>
852           <stringProp name="script"></stringProp>
853         </BeanShellListener>
854         <hashTree/>
855         <ResultCollector guiclass="SimpleDataWriter" testclass="ResultCollector" testname="Simple Data Writer" enabled="true">
856           <boolProp name="ResultCollector.error_logging">false</boolProp>
857           <objProp>
858             <name>saveConfig</name>
859             <value class="SampleSaveConfiguration">
860               <time>true</time>
861               <latency>true</latency>
862               <timestamp>true</timestamp>
863               <success>true</success>
864               <label>true</label>
865               <code>true</code>
866               <message>true</message>
867               <threadName>true</threadName>
868               <dataType>true</dataType>
869               <encoding>false</encoding>
870               <assertions>true</assertions>
871               <subresults>true</subresults>
872               <responseData>false</responseData>
873               <samplerData>false</samplerData>
874               <xml>true</xml>
875               <fieldNames>false</fieldNames>
876               <responseHeaders>false</responseHeaders>
877               <requestHeaders>false</requestHeaders>
878               <responseDataOnError>false</responseDataOnError>
879               <saveAssertionResultsFailureMessage>false</saveAssertionResultsFailureMessage>
880               <assertionsResultsToSave>0</assertionsResultsToSave>
881               <bytes>true</bytes>
882             </value>
883           </objProp>
884           <stringProp name="filename">runs_samples/data.${runtimestamp}.jtl</stringProp>
885         </ResultCollector>
886         <hashTree/>
887       </hashTree>
888     </hashTree>
889   </hashTree>
890 </jmeterTestPlan>