Advertisement
yboi

Untitled

Jul 27th, 2015
246
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.91 KB | None | 0 0
  1. *** Setting ***
  2. Library Selenium2Screenshots
  3. Library String
  4. Library DateTime
  5.  
  6. *** Variables ***
  7. ${locator.tenderId} jquery=h3
  8. ${locator.title} jquery=tender-subject-info>div.row:contains("Назва закупівлі:")>:eq(1)>
  9. ${locator.description} jquery=tender-subject-info>div.row:contains("Детальний опис закупівлі:")>:eq(1)>
  10. ${locator.minimalStep.amount} jquery=tender-subject-info>div.row:contains("Мінімальний крок аукціону, грн.:")>:eq(1)>
  11. ${locator.procuringEntity.name} jquery=customer-info>div.row:contains("Найменування:")>:eq(1)>
  12. ${locator.value.amount} jquery=tender-subject-info>div.row:contains("Повний доступний бюджет закупівлі, грн.:")>:eq(1)>
  13. ${locator.tenderPeriod.startDate} jquery=tender-procedure-info>div.row:contains("Початок прийому пропозицій:")>:eq(1)>
  14. ${locator.tenderPeriod.endDate} jquery=tender-procedure-info>div.row:contains("Завершення прийому пропозицій:")>:eq(1)>
  15. ${locator.enquiryPeriod.startDate} jquery=tender-procedure-info>div.row:contains("Початок періоду уточнень:")>:eq(1)>
  16. ${locator.enquiryPeriod.endDate} jquery=tender-procedure-info>div.row:contains("Завершення періоду уточнень:")>:eq(1)>
  17.  
  18. *** Keywords ***
  19. Підготувати дані для оголошення тендера
  20. ${INITIAL_TENDER_DATA}= prepare_test_tender_data
  21. [return] ${INITIAL_TENDER_DATA}
  22.  
  23. Підготувати клієнт для користувача
  24. [Arguments] @{ARGUMENTS}
  25. [Documentation] Відкрити брaвзер, створити обєкт api wrapper, тощо
  26. ... ${ARGUMENTS[0]} == username
  27. Open Browser ${BROKERS['${USERS.users['${ARGUMENTS[0]}'].broker}'].url} ${USERS.users['${ARGUMENTS[0]}'].browser} alias=${ARGUMENTS[0]}
  28. Set Window Size @{USERS.users['${ARGUMENTS[0]}'].size}
  29. Set Window Position @{USERS.users['${ARGUMENTS[0]}'].position}
  30.  
  31. # login
  32. Wait Until Page Contains Element name=siteLogin 100
  33. Input text name=siteLogin ${BROKERS['${USERS.users['${username}'].broker}'].login}
  34. Input text name=sitePass ${BROKERS['${USERS.users['${username}'].broker}'].password}
  35. Click Button xpath=.//*[@id='table1']/tbody/tr/td/form/p[3]/input
  36.  
  37. Wait Until Page Contains Element jquery=a[href="/cabinet"]
  38. Click Element jquery=a[href="/cabinet"]
  39. Wait Until Page Contains Element name=email 100
  40. Input text name=email mail
  41. Sleep 1
  42. Input text name=email ${USERS.users['${username}'].login}
  43. Sleep 2
  44. Input text name=psw ${USERS.users['${username}'].password}
  45. Wait Until Page Contains Element xpath=//button[contains(@class, 'btn')][./text()='Вхід в кабінет'] 100
  46. Click Element xpath=//button[contains(@class, 'btn')][./text()='Вхід в кабінет']
  47.  
  48. Створити тендер
  49. [Arguments] @{ARGUMENTS}
  50. [Documentation]
  51. ... ${ARGUMENTS[0]} == username
  52. ... ${ARGUMENTS[1]} == tender_data
  53.  
  54. ${items}= Get From Dictionary ${ARGUMENTS[1].data} items
  55. ${title}= Get From Dictionary ${ARGUMENTS[1].data} title
  56. ${description}= Get From Dictionary ${ARGUMENTS[1].data} description
  57. ${budget}= Get From Dictionary ${ARGUMENTS[1].data.value} amount
  58. ${step_rate}= Get From Dictionary ${ARGUMENTS[1].data.minimalStep} amount
  59. ${items_description}= Get From Dictionary ${ARGUMENTS[1].data} description
  60. ${quantity}= Get From Dictionary ${items[0]} quantity
  61. ${countryName}= Get From Dictionary ${ARGUMENTS[1].data.procuringEntity.address} countryName
  62. ${delivery_end_date}= Get From Dictionary ${items[0].deliveryDate} endDate
  63. ${delivery_end_date}= convert_date_to_slash_format ${delivery_end_date}
  64. ${cpv}= Get From Dictionary ${items[0].classification} description_ua
  65. ${cpv_id}= Get From Dictionary ${items[0].classification} id
  66. ${dkpp_desc}= Get From Dictionary ${items[0].additionalClassifications[0]} description
  67. ${dkpp_id}= Get From Dictionary ${items[0].additionalClassifications[0]} id
  68. ${enquiry_end_date}= Get From Dictionary ${ARGUMENTS[1].data.enquiryPeriod} endDate
  69. ${enquiry_end_date}= convert_date_to_slash_format ${enquiry_end_date}
  70. ${end_date}= Get From Dictionary ${ARGUMENTS[1].data.tenderPeriod} endDate
  71. ${end_date}= convert_date_to_slash_format ${end_date}
  72.  
  73. Selenium2Library.Switch Browser ${ARGUMENTS[0]}
  74. Wait Until Page Contains Element jquery=a[href="/tenders/new"] 100
  75. Click Element jquery=a[href="/tenders/new"]
  76. Wait Until Page Contains Element name=tender_title 100
  77. Input text name=tender_title ${title}
  78. Wait Until Page Contains Element name=tender_description 100
  79. Input text name=tender_description ${description}
  80. Wait Until Page Contains Element name=tender_value_amount 100
  81. Input text name=tender_value_amount ${budget}
  82. Wait Until Page Contains Element name=tender_minimalStep_amount 100
  83. Input text name=tender_minimalStep_amount ${step_rate}
  84. Wait Until Page Contains Element name=items[0][item_description] 100
  85. Input text name=items[0][item_description] ${items_description}
  86. Wait Until Page Contains Element name=items[0][item_quantity] 100
  87. Input text name=items[0][item_quantity] ${quantity}
  88. Wait Until Page Contains Element name=items[0][item_deliveryAddress_countryName] 100
  89. Input text name=items[0][item_deliveryAddress_countryName] ${countryName}
  90. Wait Until Page Contains Element name=items[0][item_deliveryDate_endDate] 100
  91. Input text name=items[0][item_deliveryDate_endDate] ${delivery_end_date}
  92. Wait Until Page Contains Element xpath=//a[contains(@data-class, 'cpv')][./text()='Визначити за довідником'] 100
  93. Click Element xpath=//a[contains(@data-class, 'cpv')][./text()='Визначити за довідником']
  94. Select Frame xpath=//iframe[contains(@src,'/js/classifications/cpv/uk.htm?relation=true')]
  95. Input text id=search ${cpv}
  96. Wait Until Page Contains ${cpv_id}
  97. Click Element xpath=//a[contains(@class,'jstree-anchor')]
  98. Click Element xpath=.//*[@id='select']
  99. Unselect Frame
  100. Wait Until Page Contains Element xpath=//a[contains(@data-class, 'dkpp')][./text()='Визначити за довідником'] 100
  101. Click Element xpath=//a[contains(@data-class, 'dkpp')][./text()='Визначити за довідником']
  102. Select Frame xpath=//iframe[contains(@src,'/js/classifications/dkpp/uk.htm?relation=true')]
  103. Input text id=search ${dkpp_desc}
  104. Wait Until Page Contains ${dkpp_id}
  105. Click Element xpath=//a[contains(@id,'${dkpp_id}')]
  106. Click Element xpath=.//*[@id='select']
  107. Unselect Frame
  108. Wait Until Page Contains Element name=tender_enquiryPeriod_endDate 100
  109. Input text name=tender_enquiryPeriod_endDate ${enquiry_end_date}
  110. Wait Until Page Contains Element name=tender_tenderPeriod_endDate 100
  111. Input text name=tender_tenderPeriod_endDate ${end_date}
  112. Wait Until Page Contains Element name=do 100
  113. Click Element name=do
  114. Wait Until Page Contains Element xpath=//a[contains(@class, 'button pubBtn')] 100
  115. Click Element xpath=//a[contains(@class, 'button pubBtn')]
  116. Wait Until Page Contains Тендер опубліковано 100
  117. Wait Until Page Contains Element jquery=a[href="/cabinet/tenders/purchase"] 100
  118. Click Element jquery=a[href="/cabinet/tenders/purchase"]
  119. ${tender_UAid}= Wait Until Keyword Succeeds 240sec 2sec get tender UAid
  120. ${tender_UAid}= Convert To String ${description}
  121. ${Ids} Create List ${tender_UAid}
  122. [return] ${Ids}
  123.  
  124. get tender UAid
  125. ${tender_UAid}= Get Text name=filter[search]
  126. ${tender_UAid}= Get Substring ${tender_UAid} 7 27
  127.  
  128. Багатопредметний тендер
  129. [Arguments] @{ARGUMENTS}
  130. [Documentation]
  131. ... ${ARGUMENTS[0]} == username
  132. ... ${ARGUMENTS[1]} == tender_data
  133.  
  134.  
  135.  
  136. Пошук тендера по ідентифікатору
  137. [Arguments] @{ARGUMENTS}
  138. [Documentation]
  139. ... ${ARGUMENTS[0]} == username
  140. ... ${ARGUMENTS[1]} == tenderId
  141. ... ${ARGUMENTS[2]} == id
  142. Switch browser ${ARGUMENTS[0]}
  143. ${current_location}= Get Location
  144. Run keyword if '${BROKERS['${USERS.users['${username}'].broker}'].url}/#/tenderDetailes/${ARGUMENTS[2]}'=='${current_location}' Reload Page
  145. Go to ${BROKERS['${USERS.users['${username}'].broker}'].url}
  146. Wait Until Page Contains E-TENDER - центр електронної торгівлі 10
  147. sleep 1
  148. Input Text jquery=input[ng-change='search()'] ${ARGUMENTS[1]}
  149. Click Link jquery=a[ng-click='search()']
  150. sleep 2
  151. ${last_note_id}= Add pointy note jquery=a[href^="#/tenderDetailes"] Found tender with tenderID "${ARGUMENTS[1]}" width=200 position=bottom
  152. sleep 1
  153. Remove element ${last_note_id}
  154. Click Link jquery=a[href^="#/tenderDetailes"]
  155. Wait Until Page Contains ${ARGUMENTS[1]} 10
  156. sleep 1
  157. Capture Page Screenshot
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement