Шта су изузеци?
Изузетак је грешка што се дешава у време извршења програма. Међутим, док покрећу програм, програмски језици генеришу изузетак којим треба поступати како би се избегло рушење вашег програма.
Изузетак указује на то да се, иако се догађај може догодити, ова врста догађаја догађа ретко. Када метода не може да обради изузетак, она се пребацује на функцију позиваоца. На крају, када се изузетак избаци из главне функције, програм се нагло прекида.
У овом упутству ћете научити:
- Шта су изузеци?
- Изузеци у управљачком програму Селениум Веб
- Руковање изузецима селена
- Методе за приказивање изузетака
Уобичајени изузеци у управљачком програму Селениум Веб
Име изузетка | Опис |
ЕлементНотВисиблеЕкцептион | Ова врста селенијског изузетка се јавља када постојећи елемент у ДОМ-у има постављену функцију као скривену. |
ЕлементНотСелецтаблеЕкцептион | Овај изузетак селена се дешава када је елемент представљен у ДОМ-у, али можете бити у могућности да га одаберете. Због тога није могуће комуницирати. |
НоСуцхЕлементЕкцептион | Овај изузетак се јавља ако елемент није могуће пронаћи. |
НоСуцхФрамеЕкцептион | Овај изузетак се јавља ако циљ оквира на који треба пребацити не постоји. |
НоАлертПресентЕкцептион | Овај изузетак се јавља када се пребаците на ниједно упозорење. |
НоСуцхВиндовЕкцептион | Овај изузетак се јавља ако циљ прозора који треба да се пребаци не постоји. |
СталеЕлементРеференцеЕкцептион | Овај изузетак селена се дешава када се веб елемент одвоји од тренутног ДОМ-а. |
СессионНотФоундЕкцептион | ВебДривер делује након што изађете из прегледача. |
ТимеоутЕкцептион | Бачен када нема довољно времена за извршавање наредбе. На пример, претражени елемент није пронађен у наведеном времену. |
ВебДриверЕкцептион | Овај изузетак се дешава када ВебДривер делује одмах након што затворите прегледач. |
ЦоннецтионЦлоседЕкцептион | Ова врста изузетка се дешава када постоји прекид везе у управљачком програму. |
ЕлементЦлицкИнтерцептедЕкцептион | Команда се можда неће довршити јер елемент који прима догађаје прикрива елемент на који је кликнуто. |
ЕлементНотИнтерацтаблеЕкцептион | Овај изузетак селена баца се када је било који елемент представљен у ДОМ-у. Међутим, немогуће је ступити у интеракцију са таквим елементом. |
ЕррорИнРеспонсеЕкцептион | То се дешава током интеракције са Фирефок екстензијом или удаљеним сервером управљачких програма. |
ЕррорХандлер.УнкновнСерверЕкцептион | Изузетак се користи као резервирано место у случају да сервер врати грешку без трага стека. |
ИмеАцтиватионФаиледЕкцептион | Ово очекивање ће се десити када активирање ИМЕ мотора не успе. |
ИмеНотАваилаблеЕкцептион | Догађа се када подршка за ИМЕ није доступна. |
ИнсецуреЦертифицатеЕкцептион | Навигација је учинила да кориснички агент погоди упозорење о сертификату. То може проузроковати неважећи или истекао ТЛС сертификат. |
ИнвалидАргументЕкцептион | Појављује се када аргумент не припада очекиваном типу. |
ИнвалидЦоокиеДомаинЕкцептион | То се дешава када покушате да додате колачић под други домен уместо тренутне УРЛ адресе. |
ИнвалидЦоординатесЕкцептион | Ова врста изузетака подудара се са операцијом у интеракцији која није важећа. |
ИнвалидЕлементСтатеЕкцептио | Појављује се када наредба не може бити завршена када је елемент неважећи. |
ИнвалидСессионИдЕкцептион | Овај изузетак се догодио када дати ИД сесије није укључен у листу активних сесија. То значи да сесија не постоји или је неактивна. |
ИнвалидСвитцхТоТаргетЕкцептион | То се дешава када циљ оквира или прозора који треба пребацити не постоји. |
ЈавасцриптЕкцептион | До овог проблема долази приликом извршавања ЈаваСцрипт-а који је дао корисник. |
ЈсонЕкцептион | До тога долази када приуштите себи да добијете сесију када сесија није креирана. |
НоСуцхАттрибутеЕкцептион | Ова врста изузетка се дешава када атрибут елемента није могуће пронаћи. |
МовеТаргетОутОфБоундсЕкцептион | Догађа се ако циљ који је дат методологији АцтионЦхаинс мове () није важећи. На пример, ван документа. |
НоСуцхЦонтектЕкцептион | ЦонтектАваре врши тестирање мобилних уређаја. |
НоСуцхЦоокиеЕкцептион | Овај изузетак се јавља када није пронађен ниједан колачић који се подудара са датим именом путање за све повезане колачиће документа тренутно прегледавања. |
НотФоундЕкцептион | Овај изузетак је подкласа ВебДриверЕкцептион. То ће се догодити када елемент на ДОМ-у не постоји. |
РемотеДриверСерверЕкцептион | Овај изузетак Селениум баца се када сервер не реагује због проблема што описане могућности нису исправне. |
СцреенсхотЕкцептион | Није могуће снимити екран. |
СессионНотЦреатедЕкцептион | То се дешава када нова сесија не може бити успешно креирана. |
УнаблеТоСетЦоокиеЕкцептион | То се дешава ако возач не може да постави колачић. |
УнекпецтедТагНамеЕкцептион | Дешава се ако класа подршке није добила веб елемент како се очекивало. |
УнхандледАлертЕкцептион | Ово се очекује када постоји упозорење, али ВебДривер није у могућности да изврши операцију упозорења. |
УнекпецтедАлертПресентЕкцептион | Појављује се када се појави неочекивано упозорење. |
УнкновнМетходЕкцептион | Овај изузетак се дешава када се тражена команда подудара са познатим УРЛ-ом, али се не подудара са методологијом за одређени УРЛ. |
УнреацхаблеБровсерЕкцептион | Овај изузетак се дешава само када прегледач из неког разлога не може да се отвори или откаже. |
УнсуппортедЦоммандЕкцептион | То се дешава када удаљени ВебДривер не шаље важеће наредбе како се очекивало. |
Руковање изузецима селена
Ево неколико важних стандарда помоћу којих можете да се носите са изузецима у програму Селениум ВебДривер:
Три-цатцх : Овај метод може ухватити изузетке, који користи комбинацију кључних речи три анд цатцх. Команда три означава почетак блока, а Цатцх се поставља на крај блока три, што помаже у решавању изузетка.
покушати{// Цоде} цатцх (Изузетак е) {// Код за руковање изузетком}
- Више блокова улова : Постоје разне врсте изузетака, а можете очекивати више од једног изузетка од једног блока кода. Вишеструки улови помажу вам да рукујете сваком врстом Екцептион-а засебно са засебним блоком кода. Може се користити за више од два блока улова и нема ограничења у броју блокова улова.
покушати{// Цоде} цатцх (ЕкцептионТипе1 е1) {// Код за руковање изузетком 1} цатцх (ЕкцептионТипе2 е2) {// Кодекс за руковање изузетком 2}
- Тхров : Када желите да генеришете изузетак, кључна реч Тхров користи се за бацање Екцептион-а да би се њиме руковало у времену извођења. Када бацате изузетак без руковања њиме, они морају да користе кључну реч Тхров.
јавна статичка воид аниФунцтион () баца изузетак {покушати {// напиши свој код овде} Улов (изузетак б) {// Ради шта год желиш да изведеш// Баците изузетак назад у систембацање (б);}}
- Вишеструки изузеци : Можете споменути разне изузетке у клаузули о бацању.
јавна статичка воид аниФунцтион () баца ЕкцептионТипе1, ЕкцептионТипе2 {покушати {// напиши свој код овде} цатцх (ЕкцептионТипе1 е1) {// Код за обраду изузетка 1} цатцх (ЕкцептионТипе1 е2) {// Код за обраду изузетка 2}
- Коначно : Кључна реч Финал се користи за стварање блока кода испод блока три. То је коначни код који вам помаже у извршавању, без обзира на појаву изузетка
покушати {// Цоде} цатцх (ЕкцептионТипе1 е1) {// Цатцх блоцк} цатцх (ЕкцептионТипе2 е2) {// Цатцх блоцк} цатцх (ЕкцептионТипе3 е3) {// Цатцх блоцк} коначно {// Коначни блок се увек извршава.}
Методе за приказивање изузетака
Да бисте приказали информације о изузетку, такође можете да користите следеће методе:
- принтСтацкТраце () : Ова функција исписује траг стека, име изузетка и други користан опис.
- тоСтринг () : Ова функција враћа текстуалну поруку која описује име и опис изузетка.
- гетМессаге () : Помаже у приказивању описа изузетка.
Резиме:
- Изузетак је грешка која се дешава у време извршавања програма.
- Три-цатцх: Овај метод може ухватити изузетке, који користи комбинацију кључних речи три анд цатцх.
- Вишеструки улови помажу вам да рукујете сваком врстом Екцептион-а засебно са засебним блоком кода.
- Кључна реч Тхров користи се за бацање Екцептион-а да би се њоме руковало у времену извођења.
- принтСтацкТраце (): Ова функција исписује траг стека, име изузетка и други користан опис
- тоСтринг (): Ова функција враћа текстуалну поруку која описује име и опис изузетка.
- гетМессаге (): Помаже у приказивању описа изузетка.