Advertisement
yboi

Untitled

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