Протокол AV5 для интеграции систем продажи электронных билетов перевозчиков и системы GDS
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1253 lines
83 KiB

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <jmeterTestPlan version="1.2" properties="3.2" jmeter="3.2 r1790748">
  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">false</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>
  11. <stringProp name="TestPlan.user_define_classpath"></stringProp>
  12. </TestPlan>
  13. <hashTree>
  14. <ThreadGroup guiclass="ThreadGroupGui" testclass="ThreadGroup" testname="Thread Group" enabled="true">
  15. <stringProp name="ThreadGroup.on_sample_error">startnextloop</stringProp>
  16. <elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true">
  17. <boolProp name="LoopController.continue_forever">false</boolProp>
  18. <intProp name="LoopController.loops">-1</intProp>
  19. </elementProp>
  20. <stringProp name="ThreadGroup.num_threads">1</stringProp>
  21. <stringProp name="ThreadGroup.ramp_time">0</stringProp>
  22. <longProp name="ThreadGroup.start_time">1467960198000</longProp>
  23. <longProp name="ThreadGroup.end_time">1467960198000</longProp>
  24. <boolProp name="ThreadGroup.scheduler">false</boolProp>
  25. <stringProp name="ThreadGroup.duration"></stringProp>
  26. <stringProp name="ThreadGroup.delay"></stringProp>
  27. </ThreadGroup>
  28. <hashTree>
  29. <Arguments guiclass="ArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
  30. <collectionProp name="Arguments.arguments">
  31. <elementProp name="password" elementType="Argument">
  32. <stringProp name="Argument.name">password</stringProp>
  33. <stringProp name="Argument.value">etraffic2008</stringProp>
  34. <stringProp name="Argument.metadata">=</stringProp>
  35. </elementProp>
  36. <elementProp name="date" elementType="Argument">
  37. <stringProp name="Argument.name">date</stringProp>
  38. <stringProp name="Argument.value">2017-11-25</stringProp>
  39. <stringProp name="Argument.metadata">=</stringProp>
  40. </elementProp>
  41. <elementProp name="user" elementType="Argument">
  42. <stringProp name="Argument.name">user</stringProp>
  43. <stringProp name="Argument.value">web_www</stringProp>
  44. <stringProp name="Argument.metadata">=</stringProp>
  45. </elementProp>
  46. <elementProp name="server" elementType="Argument">
  47. <stringProp name="Argument.name">server</stringProp>
  48. <stringProp name="Argument.value">http://localhost:8080/soap/rs</stringProp>
  49. <stringProp name="Argument.metadata">=</stringProp>
  50. </elementProp>
  51. </collectionProp>
  52. </Arguments>
  53. <hashTree/>
  54. <ConfigTestElement guiclass="HttpDefaultsGui" testclass="ConfigTestElement" testname="HTTP Request Defaults" enabled="true">
  55. <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
  56. <collectionProp name="Arguments.arguments"/>
  57. </elementProp>
  58. <stringProp name="HTTPSampler.domain"></stringProp>
  59. <stringProp name="HTTPSampler.port"></stringProp>
  60. <stringProp name="HTTPSampler.protocol"></stringProp>
  61. <stringProp name="HTTPSampler.contentEncoding">UTF-8</stringProp>
  62. <stringProp name="HTTPSampler.path"></stringProp>
  63. <stringProp name="HTTPSampler.concurrentPool">4</stringProp>
  64. <stringProp name="HTTPSampler.connect_timeout"></stringProp>
  65. <stringProp name="HTTPSampler.response_timeout"></stringProp>
  66. </ConfigTestElement>
  67. <hashTree/>
  68. <AuthManager guiclass="AuthPanel" testclass="AuthManager" testname="HTTP Authorization Manager" enabled="true">
  69. <collectionProp name="AuthManager.auth_list">
  70. <elementProp name="" elementType="Authorization">
  71. <stringProp name="Authorization.url"></stringProp>
  72. <stringProp name="Authorization.username">${__V(user)}</stringProp>
  73. <stringProp name="Authorization.password">${__V(password)}</stringProp>
  74. <stringProp name="Authorization.domain"></stringProp>
  75. <stringProp name="Authorization.realm"></stringProp>
  76. </elementProp>
  77. </collectionProp>
  78. <boolProp name="AuthManager.clearEachIteration">true</boolProp>
  79. </AuthManager>
  80. <hashTree/>
  81. <HeaderManager guiclass="HeaderPanel" testclass="HeaderManager" testname="HTTP Header Manager" enabled="true">
  82. <collectionProp name="HeaderManager.headers">
  83. <elementProp name="" elementType="Header">
  84. <stringProp name="Header.name">Content-type</stringProp>
  85. <stringProp name="Header.value">application/xml; charset=UTF-8</stringProp>
  86. </elementProp>
  87. </collectionProp>
  88. </HeaderManager>
  89. <hashTree/>
  90. <CookieManager guiclass="CookiePanel" testclass="CookieManager" testname="HTTP Cookie Manager" enabled="true">
  91. <collectionProp name="CookieManager.cookies"/>
  92. <boolProp name="CookieManager.clearEachIteration">false</boolProp>
  93. <stringProp name="CookieManager.implementation">org.apache.jmeter.protocol.http.control.HC4CookieHandler</stringProp>
  94. </CookieManager>
  95. <hashTree/>
  96. <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="echo" enabled="true">
  97. <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
  98. <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
  99. <collectionProp name="Arguments.arguments">
  100. <elementProp name="" elementType="HTTPArgument">
  101. <boolProp name="HTTPArgument.always_encode">false</boolProp>
  102. <stringProp name="Argument.value">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#xd;
  103. &lt;EchoRequest&gt;&#xd;
  104. &lt;message&gt;Test&lt;/message&gt;&#xd;
  105. &lt;/EchoRequest&gt;</stringProp>
  106. <stringProp name="Argument.metadata">=</stringProp>
  107. </elementProp>
  108. </collectionProp>
  109. </elementProp>
  110. <stringProp name="HTTPSampler.domain"></stringProp>
  111. <stringProp name="HTTPSampler.port"></stringProp>
  112. <stringProp name="HTTPSampler.protocol"></stringProp>
  113. <stringProp name="HTTPSampler.contentEncoding">UTF-8</stringProp>
  114. <stringProp name="HTTPSampler.path">${__V(server)}/sales/echo</stringProp>
  115. <stringProp name="HTTPSampler.method">POST</stringProp>
  116. <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
  117. <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
  118. <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
  119. <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
  120. <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
  121. <stringProp name="HTTPSampler.connect_timeout"></stringProp>
  122. <stringProp name="HTTPSampler.response_timeout"></stringProp>
  123. </HTTPSamplerProxy>
  124. <hashTree>
  125. <XMLAssertion guiclass="XMLAssertionGui" testclass="XMLAssertion" testname="Это XML?" enabled="false"/>
  126. <hashTree/>
  127. <XPathAssertion guiclass="XPathAssertionGui" testclass="XPathAssertion" testname="Проверка ответа" enabled="true">
  128. <boolProp name="XPath.negate">false</boolProp>
  129. <stringProp name="XPath.xpath">/EchoResponse/Body/message/text()=&apos;Test&apos;</stringProp>
  130. <boolProp name="XPath.validate">false</boolProp>
  131. <boolProp name="XPath.whitespace">false</boolProp>
  132. <boolProp name="XPath.tolerant">false</boolProp>
  133. <boolProp name="XPath.namespace">false</boolProp>
  134. </XPathAssertion>
  135. <hashTree/>
  136. </hashTree>
  137. <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="dispatchStations" enabled="true">
  138. <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
  139. <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
  140. <collectionProp name="Arguments.arguments">
  141. <elementProp name="" elementType="HTTPArgument">
  142. <boolProp name="HTTPArgument.always_encode">false</boolProp>
  143. <stringProp name="Argument.value">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#xd;
  144. &lt;GetDispatchStationsRequest/&gt;</stringProp>
  145. <stringProp name="Argument.metadata">=</stringProp>
  146. </elementProp>
  147. </collectionProp>
  148. </elementProp>
  149. <stringProp name="HTTPSampler.domain"></stringProp>
  150. <stringProp name="HTTPSampler.port"></stringProp>
  151. <stringProp name="HTTPSampler.protocol"></stringProp>
  152. <stringProp name="HTTPSampler.contentEncoding"></stringProp>
  153. <stringProp name="HTTPSampler.path">${__V(server)}/sales/getDispatchStations</stringProp>
  154. <stringProp name="HTTPSampler.method">POST</stringProp>
  155. <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
  156. <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
  157. <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
  158. <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
  159. <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
  160. <stringProp name="HTTPSampler.connect_timeout"></stringProp>
  161. <stringProp name="HTTPSampler.response_timeout"></stringProp>
  162. </HTTPSamplerProxy>
  163. <hashTree>
  164. <XMLAssertion guiclass="XMLAssertionGui" testclass="XMLAssertion" testname="Это XML?" enabled="false"/>
  165. <hashTree/>
  166. <XPathAssertion guiclass="XPathAssertionGui" testclass="XPathAssertion" testname="Кол-во станций &gt; 0" enabled="true">
  167. <boolProp name="XPath.negate">false</boolProp>
  168. <stringProp name="XPath.xpath">count(/GetDispatchStationsResponse/Body/Station)&gt;0</stringProp>
  169. <boolProp name="XPath.validate">false</boolProp>
  170. <boolProp name="XPath.whitespace">false</boolProp>
  171. <boolProp name="XPath.tolerant">false</boolProp>
  172. <boolProp name="XPath.namespace">false</boolProp>
  173. </XPathAssertion>
  174. <hashTree/>
  175. <XPathExtractor guiclass="XPathExtractorGui" testclass="XPathExtractor" testname="Получить все ID станций" enabled="true">
  176. <stringProp name="XPathExtractor.default"></stringProp>
  177. <stringProp name="XPathExtractor.refname">dispatchStationIds</stringProp>
  178. <stringProp name="XPathExtractor.xpathQuery">/GetDispatchStationsResponse/Body/Station/id</stringProp>
  179. <boolProp name="XPathExtractor.validate">false</boolProp>
  180. <boolProp name="XPathExtractor.tolerant">false</boolProp>
  181. <boolProp name="XPathExtractor.namespace">false</boolProp>
  182. <stringProp name="XPathExtractor.matchNumber">-1</stringProp>
  183. </XPathExtractor>
  184. <hashTree/>
  185. </hashTree>
  186. <ForeachController guiclass="ForeachControlPanel" testclass="ForeachController" testname="Для каждой станции отправления" enabled="true">
  187. <stringProp name="ForeachController.inputVal">dispatchStationIds</stringProp>
  188. <stringProp name="ForeachController.returnVal">dispatchStationId</stringProp>
  189. <boolProp name="ForeachController.useSeparator">true</boolProp>
  190. </ForeachController>
  191. <hashTree>
  192. <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="arrivalStation" enabled="true">
  193. <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
  194. <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
  195. <collectionProp name="Arguments.arguments">
  196. <elementProp name="" elementType="HTTPArgument">
  197. <boolProp name="HTTPArgument.always_encode">false</boolProp>
  198. <stringProp name="Argument.value">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#xd;
  199. &lt;GetArrivalStationsRequest&gt;&#xd;
  200. &lt;dispatchStationId&gt;${dispatchStationId}&lt;/dispatchStationId&gt;&#xd;
  201. &lt;/GetArrivalStationsRequest&gt;</stringProp>
  202. <stringProp name="Argument.metadata">=</stringProp>
  203. </elementProp>
  204. </collectionProp>
  205. </elementProp>
  206. <stringProp name="HTTPSampler.domain"></stringProp>
  207. <stringProp name="HTTPSampler.port"></stringProp>
  208. <stringProp name="HTTPSampler.protocol"></stringProp>
  209. <stringProp name="HTTPSampler.contentEncoding"></stringProp>
  210. <stringProp name="HTTPSampler.path">${__V(server)}/sales/getArrivalStations</stringProp>
  211. <stringProp name="HTTPSampler.method">POST</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. <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
  217. <stringProp name="HTTPSampler.connect_timeout"></stringProp>
  218. <stringProp name="HTTPSampler.response_timeout"></stringProp>
  219. </HTTPSamplerProxy>
  220. <hashTree>
  221. <XMLAssertion guiclass="XMLAssertionGui" testclass="XMLAssertion" testname="Это XML?" enabled="false"/>
  222. <hashTree/>
  223. <XPathExtractor guiclass="XPathExtractorGui" testclass="XPathExtractor" testname="Получить все ID станций" enabled="true">
  224. <stringProp name="XPathExtractor.default"></stringProp>
  225. <stringProp name="XPathExtractor.refname">arrivalStationIds</stringProp>
  226. <stringProp name="XPathExtractor.xpathQuery">/GetArrivalStationsResponse/Body/Station/id</stringProp>
  227. <boolProp name="XPathExtractor.validate">false</boolProp>
  228. <boolProp name="XPathExtractor.tolerant">false</boolProp>
  229. <boolProp name="XPathExtractor.namespace">false</boolProp>
  230. <stringProp name="XPathExtractor.matchNumber">-1</stringProp>
  231. </XPathExtractor>
  232. <hashTree/>
  233. </hashTree>
  234. <ForeachController guiclass="ForeachControlPanel" testclass="ForeachController" testname="Для каждой станции назначения" enabled="true">
  235. <stringProp name="ForeachController.inputVal">arrivalStationIds</stringProp>
  236. <stringProp name="ForeachController.returnVal">arrivalStationId</stringProp>
  237. <boolProp name="ForeachController.useSeparator">true</boolProp>
  238. </ForeachController>
  239. <hashTree>
  240. <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="searchTrips" enabled="true">
  241. <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
  242. <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
  243. <collectionProp name="Arguments.arguments">
  244. <elementProp name="" elementType="HTTPArgument">
  245. <boolProp name="HTTPArgument.always_encode">false</boolProp>
  246. <stringProp name="Argument.value">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#xd;
  247. &lt;SearchTripsRequest&gt;&#xd;
  248. &lt;dispatchStationId&gt;${dispatchStationId}&lt;/dispatchStationId&gt;&#xd;
  249. &lt;arrivalStationId&gt;${arrivalStationId}&lt;/arrivalStationId&gt;&#xd;
  250. &lt;date&gt;${__V(date)}&lt;/date&gt;&#xd;
  251. &lt;/SearchTripsRequest&gt;&#xd;
  252. </stringProp>
  253. <stringProp name="Argument.metadata">=</stringProp>
  254. </elementProp>
  255. </collectionProp>
  256. </elementProp>
  257. <stringProp name="HTTPSampler.domain"></stringProp>
  258. <stringProp name="HTTPSampler.port"></stringProp>
  259. <stringProp name="HTTPSampler.protocol"></stringProp>
  260. <stringProp name="HTTPSampler.contentEncoding"></stringProp>
  261. <stringProp name="HTTPSampler.path">${__V(server)}/sales/searchTrips</stringProp>
  262. <stringProp name="HTTPSampler.method">POST</stringProp>
  263. <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
  264. <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
  265. <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
  266. <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
  267. <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
  268. <stringProp name="HTTPSampler.connect_timeout"></stringProp>
  269. <stringProp name="HTTPSampler.response_timeout"></stringProp>
  270. </HTTPSamplerProxy>
  271. <hashTree>
  272. <XMLAssertion guiclass="XMLAssertionGui" testclass="XMLAssertion" testname="Это XML?" enabled="false"/>
  273. <hashTree/>
  274. <XPathExtractor guiclass="XPathExtractorGui" testclass="XPathExtractor" testname="Получить все ID рейсов" enabled="true">
  275. <stringProp name="XPathExtractor.default"></stringProp>
  276. <stringProp name="XPathExtractor.refname">tripIds</stringProp>
  277. <stringProp name="XPathExtractor.xpathQuery">/SearchTripsResponse/Body/Trip[status=&apos;ON_SALE&apos;]/id</stringProp>
  278. <boolProp name="XPathExtractor.validate">false</boolProp>
  279. <boolProp name="XPathExtractor.tolerant">false</boolProp>
  280. <boolProp name="XPathExtractor.namespace">false</boolProp>
  281. <stringProp name="XPathExtractor.matchNumber">-1</stringProp>
  282. </XPathExtractor>
  283. <hashTree/>
  284. </hashTree>
  285. <ForeachController guiclass="ForeachControlPanel" testclass="ForeachController" testname="Для каждого рейса" enabled="true">
  286. <stringProp name="ForeachController.inputVal">tripIds</stringProp>
  287. <stringProp name="ForeachController.returnVal">tripId</stringProp>
  288. <boolProp name="ForeachController.useSeparator">true</boolProp>
  289. <stringProp name="ForeachController.endIndex">1</stringProp>
  290. </ForeachController>
  291. <hashTree>
  292. <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Запрос остановочных пунктов" enabled="true">
  293. <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
  294. <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
  295. <collectionProp name="Arguments.arguments">
  296. <elementProp name="" elementType="HTTPArgument">
  297. <boolProp name="HTTPArgument.always_encode">false</boolProp>
  298. <stringProp name="Argument.value">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#xd;
  299. &lt;GetTripStopsRequest&gt;&#xd;
  300. &lt;tripId&gt;${tripId}&lt;/tripId&gt;&#xd;
  301. &lt;/GetTripStopsRequest&gt;</stringProp>
  302. <stringProp name="Argument.metadata">=</stringProp>
  303. </elementProp>
  304. </collectionProp>
  305. </elementProp>
  306. <stringProp name="HTTPSampler.domain"></stringProp>
  307. <stringProp name="HTTPSampler.port"></stringProp>
  308. <stringProp name="HTTPSampler.protocol"></stringProp>
  309. <stringProp name="HTTPSampler.contentEncoding"></stringProp>
  310. <stringProp name="HTTPSampler.path">${__V(server)}/sales/getTripStops</stringProp>
  311. <stringProp name="HTTPSampler.method">POST</stringProp>
  312. <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
  313. <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
  314. <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
  315. <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
  316. <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
  317. <stringProp name="HTTPSampler.connect_timeout"></stringProp>
  318. <stringProp name="HTTPSampler.response_timeout"></stringProp>
  319. </HTTPSamplerProxy>
  320. <hashTree>
  321. <XMLAssertion guiclass="XMLAssertionGui" testclass="XMLAssertion" testname="Это XML?" enabled="false"/>
  322. <hashTree/>
  323. <XPathAssertion guiclass="XPathAssertionGui" testclass="XPathAssertion" testname="Кол-во остановок &gt; 0" enabled="true">
  324. <boolProp name="XPath.negate">false</boolProp>
  325. <stringProp name="XPath.xpath">count(/GetTripStopsResponse/Body/Stop)&gt;0</stringProp>
  326. <boolProp name="XPath.validate">false</boolProp>
  327. <boolProp name="XPath.whitespace">false</boolProp>
  328. <boolProp name="XPath.tolerant">false</boolProp>
  329. <boolProp name="XPath.namespace">false</boolProp>
  330. </XPathAssertion>
  331. <hashTree/>
  332. </hashTree>
  333. <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Запрос типов билетов" enabled="true">
  334. <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
  335. <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
  336. <collectionProp name="Arguments.arguments">
  337. <elementProp name="" elementType="HTTPArgument">
  338. <boolProp name="HTTPArgument.always_encode">false</boolProp>
  339. <stringProp name="Argument.value">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#xd;
  340. &lt;GetTicketTypesRequest&gt;&#xd;
  341. &lt;tripId&gt;${tripId}&lt;/tripId&gt;&#xd;
  342. &lt;dispatchStationId&gt;${dispatchStationId}&lt;/dispatchStationId&gt;&#xd;
  343. &lt;arrivalStationId&gt;${arrivalStationId}&lt;/arrivalStationId&gt; &#xd;
  344. &lt;/GetTicketTypesRequest&gt;</stringProp>
  345. <stringProp name="Argument.metadata">=</stringProp>
  346. </elementProp>
  347. </collectionProp>
  348. </elementProp>
  349. <stringProp name="HTTPSampler.domain"></stringProp>
  350. <stringProp name="HTTPSampler.port"></stringProp>
  351. <stringProp name="HTTPSampler.protocol"></stringProp>
  352. <stringProp name="HTTPSampler.contentEncoding"></stringProp>
  353. <stringProp name="HTTPSampler.path">${__V(server)}/sales/getTicketTypes</stringProp>
  354. <stringProp name="HTTPSampler.method">POST</stringProp>
  355. <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
  356. <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
  357. <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
  358. <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
  359. <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
  360. <stringProp name="HTTPSampler.connect_timeout"></stringProp>
  361. <stringProp name="HTTPSampler.response_timeout"></stringProp>
  362. </HTTPSamplerProxy>
  363. <hashTree>
  364. <XMLAssertion guiclass="XMLAssertionGui" testclass="XMLAssertion" testname="Это XML?" enabled="false"/>
  365. <hashTree/>
  366. <XPathAssertion guiclass="XPathAssertionGui" testclass="XPathAssertion" testname="Кол-во типов билетов &gt; 0" enabled="true">
  367. <boolProp name="XPath.negate">false</boolProp>
  368. <stringProp name="XPath.xpath">count(/GetTicketTypesResponse/Body/TicketType)&gt;0</stringProp>
  369. <boolProp name="XPath.validate">false</boolProp>
  370. <boolProp name="XPath.whitespace">false</boolProp>
  371. <boolProp name="XPath.tolerant">false</boolProp>
  372. <boolProp name="XPath.namespace">false</boolProp>
  373. </XPathAssertion>
  374. <hashTree/>
  375. <XPathExtractor guiclass="XPathExtractorGui" testclass="XPathExtractor" testname="Получить все ID типов билетов" enabled="true">
  376. <stringProp name="XPathExtractor.default"></stringProp>
  377. <stringProp name="XPathExtractor.refname">ticketTypeIds</stringProp>
  378. <stringProp name="XPathExtractor.xpathQuery">/GetTicketTypesResponse/Body/TicketType/id</stringProp>
  379. <boolProp name="XPathExtractor.validate">false</boolProp>
  380. <boolProp name="XPathExtractor.tolerant">false</boolProp>
  381. <boolProp name="XPathExtractor.namespace">false</boolProp>
  382. <stringProp name="XPathExtractor.matchNumber">-1</stringProp>
  383. </XPathExtractor>
  384. <hashTree/>
  385. </hashTree>
  386. <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Запрос типов документов" enabled="true">
  387. <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
  388. <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
  389. <collectionProp name="Arguments.arguments">
  390. <elementProp name="" elementType="HTTPArgument">
  391. <boolProp name="HTTPArgument.always_encode">false</boolProp>
  392. <stringProp name="Argument.value">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#xd;
  393. &lt;GetDocumentTypesRequest&gt;&#xd;
  394. &lt;tripId&gt;${tripId}&lt;/tripId&gt;&#xd;
  395. &lt;dispatchStationId&gt;${dispatchStationId}&lt;/dispatchStationId&gt;&#xd;
  396. &lt;arrivalStationId&gt;${arrivalStationId}&lt;/arrivalStationId&gt; &#xd;
  397. &lt;/GetDocumentTypesRequest&gt;</stringProp>
  398. <stringProp name="Argument.metadata">=</stringProp>
  399. </elementProp>
  400. </collectionProp>
  401. </elementProp>
  402. <stringProp name="HTTPSampler.domain"></stringProp>
  403. <stringProp name="HTTPSampler.port"></stringProp>
  404. <stringProp name="HTTPSampler.protocol"></stringProp>
  405. <stringProp name="HTTPSampler.contentEncoding"></stringProp>
  406. <stringProp name="HTTPSampler.path">${__V(server)}/sales/getDocumentTypes</stringProp>
  407. <stringProp name="HTTPSampler.method">POST</stringProp>
  408. <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
  409. <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
  410. <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
  411. <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
  412. <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
  413. <stringProp name="HTTPSampler.connect_timeout"></stringProp>
  414. <stringProp name="HTTPSampler.response_timeout"></stringProp>
  415. </HTTPSamplerProxy>
  416. <hashTree>
  417. <XMLAssertion guiclass="XMLAssertionGui" testclass="XMLAssertion" testname="Это XML?" enabled="false"/>
  418. <hashTree/>
  419. <XPathAssertion guiclass="XPathAssertionGui" testclass="XPathAssertion" testname="Кол-во типов документов &gt; 0" enabled="true">
  420. <boolProp name="XPath.negate">false</boolProp>
  421. <stringProp name="XPath.xpath">count(/GetDocumentTypesResponse/Body/DocumentType)&gt;0</stringProp>
  422. <boolProp name="XPath.validate">false</boolProp>
  423. <boolProp name="XPath.whitespace">false</boolProp>
  424. <boolProp name="XPath.tolerant">false</boolProp>
  425. <boolProp name="XPath.namespace">false</boolProp>
  426. </XPathAssertion>
  427. <hashTree/>
  428. <XPathAssertion guiclass="XPathAssertionGui" testclass="XPathAssertion" testname="Среди документов есть паспорт" enabled="true">
  429. <boolProp name="XPath.negate">false</boolProp>
  430. <stringProp name="XPath.xpath">count(/GetDocumentTypesResponse/Body/DocumentType/id[text()=&apos;00&apos; or text()=&apos;0&apos;]) &gt; 0</stringProp>
  431. <boolProp name="XPath.validate">false</boolProp>
  432. <boolProp name="XPath.whitespace">false</boolProp>
  433. <boolProp name="XPath.tolerant">false</boolProp>
  434. <boolProp name="XPath.namespace">false</boolProp>
  435. </XPathAssertion>
  436. <hashTree/>
  437. <XPathExtractor guiclass="XPathExtractorGui" testclass="XPathExtractor" testname="Получить все ID типов документов" enabled="true">
  438. <stringProp name="XPathExtractor.default"></stringProp>
  439. <stringProp name="XPathExtractor.refname">documentTypeIds</stringProp>
  440. <stringProp name="XPathExtractor.xpathQuery">/GetDocumentTypesResponse/Body/DocumentType/id[text()=&apos;00&apos; or text()=&apos;0&apos;]/text()</stringProp>
  441. <boolProp name="XPathExtractor.validate">false</boolProp>
  442. <boolProp name="XPathExtractor.tolerant">false</boolProp>
  443. <boolProp name="XPathExtractor.namespace">false</boolProp>
  444. <stringProp name="XPathExtractor.matchNumber">-1</stringProp>
  445. </XPathExtractor>
  446. <hashTree/>
  447. </hashTree>
  448. <GenericController guiclass="LogicControllerGui" testclass="GenericController" testname="Бронирование, Подтверждение, Отмена" enabled="true"/>
  449. <hashTree>
  450. <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Поиск свободных мест" enabled="true">
  451. <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
  452. <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
  453. <collectionProp name="Arguments.arguments">
  454. <elementProp name="" elementType="HTTPArgument">
  455. <boolProp name="HTTPArgument.always_encode">false</boolProp>
  456. <stringProp name="Argument.value">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#xd;
  457. &lt;GetFreeSeatsRequest&gt;&#xd;
  458. &lt;tripId&gt;${tripId}&lt;/tripId&gt;&#xd;
  459. &lt;dispatchStationId&gt;${dispatchStationId}&lt;/dispatchStationId&gt;&#xd;
  460. &lt;arrivalStationId&gt;${arrivalStationId}&lt;/arrivalStationId&gt; &#xd;
  461. &lt;/GetFreeSeatsRequest&gt;</stringProp>
  462. <stringProp name="Argument.metadata">=</stringProp>
  463. </elementProp>
  464. </collectionProp>
  465. </elementProp>
  466. <stringProp name="HTTPSampler.domain"></stringProp>
  467. <stringProp name="HTTPSampler.port"></stringProp>
  468. <stringProp name="HTTPSampler.protocol"></stringProp>
  469. <stringProp name="HTTPSampler.contentEncoding"></stringProp>
  470. <stringProp name="HTTPSampler.path">${__V(server)}/sales/getFreeSeats</stringProp>
  471. <stringProp name="HTTPSampler.method">POST</stringProp>
  472. <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
  473. <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
  474. <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
  475. <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
  476. <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
  477. <stringProp name="HTTPSampler.connect_timeout"></stringProp>
  478. <stringProp name="HTTPSampler.response_timeout"></stringProp>
  479. </HTTPSamplerProxy>
  480. <hashTree>
  481. <XMLAssertion guiclass="XMLAssertionGui" testclass="XMLAssertion" testname="Это XML?" enabled="false"/>
  482. <hashTree/>
  483. <XPathExtractor guiclass="XPathExtractorGui" testclass="XPathExtractor" testname="Получить все ID мест" enabled="true">
  484. <stringProp name="XPathExtractor.default"></stringProp>
  485. <stringProp name="XPathExtractor.refname">seatId</stringProp>
  486. <stringProp name="XPathExtractor.xpathQuery">/GetFreeSeatsResponse/Body/Seat/id</stringProp>
  487. <boolProp name="XPathExtractor.validate">false</boolProp>
  488. <boolProp name="XPathExtractor.tolerant">false</boolProp>
  489. <boolProp name="XPathExtractor.namespace">false</boolProp>
  490. <stringProp name="XPathExtractor.matchNumber">-1</stringProp>
  491. </XPathExtractor>
  492. <hashTree/>
  493. <XPathAssertion guiclass="XPathAssertionGui" testclass="XPathAssertion" testname="Есть места" enabled="true">
  494. <boolProp name="XPath.negate">false</boolProp>
  495. <stringProp name="XPath.xpath">count(/GetFreeSeatsResponse/Body/Seat)&gt;0</stringProp>
  496. <boolProp name="XPath.validate">false</boolProp>
  497. <boolProp name="XPath.whitespace">false</boolProp>
  498. <boolProp name="XPath.tolerant">false</boolProp>
  499. <boolProp name="XPath.namespace">false</boolProp>
  500. </XPathAssertion>
  501. <hashTree/>
  502. </hashTree>
  503. <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Создание договора" enabled="true">
  504. <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
  505. <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
  506. <collectionProp name="Arguments.arguments">
  507. <elementProp name="" elementType="HTTPArgument">
  508. <boolProp name="HTTPArgument.always_encode">false</boolProp>
  509. <stringProp name="Argument.value">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#xd;
  510. &lt;BookOrderRequest&gt;&#xd;
  511. &lt;tripId&gt;${tripId}&lt;/tripId&gt;&#xd;
  512. &lt;dispatchStationId&gt;${dispatchStationId}&lt;/dispatchStationId&gt;&#xd;
  513. &lt;arrivalStationId&gt;${arrivalStationId}&lt;/arrivalStationId&gt; &#xd;
  514. &lt;Sale&gt;&#xd;
  515. &lt;seatId&gt;${__V(seatId_${__Random(1,${seatId_matchNr})})}&lt;/seatId&gt;&#xd;
  516. &lt;ticketTypeId&gt;${ticketTypeIds_1}&lt;/ticketTypeId&gt;&#xd;
  517. &lt;Passenger&gt;&#xd;
  518. &lt;firstName&gt;${__RandomString(10,ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz)}&lt;/firstName&gt;&#xd;
  519. &lt;lastName&gt;${__RandomString(10,ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz)}&lt;/lastName&gt;&#xd;
  520. &lt;middleName&gt;${__RandomString(10,ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz)}&lt;/middleName&gt; &#xd;
  521. &lt;docNum&gt;${__RandomString(6,0123456789)}&lt;/docNum&gt; &#xd;
  522. &lt;docSeries&gt;${__RandomString(4,0123456789)}&lt;/docSeries&gt; &#xd;
  523. &lt;docTypeId&gt;${documentTypeIds_1}&lt;/docTypeId&gt; &#xd;
  524. &lt;birthday&gt;1985-01-01&lt;/birthday&gt;&#xd;
  525. &lt;citizenshipISO2&gt;RU&lt;/citizenshipISO2&gt;&#xd;
  526. &lt;gender&gt;MALE&lt;/gender&gt;&#xd;
  527. &lt;/Passenger&gt;&#xd;
  528. &lt;/Sale&gt; &#xd;
  529. &lt;Agent&gt;&#xd;
  530. &lt;name&gt;Test&lt;/name&gt;&#xd;
  531. &lt;inn&gt;2345678901&lt;/inn&gt;&#xd;
  532. &lt;/Agent&gt; &#xd;
  533. &lt;/BookOrderRequest&gt;</stringProp>
  534. <stringProp name="Argument.metadata">=</stringProp>
  535. </elementProp>
  536. </collectionProp>
  537. </elementProp>
  538. <stringProp name="HTTPSampler.domain"></stringProp>
  539. <stringProp name="HTTPSampler.port"></stringProp>
  540. <stringProp name="HTTPSampler.protocol"></stringProp>
  541. <stringProp name="HTTPSampler.contentEncoding"></stringProp>
  542. <stringProp name="HTTPSampler.path">${__V(server)}/sales/bookOrder</stringProp>
  543. <stringProp name="HTTPSampler.method">POST</stringProp>
  544. <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
  545. <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
  546. <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
  547. <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
  548. <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
  549. <stringProp name="HTTPSampler.connect_timeout"></stringProp>
  550. <stringProp name="HTTPSampler.response_timeout"></stringProp>
  551. </HTTPSamplerProxy>
  552. <hashTree>
  553. <XMLAssertion guiclass="XMLAssertionGui" testclass="XMLAssertion" testname="Это XML?" enabled="false"/>
  554. <hashTree/>
  555. <XPathExtractor guiclass="XPathExtractorGui" testclass="XPathExtractor" testname="Получить ID договора" enabled="true">
  556. <stringProp name="XPathExtractor.default"></stringProp>
  557. <stringProp name="XPathExtractor.refname">orderId</stringProp>
  558. <stringProp name="XPathExtractor.xpathQuery">/BookOrderResponse/Body/orderId</stringProp>
  559. <boolProp name="XPathExtractor.validate">false</boolProp>
  560. <boolProp name="XPathExtractor.tolerant">false</boolProp>
  561. <boolProp name="XPathExtractor.namespace">false</boolProp>
  562. <stringProp name="XPathExtractor.matchNumber">-1</stringProp>
  563. </XPathExtractor>
  564. <hashTree/>
  565. </hashTree>
  566. <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Запрос информации по договору" enabled="true">
  567. <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
  568. <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
  569. <collectionProp name="Arguments.arguments">
  570. <elementProp name="" elementType="HTTPArgument">
  571. <boolProp name="HTTPArgument.always_encode">false</boolProp>
  572. <stringProp name="Argument.value">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#xd;
  573. &lt;GetOrderRequest&gt;&#xd;
  574. &lt;orderId&gt;${orderId}&lt;/orderId&gt;&#xd;
  575. &lt;/GetOrderRequest&gt;</stringProp>
  576. <stringProp name="Argument.metadata">=</stringProp>
  577. </elementProp>
  578. </collectionProp>
  579. </elementProp>
  580. <stringProp name="HTTPSampler.domain"></stringProp>
  581. <stringProp name="HTTPSampler.port"></stringProp>
  582. <stringProp name="HTTPSampler.protocol"></stringProp>
  583. <stringProp name="HTTPSampler.contentEncoding"></stringProp>
  584. <stringProp name="HTTPSampler.path">${__V(server)}/sales/getOrder</stringProp>
  585. <stringProp name="HTTPSampler.method">POST</stringProp>
  586. <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
  587. <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
  588. <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
  589. <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
  590. <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
  591. <stringProp name="HTTPSampler.connect_timeout"></stringProp>
  592. <stringProp name="HTTPSampler.response_timeout"></stringProp>
  593. </HTTPSamplerProxy>
  594. <hashTree>
  595. <XMLAssertion guiclass="XMLAssertionGui" testclass="XMLAssertion" testname="Это XML?" enabled="false"/>
  596. <hashTree/>
  597. <XPathAssertion guiclass="XPathAssertionGui" testclass="XPathAssertion" testname="Кол-во билетов = 1" enabled="true">
  598. <boolProp name="XPath.negate">false</boolProp>
  599. <stringProp name="XPath.xpath">count(/GetOrderResponse/Body/Ticket)=1</stringProp>
  600. <boolProp name="XPath.validate">false</boolProp>
  601. <boolProp name="XPath.whitespace">false</boolProp>
  602. <boolProp name="XPath.tolerant">false</boolProp>
  603. <boolProp name="XPath.namespace">false</boolProp>
  604. </XPathAssertion>
  605. <hashTree/>
  606. <XPathExtractor guiclass="XPathExtractorGui" testclass="XPathExtractor" testname="Получить ID билета" enabled="true">
  607. <stringProp name="XPathExtractor.default"></stringProp>
  608. <stringProp name="XPathExtractor.refname">ticketId</stringProp>
  609. <stringProp name="XPathExtractor.xpathQuery">/GetOrderResponse/Body/Ticket/id</stringProp>
  610. <boolProp name="XPathExtractor.validate">false</boolProp>
  611. <boolProp name="XPathExtractor.tolerant">false</boolProp>
  612. <boolProp name="XPathExtractor.namespace">false</boolProp>
  613. <stringProp name="XPathExtractor.matchNumber">-1</stringProp>
  614. </XPathExtractor>
  615. <hashTree/>
  616. <XPathAssertion guiclass="XPathAssertionGui" testclass="XPathAssertion" testname="Статус договора" enabled="true">
  617. <boolProp name="XPath.negate">false</boolProp>
  618. <stringProp name="XPath.xpath">/GetOrderResponse/Body/Ticket/status/text()=&apos;RESERVED&apos;</stringProp>
  619. <boolProp name="XPath.validate">false</boolProp>
  620. <boolProp name="XPath.whitespace">false</boolProp>
  621. <boolProp name="XPath.tolerant">false</boolProp>
  622. <boolProp name="XPath.namespace">false</boolProp>
  623. </XPathAssertion>
  624. <hashTree/>
  625. <XPathAssertion guiclass="XPathAssertionGui" testclass="XPathAssertion" testname="Страна" enabled="false">
  626. <boolProp name="XPath.negate">false</boolProp>
  627. <stringProp name="XPath.xpath">/GetOrderResponse/Body/Ticket/Passenger/citizenshipISO2/text()=&apos;RU&apos;</stringProp>
  628. <boolProp name="XPath.validate">false</boolProp>
  629. <boolProp name="XPath.whitespace">false</boolProp>
  630. <boolProp name="XPath.tolerant">false</boolProp>
  631. <boolProp name="XPath.namespace">false</boolProp>
  632. </XPathAssertion>
  633. <hashTree/>
  634. </hashTree>
  635. <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Изменения данных пассажира" enabled="true">
  636. <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
  637. <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
  638. <collectionProp name="Arguments.arguments">
  639. <elementProp name="" elementType="HTTPArgument">
  640. <boolProp name="HTTPArgument.always_encode">false</boolProp>
  641. <stringProp name="Argument.value">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#xd;
  642. &lt;UpdateTicketRequest&gt;&#xd;
  643. &lt;ticketId&gt;${ticketId}&lt;/ticketId&gt;&#xd;
  644. &lt;Passenger&gt;&#xd;
  645. &lt;firstName&gt;${__RandomString(10,ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz)}&lt;/firstName&gt;&#xd;
  646. &lt;lastName&gt;${__RandomString(10,ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz)}&lt;/lastName&gt;&#xd;
  647. &lt;middleName&gt;${__RandomString(10,ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz)}&lt;/middleName&gt; &#xd;
  648. &lt;docNum&gt;${__RandomString(6,0123456789)}&lt;/docNum&gt; &#xd;
  649. &lt;docSeries&gt;${__RandomString(4,0123456789)}&lt;/docSeries&gt; &#xd;
  650. &lt;docTypeId&gt;${documentTypeIds_1}&lt;/docTypeId&gt; &#xd;
  651. &lt;birthday&gt;1986-01-01&lt;/birthday&gt;&#xd;
  652. &lt;citizenshipISO2&gt;RU&lt;/citizenshipISO2&gt;&#xd;
  653. &lt;gender&gt;FEMALE&lt;/gender&gt;&#xd;
  654. &lt;/Passenger&gt;&#xd;
  655. &lt;/UpdateTicketRequest&gt;</stringProp>
  656. <stringProp name="Argument.metadata">=</stringProp>
  657. </elementProp>
  658. </collectionProp>
  659. </elementProp>
  660. <stringProp name="HTTPSampler.domain"></stringProp>
  661. <stringProp name="HTTPSampler.port"></stringProp>
  662. <stringProp name="HTTPSampler.protocol"></stringProp>
  663. <stringProp name="HTTPSampler.contentEncoding"></stringProp>
  664. <stringProp name="HTTPSampler.path">${__V(server)}/sales/updateTicket</stringProp>
  665. <stringProp name="HTTPSampler.method">POST</stringProp>
  666. <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
  667. <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
  668. <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
  669. <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
  670. <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
  671. <stringProp name="HTTPSampler.connect_timeout"></stringProp>
  672. <stringProp name="HTTPSampler.response_timeout"></stringProp>
  673. </HTTPSamplerProxy>
  674. <hashTree>
  675. <XMLAssertion guiclass="XMLAssertionGui" testclass="XMLAssertion" testname="Это XML?" enabled="false"/>
  676. <hashTree/>
  677. </hashTree>
  678. <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Подтверждение оплаты" enabled="true">
  679. <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
  680. <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
  681. <collectionProp name="Arguments.arguments">
  682. <elementProp name="" elementType="HTTPArgument">
  683. <boolProp name="HTTPArgument.always_encode">false</boolProp>
  684. <stringProp name="Argument.value">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#xd;
  685. &lt;ConfirmOrderRequest&gt;&#xd;
  686. &lt;orderId&gt;${orderId}&lt;/orderId&gt;&#xd;
  687. &lt;Agent&gt;&#xd;
  688. &lt;inn&gt;2345678901&lt;/inn&gt;&#xd;
  689. &lt;/Agent&gt;&#xd;
  690. &lt;/ConfirmOrderRequest&gt;</stringProp>
  691. <stringProp name="Argument.metadata">=</stringProp>
  692. </elementProp>
  693. </collectionProp>
  694. </elementProp>
  695. <stringProp name="HTTPSampler.domain"></stringProp>
  696. <stringProp name="HTTPSampler.port"></stringProp>
  697. <stringProp name="HTTPSampler.protocol"></stringProp>
  698. <stringProp name="HTTPSampler.contentEncoding"></stringProp>
  699. <stringProp name="HTTPSampler.path">${__V(server)}/sales/confirmOrder</stringProp>
  700. <stringProp name="HTTPSampler.method">POST</stringProp>
  701. <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
  702. <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
  703. <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
  704. <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
  705. <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
  706. <stringProp name="HTTPSampler.connect_timeout"></stringProp>
  707. <stringProp name="HTTPSampler.response_timeout"></stringProp>
  708. </HTTPSamplerProxy>
  709. <hashTree>
  710. <XMLAssertion guiclass="XMLAssertionGui" testclass="XMLAssertion" testname="Это XML?" enabled="false"/>
  711. <hashTree/>
  712. <XPathAssertion guiclass="XPathAssertionGui" testclass="XPathAssertion" testname="Кол-во билетов = 1" enabled="true">
  713. <boolProp name="XPath.negate">false</boolProp>
  714. <stringProp name="XPath.xpath">count(/ConfirmOrderResponse/Body/Ticket)=1</stringProp>
  715. <boolProp name="XPath.validate">false</boolProp>
  716. <boolProp name="XPath.whitespace">false</boolProp>
  717. <boolProp name="XPath.tolerant">false</boolProp>
  718. <boolProp name="XPath.namespace">false</boolProp>
  719. </XPathAssertion>
  720. <hashTree/>
  721. <XPathExtractor guiclass="XPathExtractorGui" testclass="XPathExtractor" testname="Получить ID билета" enabled="true">
  722. <stringProp name="XPathExtractor.default"></stringProp>
  723. <stringProp name="XPathExtractor.refname">orderId</stringProp>
  724. <stringProp name="XPathExtractor.xpathQuery">/ConfirmOrderResponse/Body/Ticket/id</stringProp>
  725. <boolProp name="XPathExtractor.validate">false</boolProp>
  726. <boolProp name="XPathExtractor.tolerant">false</boolProp>
  727. <boolProp name="XPathExtractor.namespace">false</boolProp>
  728. <stringProp name="XPathExtractor.matchNumber">-1</stringProp>
  729. </XPathExtractor>
  730. <hashTree/>
  731. <XPathAssertion guiclass="XPathAssertionGui" testclass="XPathAssertion" testname="Статус договора" enabled="true">
  732. <boolProp name="XPath.negate">false</boolProp>
  733. <stringProp name="XPath.xpath">/ConfirmOrderResponse/Body/Ticket/status/text()=&apos;SOLD&apos;</stringProp>
  734. <boolProp name="XPath.validate">false</boolProp>
  735. <boolProp name="XPath.whitespace">false</boolProp>
  736. <boolProp name="XPath.tolerant">false</boolProp>
  737. <boolProp name="XPath.namespace">false</boolProp>
  738. </XPathAssertion>
  739. <hashTree/>
  740. </hashTree>
  741. <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Отмена билета" enabled="true">
  742. <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
  743. <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
  744. <collectionProp name="Arguments.arguments">
  745. <elementProp name="" elementType="HTTPArgument">
  746. <boolProp name="HTTPArgument.always_encode">false</boolProp>
  747. <stringProp name="Argument.value">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#xd;
  748. &lt;CancelTicketRequest&gt;&#xd;
  749. &lt;ticketId&gt;${ticketId}&lt;/ticketId&gt;&#xd;
  750. &lt;Agent&gt;&lt;inn&gt;1234567890&lt;/inn&gt;&lt;/Agent&gt;&#xd;
  751. &lt;/CancelTicketRequest&gt;</stringProp>
  752. <stringProp name="Argument.metadata">=</stringProp>
  753. </elementProp>
  754. </collectionProp>
  755. </elementProp>
  756. <stringProp name="HTTPSampler.domain"></stringProp>
  757. <stringProp name="HTTPSampler.port"></stringProp>
  758. <stringProp name="HTTPSampler.protocol"></stringProp>
  759. <stringProp name="HTTPSampler.contentEncoding">UTF-8</stringProp>
  760. <stringProp name="HTTPSampler.path">${__V(server)}/sales/cancelTicket</stringProp>
  761. <stringProp name="HTTPSampler.method">POST</stringProp>
  762. <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
  763. <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
  764. <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
  765. <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
  766. <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
  767. <stringProp name="HTTPSampler.connect_timeout"></stringProp>
  768. <stringProp name="HTTPSampler.response_timeout"></stringProp>
  769. </HTTPSamplerProxy>
  770. <hashTree>
  771. <XMLAssertion guiclass="XMLAssertionGui" testclass="XMLAssertion" testname="Это XML?" enabled="false"/>
  772. <hashTree/>
  773. <XPathAssertion guiclass="XPathAssertionGui" testclass="XPathAssertion" testname="Кол-во билетов = 1" enabled="true">
  774. <boolProp name="XPath.negate">false</boolProp>
  775. <stringProp name="XPath.xpath">count(/CancelTicketResponse/Body/Ticket)=1</stringProp>
  776. <boolProp name="XPath.validate">false</boolProp>
  777. <boolProp name="XPath.whitespace">false</boolProp>
  778. <boolProp name="XPath.tolerant">false</boolProp>
  779. <boolProp name="XPath.namespace">false</boolProp>
  780. </XPathAssertion>
  781. <hashTree/>
  782. <XPathAssertion guiclass="XPathAssertionGui" testclass="XPathAssertion" testname="Статус договора" enabled="true">
  783. <boolProp name="XPath.negate">false</boolProp>
  784. <stringProp name="XPath.xpath">/CancelTicketResponse/Body/Ticket/status/text()=&apos;CANCELED&apos;</stringProp>
  785. <boolProp name="XPath.validate">false</boolProp>
  786. <boolProp name="XPath.whitespace">false</boolProp>
  787. <boolProp name="XPath.tolerant">false</boolProp>
  788. <boolProp name="XPath.namespace">false</boolProp>
  789. </XPathAssertion>
  790. <hashTree/>
  791. </hashTree>
  792. </hashTree>
  793. <GenericController guiclass="LogicControllerGui" testclass="GenericController" testname="Бронирование, Подтверждение, Возврат" enabled="true"/>
  794. <hashTree>
  795. <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Поиск свободных мест" enabled="true">
  796. <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
  797. <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
  798. <collectionProp name="Arguments.arguments">
  799. <elementProp name="" elementType="HTTPArgument">
  800. <boolProp name="HTTPArgument.always_encode">false</boolProp>
  801. <stringProp name="Argument.value">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#xd;
  802. &lt;GetFreeSeatsRequest&gt;&#xd;
  803. &lt;tripId&gt;${tripId}&lt;/tripId&gt;&#xd;
  804. &lt;dispatchStationId&gt;${dispatchStationId}&lt;/dispatchStationId&gt;&#xd;
  805. &lt;arrivalStationId&gt;${arrivalStationId}&lt;/arrivalStationId&gt; &#xd;
  806. &lt;/GetFreeSeatsRequest&gt;</stringProp>
  807. <stringProp name="Argument.metadata">=</stringProp>
  808. </elementProp>
  809. </collectionProp>
  810. </elementProp>
  811. <stringProp name="HTTPSampler.domain"></stringProp>
  812. <stringProp name="HTTPSampler.port"></stringProp>
  813. <stringProp name="HTTPSampler.protocol"></stringProp>
  814. <stringProp name="HTTPSampler.contentEncoding"></stringProp>
  815. <stringProp name="HTTPSampler.path">${__V(server)}/sales/getFreeSeats</stringProp>
  816. <stringProp name="HTTPSampler.method">POST</stringProp>
  817. <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
  818. <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
  819. <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
  820. <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
  821. <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
  822. <stringProp name="HTTPSampler.connect_timeout"></stringProp>
  823. <stringProp name="HTTPSampler.response_timeout"></stringProp>
  824. </HTTPSamplerProxy>
  825. <hashTree>
  826. <XMLAssertion guiclass="XMLAssertionGui" testclass="XMLAssertion" testname="Это XML?" enabled="false"/>
  827. <hashTree/>
  828. <XPathExtractor guiclass="XPathExtractorGui" testclass="XPathExtractor" testname="Получить все ID мест" enabled="true">
  829. <stringProp name="XPathExtractor.default"></stringProp>
  830. <stringProp name="XPathExtractor.refname">seatId</stringProp>
  831. <stringProp name="XPathExtractor.xpathQuery">/GetFreeSeatsResponse/Body/Seat/id</stringProp>
  832. <boolProp name="XPathExtractor.validate">false</boolProp>
  833. <boolProp name="XPathExtractor.tolerant">false</boolProp>
  834. <boolProp name="XPathExtractor.namespace">false</boolProp>
  835. <stringProp name="XPathExtractor.matchNumber">-1</stringProp>
  836. </XPathExtractor>
  837. <hashTree/>
  838. <XPathAssertion guiclass="XPathAssertionGui" testclass="XPathAssertion" testname="Есть места" enabled="true">
  839. <boolProp name="XPath.negate">false</boolProp>
  840. <stringProp name="XPath.xpath">count(/GetFreeSeatsResponse/Body/Seat)&gt;1</stringProp>
  841. <boolProp name="XPath.validate">false</boolProp>
  842. <boolProp name="XPath.whitespace">false</boolProp>
  843. <boolProp name="XPath.tolerant">false</boolProp>
  844. <boolProp name="XPath.namespace">false</boolProp>
  845. </XPathAssertion>
  846. <hashTree/>
  847. </hashTree>
  848. <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Создание договора" enabled="true">
  849. <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
  850. <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
  851. <collectionProp name="Arguments.arguments">
  852. <elementProp name="" elementType="HTTPArgument">
  853. <boolProp name="HTTPArgument.always_encode">false</boolProp>
  854. <stringProp name="Argument.value">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#xd;
  855. &lt;BookOrderRequest&gt;&#xd;
  856. &lt;tripId&gt;${tripId}&lt;/tripId&gt;&#xd;
  857. &lt;dispatchStationId&gt;${dispatchStationId}&lt;/dispatchStationId&gt;&#xd;
  858. &lt;arrivalStationId&gt;${arrivalStationId}&lt;/arrivalStationId&gt; &#xd;
  859. &lt;Sale&gt;&#xd;
  860. &lt;seatId&gt;${__V(seatId_${__Random(1,${seatId_matchNr})})}&lt;/seatId&gt;&#xd;
  861. &lt;ticketTypeId&gt;${ticketTypeIds_1}&lt;/ticketTypeId&gt;&#xd;
  862. &lt;Passenger&gt;&#xd;
  863. &lt;firstName&gt;${__RandomString(10,ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz)}&lt;/firstName&gt;&#xd;
  864. &lt;lastName&gt;${__RandomString(10,ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz)}&lt;/lastName&gt;&#xd;
  865. &lt;middleName&gt;${__RandomString(10,ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz)}&lt;/middleName&gt; &#xd;
  866. &lt;docNum&gt;${__RandomString(6,0123456789)}&lt;/docNum&gt; &#xd;
  867. &lt;docSeries&gt;${__RandomString(4,0123456789)}&lt;/docSeries&gt; &#xd;
  868. &lt;docTypeId&gt;${documentTypeIds_1}&lt;/docTypeId&gt; &#xd;
  869. &lt;birthday&gt;1985-01-01&lt;/birthday&gt;&#xd;
  870. &lt;citizenshipISO2&gt;RU&lt;/citizenshipISO2&gt;&#xd;
  871. &lt;gender&gt;MALE&lt;/gender&gt;&#xd;
  872. &lt;/Passenger&gt;&#xd;
  873. &lt;/Sale&gt; &#xd;
  874. &lt;/BookOrderRequest&gt;</stringProp>
  875. <stringProp name="Argument.metadata">=</stringProp>
  876. </elementProp>
  877. </collectionProp>
  878. </elementProp>
  879. <stringProp name="HTTPSampler.domain"></stringProp>
  880. <stringProp name="HTTPSampler.port"></stringProp>
  881. <stringProp name="HTTPSampler.protocol"></stringProp>
  882. <stringProp name="HTTPSampler.contentEncoding"></stringProp>
  883. <stringProp name="HTTPSampler.path">${__V(server)}/sales/bookOrder</stringProp>
  884. <stringProp name="HTTPSampler.method">POST</stringProp>
  885. <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
  886. <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
  887. <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
  888. <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
  889. <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
  890. <stringProp name="HTTPSampler.connect_timeout"></stringProp>
  891. <stringProp name="HTTPSampler.response_timeout"></stringProp>
  892. </HTTPSamplerProxy>
  893. <hashTree>
  894. <XMLAssertion guiclass="XMLAssertionGui" testclass="XMLAssertion" testname="Это XML?" enabled="false"/>
  895. <hashTree/>
  896. <XPathExtractor guiclass="XPathExtractorGui" testclass="XPathExtractor" testname="Получить ID договора" enabled="true">
  897. <stringProp name="XPathExtractor.default"></stringProp>
  898. <stringProp name="XPathExtractor.refname">orderId</stringProp>
  899. <stringProp name="XPathExtractor.xpathQuery">/BookOrderResponse/Body/orderId</stringProp>
  900. <boolProp name="XPathExtractor.validate">false</boolProp>
  901. <boolProp name="XPathExtractor.tolerant">false</boolProp>
  902. <boolProp name="XPathExtractor.namespace">false</boolProp>
  903. <stringProp name="XPathExtractor.matchNumber">-1</stringProp>
  904. </XPathExtractor>
  905. <hashTree/>
  906. </hashTree>
  907. <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Запрос информации по договору" enabled="true">
  908. <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
  909. <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
  910. <collectionProp name="Arguments.arguments">
  911. <elementProp name="" elementType="HTTPArgument">
  912. <boolProp name="HTTPArgument.always_encode">false</boolProp>
  913. <stringProp name="Argument.value">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#xd;
  914. &lt;GetOrderRequest&gt;&#xd;
  915. &lt;orderId&gt;${orderId}&lt;/orderId&gt;&#xd;
  916. &lt;/GetOrderRequest&gt;</stringProp>
  917. <stringProp name="Argument.metadata">=</stringProp>
  918. </elementProp>
  919. </collectionProp>
  920. </elementProp>
  921. <stringProp name="HTTPSampler.domain"></stringProp>
  922. <stringProp name="HTTPSampler.port"></stringProp>
  923. <stringProp name="HTTPSampler.protocol"></stringProp>
  924. <stringProp name="HTTPSampler.contentEncoding"></stringProp>
  925. <stringProp name="HTTPSampler.path">${__V(server)}/sales/getOrder</stringProp>
  926. <stringProp name="HTTPSampler.method">POST</stringProp>
  927. <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
  928. <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
  929. <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
  930. <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
  931. <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
  932. <stringProp name="HTTPSampler.connect_timeout"></stringProp>
  933. <stringProp name="HTTPSampler.response_timeout"></stringProp>
  934. </HTTPSamplerProxy>
  935. <hashTree>
  936. <XMLAssertion guiclass="XMLAssertionGui" testclass="XMLAssertion" testname="Это XML?" enabled="false"/>
  937. <hashTree/>
  938. <XPathAssertion guiclass="XPathAssertionGui" testclass="XPathAssertion" testname="Кол-во билетов = 1" enabled="true">
  939. <boolProp name="XPath.negate">false</boolProp>
  940. <stringProp name="XPath.xpath">count(/GetOrderResponse/Body/Ticket)=1</stringProp>
  941. <boolProp name="XPath.validate">false</boolProp>
  942. <boolProp name="XPath.whitespace">false</boolProp>
  943. <boolProp name="XPath.tolerant">false</boolProp>
  944. <boolProp name="XPath.namespace">false</boolProp>
  945. </XPathAssertion>
  946. <hashTree/>
  947. <XPathExtractor guiclass="XPathExtractorGui" testclass="XPathExtractor" testname="Получить ID билета" enabled="true">
  948. <stringProp name="XPathExtractor.default"></stringProp>
  949. <stringProp name="XPathExtractor.refname">ticketId</stringProp>
  950. <stringProp name="XPathExtractor.xpathQuery">/GetOrderResponse/Body/Ticket/id</stringProp>
  951. <boolProp name="XPathExtractor.validate">false</boolProp>
  952. <boolProp name="XPathExtractor.tolerant">false</boolProp>
  953. <boolProp name="XPathExtractor.namespace">false</boolProp>
  954. <stringProp name="XPathExtractor.matchNumber">-1</stringProp>
  955. </XPathExtractor>
  956. <hashTree/>
  957. <XPathAssertion guiclass="XPathAssertionGui" testclass="XPathAssertion" testname="Статус договора" enabled="true">
  958. <boolProp name="XPath.negate">false</boolProp>
  959. <stringProp name="XPath.xpath">/GetOrderResponse/Body/Ticket/status/text()=&apos;RESERVED&apos;</stringProp>
  960. <boolProp name="XPath.validate">false</boolProp>
  961. <boolProp name="XPath.whitespace">false</boolProp>
  962. <boolProp name="XPath.tolerant">false</boolProp>
  963. <boolProp name="XPath.namespace">false</boolProp>
  964. </XPathAssertion>
  965. <hashTree/>
  966. <XPathAssertion guiclass="XPathAssertionGui" testclass="XPathAssertion" testname="Страна" enabled="false">
  967. <boolProp name="XPath.negate">false</boolProp>
  968. <stringProp name="XPath.xpath">/GetOrderResponse/Body/Ticket/Passenger/citizenshipISO2/text()=&apos;RU&apos;</stringProp>
  969. <boolProp name="XPath.validate">false</boolProp>
  970. <boolProp name="XPath.whitespace">false</boolProp>
  971. <boolProp name="XPath.tolerant">false</boolProp>
  972. <boolProp name="XPath.namespace">false</boolProp>
  973. </XPathAssertion>
  974. <hashTree/>
  975. </hashTree>
  976. <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Изменения данных пассажира" enabled="true">
  977. <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
  978. <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
  979. <collectionProp name="Arguments.arguments">
  980. <elementProp name="" elementType="HTTPArgument">
  981. <boolProp name="HTTPArgument.always_encode">false</boolProp>
  982. <stringProp name="Argument.value">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#xd;
  983. &lt;UpdateTicketRequest&gt;&#xd;
  984. &lt;ticketId&gt;${ticketId}&lt;/ticketId&gt;&#xd;
  985. &lt;Passenger&gt;&#xd;
  986. &lt;firstName&gt;${__RandomString(10,ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz)}&lt;/firstName&gt;&#xd;
  987. &lt;lastName&gt;${__RandomString(10,ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz)}&lt;/lastName&gt;&#xd;
  988. &lt;middleName&gt;${__RandomString(10,ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz)}&lt;/middleName&gt; &#xd;
  989. &lt;docNum&gt;${__RandomString(6,0123456789)}&lt;/docNum&gt; &#xd;
  990. &lt;docSeries&gt;${__RandomString(4,0123456789)}&lt;/docSeries&gt; &#xd;
  991. &lt;docTypeId&gt;${documentTypeIds_1}&lt;/docTypeId&gt; &#xd;
  992. &lt;birthday&gt;1986-01-01&lt;/birthday&gt;&#xd;
  993. &lt;citizenshipISO2&gt;RU&lt;/citizenshipISO2&gt;&#xd;
  994. &lt;gender&gt;FEMALE&lt;/gender&gt;&#xd;
  995. &lt;/Passenger&gt;&#xd;
  996. &lt;/UpdateTicketRequest&gt;</stringProp>
  997. <stringProp name="Argument.metadata">=</stringProp>
  998. </elementProp>
  999. </collectionProp>
  1000. </elementProp>
  1001. <stringProp name="HTTPSampler.domain"></stringProp>
  1002. <stringProp name="HTTPSampler.port"></stringProp>
  1003. <stringProp name="HTTPSampler.protocol"></stringProp>
  1004. <stringProp name="HTTPSampler.contentEncoding"></stringProp>
  1005. <stringProp name="HTTPSampler.path">${__V(server)}/sales/updateTicket</stringProp>
  1006. <stringProp name="HTTPSampler.method">POST</stringProp>
  1007. <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
  1008. <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
  1009. <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
  1010. <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
  1011. <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
  1012. <stringProp name="HTTPSampler.connect_timeout"></stringProp>
  1013. <stringProp name="HTTPSampler.response_timeout"></stringProp>
  1014. </HTTPSamplerProxy>
  1015. <hashTree>
  1016. <XMLAssertion guiclass="XMLAssertionGui" testclass="XMLAssertion" testname="Это XML?" enabled="false"/>
  1017. <hashTree/>
  1018. </hashTree>
  1019. <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Подтверждение оплаты" enabled="true">
  1020. <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
  1021. <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
  1022. <collectionProp name="Arguments.arguments">
  1023. <elementProp name="" elementType="HTTPArgument">
  1024. <boolProp name="HTTPArgument.always_encode">false</boolProp>
  1025. <stringProp name="Argument.value">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#xd;
  1026. &lt;ConfirmOrderRequest&gt;&#xd;
  1027. &lt;orderId&gt;${orderId}&lt;/orderId&gt;&#xd;
  1028. &lt;Agent&gt;&#xd;
  1029. &lt;inn&gt;2345678901&lt;/inn&gt;&#xd;
  1030. &lt;name&gt;Test&lt;/name&gt;&#xd;
  1031. &lt;/Agent&gt;&#xd;
  1032. &lt;/ConfirmOrderRequest&gt;</stringProp>
  1033. <stringProp name="Argument.metadata">=</stringProp>
  1034. </elementProp>
  1035. </collectionProp>
  1036. </elementProp>
  1037. <stringProp name="HTTPSampler.domain"></stringProp>
  1038. <stringProp name="HTTPSampler.port"></stringProp>
  1039. <stringProp name="HTTPSampler.protocol"></stringProp>
  1040. <stringProp name="HTTPSampler.contentEncoding"></stringProp>
  1041. <stringProp name="HTTPSampler.path">${__V(server)}/sales/confirmOrder</stringProp>
  1042. <stringProp name="HTTPSampler.method">POST</stringProp>
  1043. <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
  1044. <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
  1045. <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
  1046. <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
  1047. <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
  1048. <stringProp name="HTTPSampler.connect_timeout"></stringProp>
  1049. <stringProp name="HTTPSampler.response_timeout"></stringProp>
  1050. </HTTPSamplerProxy>
  1051. <hashTree>
  1052. <XMLAssertion guiclass="XMLAssertionGui" testclass="XMLAssertion" testname="Это XML?" enabled="false"/>
  1053. <hashTree/>
  1054. <XPathAssertion guiclass="XPathAssertionGui" testclass="XPathAssertion" testname="Кол-во билетов = 1" enabled="true">
  1055. <boolProp name="XPath.negate">false</boolProp>
  1056. <stringProp name="XPath.xpath">count(/ConfirmOrderResponse/Body/Ticket)=1</stringProp>
  1057. <boolProp name="XPath.validate">false</boolProp>
  1058. <boolProp name="XPath.whitespace">false</boolProp>
  1059. <boolProp name="XPath.tolerant">false</boolProp>
  1060. <boolProp name="XPath.namespace">false</boolProp>
  1061. </XPathAssertion>
  1062. <hashTree/>
  1063. <XPathExtractor guiclass="XPathExtractorGui" testclass="XPathExtractor" testname="Получить ID билета" enabled="true">
  1064. <stringProp name="XPathExtractor.default"></stringProp>
  1065. <stringProp name="XPathExtractor.refname">orderId</stringProp>
  1066. <stringProp name="XPathExtractor.xpathQuery">/ConfirmOrderResponse/Body/Ticket/id</stringProp>
  1067. <boolProp name="XPathExtractor.validate">false</boolProp>
  1068. <boolProp name="XPathExtractor.tolerant">false</boolProp>
  1069. <boolProp name="XPathExtractor.namespace">false</boolProp>
  1070. <stringProp name="XPathExtractor.matchNumber">-1</stringProp>
  1071. </XPathExtractor>
  1072. <hashTree/>
  1073. <XPathAssertion guiclass="XPathAssertionGui" testclass="XPathAssertion" testname="Статус договора" enabled="true">
  1074. <boolProp name="XPath.negate">false</boolProp>
  1075. <stringProp name="XPath.xpath">/ConfirmOrderResponse/Body/Ticket/status/text()=&apos;SOLD&apos;</stringProp>
  1076. <boolProp name="XPath.validate">false</boolProp>
  1077. <boolProp name="XPath.whitespace">false</boolProp>
  1078. <boolProp name="XPath.tolerant">false</boolProp>
  1079. <boolProp name="XPath.namespace">false</boolProp>
  1080. </XPathAssertion>
  1081. <hashTree/>
  1082. </hashTree>
  1083. <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Возврат билета" enabled="true">
  1084. <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
  1085. <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
  1086. <collectionProp name="Arguments.arguments">
  1087. <elementProp name="" elementType="HTTPArgument">
  1088. <boolProp name="HTTPArgument.always_encode">false</boolProp>
  1089. <stringProp name="Argument.value">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#xd;
  1090. &lt;ReturnTicketRequest&gt;&#xd;
  1091. &lt;ticketId&gt;${ticketId}&lt;/ticketId&gt;&#xd;
  1092. &lt;Agent&gt;&#xd;
  1093. &lt;inn&gt;2345678901&lt;/inn&gt;&#xd;
  1094. &lt;/Agent&gt;&#xd;
  1095. &lt;/ReturnTicketRequest&gt;</stringProp>
  1096. <stringProp name="Argument.metadata">=</stringProp>
  1097. </elementProp>
  1098. </collectionProp>
  1099. </elementProp>
  1100. <stringProp name="HTTPSampler.domain"></stringProp>
  1101. <stringProp name="HTTPSampler.port"></stringProp>
  1102. <stringProp name="HTTPSampler.protocol"></stringProp>
  1103. <stringProp name="HTTPSampler.contentEncoding"></stringProp>
  1104. <stringProp name="HTTPSampler.path">${__V(server)}/sales/returnTicket</stringProp>
  1105. <stringProp name="HTTPSampler.method">POST</stringProp>
  1106. <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
  1107. <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
  1108. <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
  1109. <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
  1110. <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
  1111. <stringProp name="HTTPSampler.connect_timeout"></stringProp>
  1112. <stringProp name="HTTPSampler.response_timeout"></stringProp>
  1113. </HTTPSamplerProxy>
  1114. <hashTree>
  1115. <XMLAssertion guiclass="XMLAssertionGui" testclass="XMLAssertion" testname="Это XML?" enabled="false"/>
  1116. <hashTree/>
  1117. <XPathAssertion guiclass="XPathAssertionGui" testclass="XPathAssertion" testname="Кол-во билетов = 1" enabled="true">
  1118. <boolProp name="XPath.negate">false</boolProp>
  1119. <stringProp name="XPath.xpath">count(/ReturnTicketResponse/Body/Ticket)=1</stringProp>
  1120. <boolProp name="XPath.validate">false</boolProp>
  1121. <boolProp name="XPath.whitespace">false</boolProp>
  1122. <boolProp name="XPath.tolerant">false</boolProp>
  1123. <boolProp name="XPath.namespace">false</boolProp>
  1124. </XPathAssertion>
  1125. <hashTree/>
  1126. <XPathAssertion guiclass="XPathAssertionGui" testclass="XPathAssertion" testname="Статус договора" enabled="true">
  1127. <boolProp name="XPath.negate">false</boolProp>
  1128. <stringProp name="XPath.xpath">/ReturnTicketResponse/Body/Ticket/status/text()=&apos;RETURNED&apos;</stringProp>
  1129. <boolProp name="XPath.validate">false</boolProp>
  1130. <boolProp name="XPath.whitespace">false</boolProp>
  1131. <boolProp name="XPath.tolerant">false</boolProp>
  1132. <boolProp name="XPath.namespace">false</boolProp>
  1133. </XPathAssertion>
  1134. <hashTree/>
  1135. </hashTree>
  1136. </hashTree>
  1137. </hashTree>
  1138. </hashTree>
  1139. </hashTree>
  1140. <DebugSampler guiclass="TestBeanGUI" testclass="DebugSampler" testname="Debug Sampler" enabled="true">
  1141. <boolProp name="displayJMeterProperties">false</boolProp>
  1142. <boolProp name="displayJMeterVariables">true</boolProp>
  1143. <boolProp name="displaySystemProperties">false</boolProp>
  1144. </DebugSampler>
  1145. <hashTree/>
  1146. <ResultCollector guiclass="ViewResultsFullVisualizer" testclass="ResultCollector" testname="View Results Tree" enabled="true">
  1147. <boolProp name="ResultCollector.error_logging">false</boolProp>
  1148. <objProp>
  1149. <name>saveConfig</name>
  1150. <value class="SampleSaveConfiguration">
  1151. <time>true</time>
  1152. <latency>true</latency>
  1153. <timestamp>true</timestamp>
  1154. <success>true</success>
  1155. <label>true</label>
  1156. <code>true</code>
  1157. <message>true</message>
  1158. <threadName>true</threadName>
  1159. <dataType>true</dataType>
  1160. <encoding>false</encoding>
  1161. <assertions>true</assertions>
  1162. <subresults>true</subresults>
  1163. <responseData>false</responseData>
  1164. <samplerData>false</samplerData>
  1165. <xml>false</xml>
  1166. <fieldNames>false</fieldNames>
  1167. <responseHeaders>false</responseHeaders>
  1168. <requestHeaders>false</requestHeaders>
  1169. <responseDataOnError>false</responseDataOnError>
  1170. <saveAssertionResultsFailureMessage>false</saveAssertionResultsFailureMessage>
  1171. <assertionsResultsToSave>0</assertionsResultsToSave>
  1172. <bytes>true</bytes>
  1173. <threadCounts>true</threadCounts>
  1174. </value>
  1175. </objProp>
  1176. <stringProp name="filename"></stringProp>
  1177. </ResultCollector>
  1178. <hashTree/>
  1179. <ResultCollector guiclass="StatVisualizer" testclass="ResultCollector" testname="Aggregate Report" enabled="true">
  1180. <boolProp name="ResultCollector.error_logging">false</boolProp>
  1181. <objProp>
  1182. <name>saveConfig</name>
  1183. <value class="SampleSaveConfiguration">
  1184. <time>true</time>
  1185. <latency>true</latency>
  1186. <timestamp>true</timestamp>
  1187. <success>true</success>
  1188. <label>true</label>
  1189. <code>true</code>
  1190. <message>true</message>
  1191. <threadName>true</threadName>
  1192. <dataType>true</dataType>
  1193. <encoding>false</encoding>
  1194. <assertions>true</assertions>
  1195. <subresults>true</subresults>
  1196. <responseData>false</responseData>
  1197. <samplerData>false</samplerData>
  1198. <xml>false</xml>
  1199. <fieldNames>false</fieldNames>
  1200. <responseHeaders>false</responseHeaders>
  1201. <requestHeaders>false</requestHeaders>
  1202. <responseDataOnError>false</responseDataOnError>
  1203. <saveAssertionResultsFailureMessage>false</saveAssertionResultsFailureMessage>
  1204. <assertionsResultsToSave>0</assertionsResultsToSave>
  1205. <bytes>true</bytes>
  1206. <threadCounts>true</threadCounts>
  1207. </value>
  1208. </objProp>
  1209. <stringProp name="filename"></stringProp>
  1210. </ResultCollector>
  1211. <hashTree/>
  1212. <ResultCollector guiclass="StatGraphVisualizer" testclass="ResultCollector" testname="Aggregate Graph" enabled="true">
  1213. <boolProp name="ResultCollector.error_logging">false</boolProp>
  1214. <objProp>
  1215. <name>saveConfig</name>
  1216. <value class="SampleSaveConfiguration">
  1217. <time>true</time>
  1218. <latency>true</latency>
  1219. <timestamp>true</timestamp>
  1220. <success>true</success>
  1221. <label>true</label>
  1222. <code>true</code>
  1223. <message>true</message>
  1224. <threadName>true</threadName>
  1225. <dataType>true</dataType>
  1226. <encoding>false</encoding>
  1227. <assertions>true</assertions>
  1228. <subresults>true</subresults>
  1229. <responseData>false</responseData>
  1230. <samplerData>false</samplerData>
  1231. <xml>false</xml>
  1232. <fieldNames>false</fieldNames>
  1233. <responseHeaders>false</responseHeaders>
  1234. <requestHeaders>false</requestHeaders>
  1235. <responseDataOnError>false</responseDataOnError>
  1236. <saveAssertionResultsFailureMessage>false</saveAssertionResultsFailureMessage>
  1237. <assertionsResultsToSave>0</assertionsResultsToSave>
  1238. <bytes>true</bytes>
  1239. <threadCounts>true</threadCounts>
  1240. </value>
  1241. </objProp>
  1242. <stringProp name="filename"></stringProp>
  1243. </ResultCollector>
  1244. <hashTree/>
  1245. </hashTree>
  1246. </hashTree>
  1247. <WorkBench guiclass="WorkBenchGui" testclass="WorkBench" testname="WorkBench" enabled="true">
  1248. <boolProp name="WorkBench.save">true</boolProp>
  1249. </WorkBench>
  1250. <hashTree/>
  1251. </hashTree>
  1252. </jmeterTestPlan>