how handle windows pop up selenium using autoit
Овај водич објашњава различите методе за руковање искачућим прозорима Виндовс-а у селену кад год аутоматизација излази из опсега помоћу алатке АутоИТ:
АутоИТ је независни алат који пружа Селениум-у помоћ у руковању искачућим прозорима као што су искачући прозори за Виндовс аутентификацију, Фласх апликације, Десктоп апликација и тако даље.
Селен је ограничен само на аутоматизацију веб апликација. У неким случајевима се у апликацији може појавити Виндовс скочни прозор са којим Селениум не може да се носи. Да би се бавио таквим сценаријима, АутоИТ пружа руку помоћи у томе што брине о аутоматизацији Виндовс искачућих и десктоп апликација.
=> Посетите овде да бисте видели серију тренинга за селен за све.
Шта ћете научити:
Преглед АутоИТ алата
Ево видео упутства:
Руковање искачућим прозорима Виндовс-а помоћу функције АутоИТ
АутоИТ је независна алатка која се користи за управљање апликацијама заснованим на Виндовс-у. Језик за скриптовање који се користи назива се ВБСцрипт.АутоИт је такође бесплатан програм. Користи комбинацијупомерање миша и потези тастатуре за аутоматизацију радњи које није могуће извршити помоћу управљачког програма селена.
АутоИт се користи у .еке формату тако да се може користити у скрипти Селениум Аутоматион.
Погледајмо пример, при чему бисмо морали отпремите датотеку на пријаву.
Сценариј је отпремање слике профила на ЛинкедИн. Кораци теста за овај сценарио су:
- Унесите УРЛ
- Унесите важеће корисничко име, лозинку и пријавите се.
- Кликните на икону за отпремање профила.
- Појављује се искачући прозор у коме је унета путања за отпремање слике.
До корака 3, Селениум Аутоматион то може да поднесе. Када се појави искачући прозор Виндовс, скрипта АутоИТ се користи за аутоматизацију тог дела.
Погледајмо сада како аутоматизовати радње у искачућем Виндовс-у?
Ово се може решити на 4 различита начина.
- Коришћење Виндовс наредби за отпремање одређене датотеке.
- Употреба контролних команди за отпремање датотеке.
- Коришћење аргумента командне линије за одређивање Имена датотека које ће се отпремити.
- Коришћење алата за снимање АутоИТ.
Све скрипте су креиране помоћу АутоИтСцриптЕдитор, која је доступна у пакету директорија АутоИт.
Иди на АутоИт3> СциТЕ> СциТЕ.еке и отворите апликацију СцриптЕдитор.
# 1) Коришћење Виндовс команди
У АутоИт-у имамо разне скупове функција.
Можете погледати овде. Сада да бисмо аутоматизовали искачуће радње у систему Виндовс, прво морамо да анализирамо акције. Ови укључују:
- Поставите фокус на тренутни прозор.
- У поље Име датотеке унесите путању до датотеке која се отпрема.
- Кликните на дугме Отвори или притисните тастер Ентер на тастатури.
Хајде да детаљно разумемо горње тачке:
- Поставите фокус на тренутни прозор
ВинВаитАцтиве : Поставља фокус курсора на наведено име прозора. У овом случају, наслов прозора је „Отворен“. Дакле, ми наводимо наредбу каоВинВаитАцтиве („Отворено“).
Имајте на уму да се исти Виндовс наслов разликује за сваки прегледач.
Реци, за Фирефок , то је „Отпремање датотеке“, - Дакле, наредба АутоИТ ће битиВинВаитАцтиве („Отпремање датотеке“).
За ИЕ, то је „Филе То Уплоад“ - Дакле, наредба АутоИТ ће битиВинВаитАцтиве („Датотека за отпремање“)
За Цхроме , то је „Отвори“ - Дакле, наредба АутоИТ ће битиВинВаитАцтиве („Отворено“)
Требали бисте одредити наслов прозора на основу прегледача који користите за аутоматизацију.
два. У поље Име датотеке унесите путању до датотеке која се отпрема
Пошаљите - шаље потезе тастатуре или другим речима, симулира акције тастатуре.
Радње могу притискати тастер Ентер, тастер Схифт итд. ИЛИ укуцавање низа, броја итд. У овом примеру морам да укуцам филеНаме, па користим команду за унос имена датотеке у прозор. -Пошаљи („Д: пасош.јпг“)
3. Кликните на дугме Отвори или притисните Ентер на тастатури
Пошаљи ({ЕНТЕР})- шаље ЕНТЕР притисак тастера на прозор, што заузврат довршава радњу отпремања.
које су различите врсте испитивања
Сачувајте скрипту створену на било ком месту. Биће сачувано у .ау3 формату. Једном сачувани, кликните десним тастером миша на датотеку .ау3 и компајлирајте је.
Након компилације претвара се у .еке формат (извршни формат). Ова датотека је оно што користимо у скрипти Селениум.
Једном када је .еке датотека креирана, датотеку у скрипти Селениум Аутоматион можете користити за покретање наредби у њој
Рунтиме.гетРунтиме.екец („овде наведите име датотеке аутоИт еке“)
# 2) Коришћење командних команди
У АутоИТ-у имамо одређене контролне команде за извршавање радњи. Ево листе контролних команди у АутоИТ-у.
Погледајмо како да аутоматизујемо исти сценарио за отпремање датотека користећи ове контролне команде АутоИТ-а.
Сад, редом за аутоматизацију искачућег прозора Виндовс треба извршити следеће радње:
- Поставите фокус на тренутни прозор.
- У поље Име датотеке унесите путању до датотеке која се отпрема.
- Кликните на дугме Отвори или притисните тастер Ентер на тастатури.
Хајде да детаљно разумемо горње тачке:
- Поставите фокус на тренутни прозор
ЦонтролФоцус:Поставља фокус на наведени елемент. У овом случају фокус стављамо на поље за уређивање текста.
Када погледате његов опис, можете видети да захтева један или више параметара. Ове параметре можемо проследити помоћу Виндовс Инфо алата АутоИт.
Омогућава отворите АутоИТ апликацију као доле:
Виндовс алатка за информације отвара се на следећи начин:
Овај алат се користи за преглед елемената у Виндовс апликацији / искачућим прозорима.
Да бисте добили разне атрибуте сваког елемента у искачућем прозору система Виндовс, превуците икону „Финдер“ (Проналажење) на Виндовс Инфо Тоол-у и кликните на елемент да би се приказала његова својства као у наставку.
У алату су приказана његова својства као што је приказано.
За поље Име датотеке својства и одговарајуће вредности су:
- Наслов - отворен
- Име класе - Уреди
- Инстанца - 1
Користећи ова својства, можемо проследити параметре за команду цонтрол.
Сада, да бисмо фокус поставили на поље Име датотеке, позивамо команду „ЦонтролФоцус“ као доле:
- Синтакса: ЦонтролФоцус („наслов“, „текст“, цонтролИД)
- ‘Наслов’ одговара наслову приказаном у алату.
- Цонтрол Ид је комбинација ЦлассНаме + Инстанце у алату
ЦонтролФоцус („Отвори“, „„, „Уреди1“)
Где,
- Отворено - наслов је
- Едит1 - је цонтролИД (цонтролИД = ЦлассНаме + Инстанце)
два. У поље Име датотеке унесите путању до датотеке која се отпрема
ЦонтролСетТект - уноси текст у елемент.
- Синтакса: ЦонтролСетТект („наслов“, „текст“, цонтролИД, „нови текст“ (, застава = 0))
У нашем случају, име датотеке имамо у оквиру за текст.
ЦонтролСетТект („Отвори“, „„, „Уреди1“, „Д: пасош.јпг“)
Где,
- Отворено - наслов је
- Едит1 - је цонтролИД (цонтролИД = ЦлассНаме + Инстанце)
- Д: пасош.јпг - назив је датотеке за отпремање
3. Кликните на дугме Отвори или притисните Ентер на тастатури
ЦонтролЦлицк - изводи акцију клика на елемент. У овом примеру изводимо клик на дугме „Отвори“
- Синтакса: ЦонтролЦлицк („титле“, „тект“, цонтролИД (, буттон = „лефт“ (, цлицкс = 1 (, к (, и))))))
У нашем случају, требало би да кликне на дугме „Отвори“ у искачућем прозору Виндовс.
ЦонтролЦлицк (“Опен”, ”,”, Буттон1 ”)
Где,
- Отворено - наслов је
- Буттон1 - је цонтролИД (цонтролИД = ЦлассНаме + Инстанце)
.Еке датотеку позивамо из селенијског кода помоћу наредбе-Рунтиме.гетРунтиме.екец („овде наведите име датотеке аутоИт еке“)
БЕЛЕШКА: Када морамо да отпремимо више датотека у једној инстанци, можемо одредити сва имена датотека у променљивој и проследити име променљиве у наредбу.
ЦонтролФоцус - поставља фокус на елемент.
$ филес - је променљива креирана и садржи текст / име датотеке за учитавање.
ЦонтролСетТект - преноси променљиву која има имена датотека за учитавање у елемент „Уреди“.
ЦонтолЦлицк - изводи акцију клика на елемент.
# 3) Коришћење командне линије за одређивање назива датотеке за отпремање
Истом поступку се може приступити на другачији начин при чему се Име датотеке добија од корисника. То се ради помоћу командне линије.
Уместо да директно одредимо име датотеке у АутоИТ-у, прослеђујемо га у коду Селениум као доле:
Скрипта АутоИТ: (Уплоад.еке)
ControlFocus(“Open”,””,”Edit1”) ControlSetText(“Open”,””,”Edit1”,$cmdLine(1)) ControlClick(“Open”,””,”Button1”)
Код селена:
Ми га специфицирамо као:
Runtime.getRuntime.exec(“Path of .exe file”+””+ “FileToUpload”)
У овом случају биће
Runtime.getRuntime.exec(“D:automationUpload.exe”+””+ “D:automationimage.jpg”)
Спремите створену датотеку и компајлирајте је да бисте је претворили у извршни формат.
# 4) Коришћење функције снимања АутоИТ-а
Ова функција је доступна само у верзијама испод 3.3.14.0. Верзије веће од те не подржавају ову функцију.
Да бисте отворили алатку за снимање, идите на АутоИт3> Додаци> Ау3Рецорд> Ау3Рецорд.еке
Када почнемо да користимо ово, увек поништите избор опције „Сними миша“, јер интеракција са мишем варира за сваку резолуцију екрана. Увек снимајте потезе тастатуре.
Изаберите „Кликните за снимање“ у алату и радње ће се у њега снимати.
Када завршите са снимањем, изаберите „Кликните да зауставите“ и сачувајте датотеку
Можете да отворите .ау3 датотеку сачувану да бисте видели команде креиране за сваку радњу коју сте извршили
Саставите скрипту и претворите је у .еке датотеку.
Створена .еке датотека се може директно користити у селенијском коду за извршавање као доле:
Runtime.getRuntime.exec(“D:automationRecord.exe”)
Закључак
Према томе, било који Виндовс скочни прозор попут аутентификације или отпремања датотеке или отворене датотеке итд. Може се руковати помоћу АутоИТ-а тако што ће се његова датотека скрипте додати у програм Селениум.
У следећем поглављу сазнаћемо о другом независном алату под називом Сикули који се користи за аутоматизацију апликација помоћу технике препознавања слика.
=> Посетите овде да бисте научили селен из огреботина.
Препоручено читање
- Како се рукује упозорењима / искачућим прозорима у програму Селениум ВебДривер - Водич за селен # 16
- Водич за краставац селенијум: Интеграција Јава Селениум ВебДривер краставца
- 10 најбољих изузетака селена и како поступати са њима (тачан код)
- Увод у Селениум ВебДривер - Водич за селен бр. 8
- Водич за АутоИт - Аутоматско преузимање, инсталирање и основна скрипта за АутоИт
- Водич за ЦхромеДривер Селениум: Тестови Селениум Вебдривер-а на Цхроме-у
- 30+ најбољих водича за селен: научите селен на стварним примерима
- Прилика за хонорарно хонорарно ангажовање стручњака за селен