Advertisement
yboi

Untitled

Jul 6th, 2015
188
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.93 KB | None | 0 0
  1. *** Setting ***
  2. Library Selenium2Screenshots
  3. Library String
  4. Library DateTime
  5. Library Selenium2Library
  6. Library Collections
  7. Library Python
  8.  
  9. *** Variables ***
  10. ${locator.tenderId} jquery=h3
  11. ${locator.title} jquery=tender-subject-info>div.row:contains("Назва закупівлі:")>:eq(1)>
  12. ${locator.description} jquery=tender-subject-info>div.row:contains("Детальний опис закупівлі:")>:eq(1)>
  13. ${locator.minimalStep.amount} jquery=tender-subject-info>div.row:contains("Мінімальний крок аукціону, грн.:")>:eq(1)>
  14. ${locator.procuringEntity.name} jquery=customer-info>div.row:contains("Найменування:")>:eq(1)>
  15. ${locator.value.amount} jquery=tender-subject-info>div.row:contains("Повний доступний бюджет закупівлі, грн.:")>:eq(1)>
  16. ${locator.tenderPeriod.startDate} jquery=tender-procedure-info>div.row:contains("Початок прийому пропозицій:")>:eq(1)>
  17. ${locator.tenderPeriod.endDate} jquery=tender-procedure-info>div.row:contains("Завершення прийому пропозицій:")>:eq(1)>
  18. ${locator.enquiryPeriod.startDate} jquery=tender-procedure-info>div.row:contains("Початок періоду уточнень:")>:eq(1)>
  19. ${locator.enquiryPeriod.endDate} jquery=tender-procedure-info>div.row:contains("Завершення періоду уточнень:")>:eq(1)>
  20. ${HOMEPAGE} http://uat.e-tender.biz/#/profile
  21. ${BROWSER} chrome
  22. ${LOGIN} st_org
  23. ${PASSWORD} 12345678
  24. ${title}= Get From Dictionary ${ARGUMENTS[1].data} title
  25. ${description}= Get From Dictionary ${ARGUMENTS[1].data} description
  26.  
  27. *** Keywords ***
  28. Підготувати дані для можливості задати питання
  29. ${INITIAL_TENDER_DATA}= prepare_etender_test_question_data
  30. [return] ${INITIAL_TENDER_DATA}
  31.  
  32. Підготувати клієнт для користувача
  33. [Arguments] ${username}
  34. [Documentation] Відкрити брaвзер, створити обєкт api wrapper, тощо
  35. Open Browser ${BROKERS['${USERS.users['${username}'].broker}'].url} ${USERS.users['${username}'].browser} alias=${username}
  36. Set Window Position @{USERS.users['${username}'].position}
  37. Set Window Size @{USERS.users['${username}'].size}
  38. Log Variables
  39.  
  40. Go to homepage
  41. [Arguments] ${username}
  42. Switch Browser ${username}
  43. Go To ${HOMEPAGE}
  44.  
  45. Login
  46. Wait Until Page Contains Element id=inputUsername 100
  47. Input text id=inputUsername ${LOGIN}
  48. Wait Until Page Contains Element id=inputPassword
  49. Input text id=inputPassword ${PASSWORD}
  50. Click Button id=btn_submit
  51.  
  52. Пошук тендера по ідентифікатору
  53. [Arguments] @{ARGUMENTS}
  54. [Documentation]
  55. ... ${ARGUMENTS[0]} == username
  56. ... ${ARGUMENTS[1]} == tenderId
  57. ... ${ARGUMENTS[2]} == id
  58. Switch browser ${ARGUMENTS[0]}
  59. ${current_location}= Get Location
  60. Run keyword if '${BROKERS['${USERS.users['${username}'].broker}'].url}/#/tenderDetailes/${ARGUMENTS[2]}'=='${current_location}' Reload Page
  61. Go to ${BROKERS['${USERS.users['${username}'].broker}'].url}
  62. Wait Until Page Contains E-TENDER - центр електронної торгівлі 10
  63. sleep 1
  64. Input Text jquery=input[ng-change='search()'] ${ARGUMENTS[1]}
  65. Click Link jquery=a[ng-click='search()']
  66. sleep 2
  67. # ${last_note_id}= Add pointy note jquery=a[href^="#/tenderDetailes"] Found tender with tenderID "${ARGUMENTS[1]}" width=200 position=bottom
  68. # sleep 1
  69. # Remove element ${last_note_id}
  70. Click Link jquery=a[href^="#/tenderDetailes"]
  71. Wait Until Page Contains ${ARGUMENTS[1]} 10
  72. sleep 1
  73. Capture Page Screenshot
  74.  
  75. обновити сторінку з тендером
  76. [Arguments] @{ARGUMENTS}
  77. [Documentation]
  78. ... ${ARGUMENTS[0]} == username
  79. ... ${ARGUMENTS[1]} == tenderId
  80. ... ${ARGUMENTS[2]} == id
  81. ${current_location}= Get Location
  82. Run keyword if '${BROKERS['${USERS.users['${username}'].broker}'].url}/#/tenderDetailes/${ARGUMENTS[2]}'=='${current_location}' Reload Page
  83. Run keyword unless '${BROKERS['${USERS.users['${username}'].broker}'].url}/#/tenderDetailes/${ARGUMENTS[2]}'=='${current_location}' Пошук тендера по ідентифікатору @{ARGUMENTS}
  84. Wait Until Page Contains ${ARGUMENTS[1]} 10
  85. sleep 1
  86.  
  87. отримати інформацію із тендера
  88. [Arguments] @{ARGUMENTS}
  89. [Documentation]
  90. ... ${ARGUMENTS[0]} == username
  91. ... ${ARGUMENTS[1]} == fieldname
  92. Switch browser ${ARGUMENTS[0]}
  93. ${return_value}= run keyword отримати інформацію про ${ARGUMENTS[1]}
  94. [return] ${return_value}
  95.  
  96. Відмітити на сторінці поле з тендера
  97. [Arguments] ${fieldname} ${locator}
  98. ${last_note_id}= Add pointy note ${locator} Found ${fieldname} width=200 position=bottom
  99. Align elements horizontally ${locator} ${last_note_id}
  100. sleep 1
  101. Remove element ${last_note_id}
  102.  
  103. Отримати тест із поля і показати на сторінці
  104. [Arguments] ${fieldname}
  105. sleep 3
  106. # відмітити на сторінці поле з тендера ${fieldname} ${locator.${fieldname}}
  107. ${return_value}= Get Text ${locator.${fieldname}}
  108. [return] ${return_value}
  109.  
  110. отримати інформацію про tenderId
  111. ${return_value}= Отримати тест із поля і показати на сторінці tenderId
  112. [return] ${return_value.split(' ')[1]}
  113.  
  114. отримати інформацію про title
  115. ${return_value}= Отримати тест із поля і показати на сторінці title
  116. [return] ${return_value}
  117.  
  118. отримати інформацію про description
  119. ${return_value}= Отримати тест із поля і показати на сторінці description
  120. [return] ${return_value}
  121.  
  122. отримати інформацію про minimalStep.amount
  123. ${return_value}= Отримати тест із поля і показати на сторінці minimalStep.amount
  124. ${return_value}= Convert To Number ${return_value.split(' ')[0]}
  125. [return] ${return_value}
  126.  
  127. отримати інформацію про procuringEntity.name
  128. ${return_value}= Отримати тест із поля і показати на сторінці procuringEntity.name
  129. [return] ${return_value}
  130.  
  131.  
  132. отримати інформацію про value.amount
  133. ${return_value}= Отримати тест із поля і показати на сторінці value.amount
  134. ${return_value}= Evaluate "".join("${return_value}".split(' ')[:-3])
  135. ${return_value}= Convert To Number ${return_value}
  136. [return] ${return_value}
  137.  
  138. отримати інформацію про tenderPeriod.startDate
  139. ${return_value}= Отримати тест із поля і показати на сторінці tenderPeriod.startDate
  140. [return] ${return_value}
  141.  
  142. отримати інформацію про tenderPeriod.endDate
  143. ${return_value}= Отримати тест із поля і показати на сторінці tenderPeriod.endDate
  144. [return] ${return_value}
  145.  
  146. отримати інформацію про enquiryPeriod.startDate
  147. ${return_value}= Отримати тест із поля і показати на сторінці enquiryPeriod.startDate
  148. [return] ${return_value}
  149.  
  150. отримати інформацію про enquiryPeriod.endDate
  151. ${return_value}= Отримати тест із поля і показати на сторінці enquiryPeriod.endDate
  152. [return] ${return_value}
  153.  
  154.  
  155. отримати інформацію про items[${item_id}].description
  156. відмітити на сторінці поле з тендера items[${item_id}].description jquery=tender-subject-info.ng-isolate-scope>div.row:contains("Детальний опис предмету закупівлі:")>:eq(1)>
  157. ${return_value}= Get Text jquery=tender-subject-info.ng-isolate-scope>div.row:contains("Детальний опис предмету закупівлі:")>:eq(1)>
  158. [return] ${return_value}
  159.  
  160. отримати інформацію про items[${item_id}].quantity
  161. відмітити на сторінці поле з тендера items[${item_id}].quantity jquery=tender-subject-info.ng-isolate-scope>div.row:contains("Кількість:")>:eq(1)>
  162. ${return_value}= Get Text jquery=tender-subject-info.ng-isolate-scope>div.row:contains("Кількість:")>:eq(1)>
  163. ${return_value}= Convert To Number ${return_value}
  164. [return] ${return_value}
  165.  
  166. отримати інформацію про items[${item_id}].classification.id
  167. відмітити на сторінці поле з тендера items[0].classification.id jquery=tender-subject-info>div.row:contains("Класифікатор CPV:")>:eq(1)>
  168. ${return_value}= Get Text jquery=tender-subject-info>div.row:contains("Класифікатор CPV:")>:eq(1)>
  169. [return] ${return_value.split(' ')[0]}
  170.  
  171. отримати інформацію про items[${item_id}].classification.scheme
  172. відмітити на сторінці поле з тендера items[0].classification.id jquery=tender-subject-info>div.row:contains("CPV")>:eq(1)>
  173. ${return_value}= Get Text jquery=tender-subject-info>div.row:contains("CPV")>:eq(1)>
  174. [return] ${return_value.split(' ')[0]}
  175.  
  176. отримати інформацію про items[${item_id}].classification.description
  177. відмітити на сторінці поле з тендера classification.description jquery=tender-subject-info>div.row:contains("Класифікатор CPV:")>:eq(1)>
  178. ${return_value}= Get Text jquery=tender-subject-info>div.row:contains("Класифікатор CPV:")>:eq(1)>
  179. ${return_value}= catenate @{return_value.split(' ')[1:]}
  180. [return] ${return_value}
  181.  
  182. отримати інформацію про items[${item_id}].deliveryAddress
  183. ${return_value}= Отримати тест із поля і показати на сторінці items[${item_id}].deliveryAddress
  184. [return] ${return_value}
  185.  
  186. отримати інформацію про items[${item_id}].deliveryDate
  187. ${return_value}= Отримати тест із поля і показати на сторінці items[${item_id}].deliveryDate
  188. [return] ${return_value}
  189.  
  190. отримати інформацію про questions[${question_id}].title
  191. відмітити на сторінці поле з тендера questions title jquery=tender-questions>div:eq(1)>div.row:contains("Тема:")>:eq(1)>
  192. ${return_value}= Get Text jquery=tender-questions>div:eq(1)>div.row:contains("Тема:")>:eq(1)>
  193. [return] ${return_value}
  194.  
  195. отримати інформацію про questions[${question_id}].description
  196. відмітити на сторінці поле з тендера questions description jquery=tender-questions>div:eq(1)>div.row:contains("Питання:")>:eq(1)>
  197. ${return_value}= Get Text jquery=tender-questions>div:eq(1)>div.row:contains("Питання:")>:eq(1)>
  198. [return] ${return_value}
  199.  
  200. отримати інформацію про questions[${question_id}].date
  201. відмітити на сторінці поле з тендера question date jquery=tender-questions>div:eq(1)>div.row:contains("Дата:")>:eq(1)>
  202. ${return_value}= Get Text jquery=tender-questions>div:eq(1)>div.row:contains("Дата:")>:eq(1)>
  203. [return] ${return_value}
  204.  
  205. отримати інформацію про questions[${question_id}].answer
  206. відмітити на сторінці поле з тендера question answer jquery=tender-questions>div:eq(1)>div:last>
  207. ${return_value}= Get Text jquery=tender-questions>div:eq(1)>div:last>
  208. [return] ${return_value}
  209.  
  210. Задати питання
  211. [Arguments] @{ARGUMENTS}
  212. log many @{ARGUMENTS}
  213. Go to homepage ${ARGUMENTS[0]}
  214.  
  215. Login
  216. Maximize Browser Window
  217. Go to http://uat.e-tender.biz/#/
  218. Wait Until Page Contains Element jquery=input[ng-change='search()']
  219. Input Text jquery=input[ng-change='search()'] UA-2015-06-12-000038
  220. Wait Until Page Contains Element jquery=a[ng-click="search()"]
  221. Click Link jquery=a[ng-click="search()"]
  222.  
  223. Wait Until Page Contains Element jquery=a[href^="#/tenderDetailes"]
  224. Click Link jquery=a[href^="#/tenderDetailes"]
  225.  
  226. Wait Until Page Contains Element jquery=a[href^="#/addQuestion/"]
  227. Click Link jquery=a[href^="#/addQuestion/"]
  228.  
  229. Wait Until Page Contains Element id=title
  230. Input text id=title ${title}
  231. Input text id=description ${description}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement