Proyectos de Subversion Moodle

Rev

| Ultima modificación | Ver Log |

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