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