2 Објекти JavaScript ставке Browser-а

Преглед

Ова секција описује Zabbix додатке за JavaScript језик имплементиран са Duktape-ом за употребу у скрипти [Browser item] (/manual/config/items/itemtypes/browser). Ови додаци допуњују JavaScript објекте описане на страници [Додатни JavaScript објекти] (/manual/config/items/preprocessing/javascript/javascript_objects).

Прегледач

Browser објект управља сесијама WebDriver-а, иницијализирајући сесију након креирања и прекидајући је након уништења. Једна скрипта може да подржи до четири Browser објекта.

Да бисте направили објекат Browser, користите синтаксу new Browser(options). Параметар options (JSON објекат) одређује опције прегледача, обично резултат методе WebDriver опција (на пример, Browser.chromeOptions()).

Следеће методе су подржане за Browser објекат.

Method Description
navigate(url) Идите до одређеног URL-а.

Параметри:
url - (string) URL до којег желите да идете.
getUrl() Враћа стринг са URL-ом отворене странице.
getPageSource() Враћа стринг са изворним кодом отворене странице.
findElement(strategy, selector) Враћа објекат Element са једним елементом на отвореној страници (или враћаnull ако се ниједан елемент не подудара са strategy и selector).

Параметри:
strategy - (string, CSS selector/link text/partial link text/tag name/Xpath) Стратегија за локацију;
selector - (string) Селектор елемената који користи наведену стратегију локације.
findElements(strategy, target) Враћа низ Element објеката са више елемената на отвореној страници (или враћа празан низ ако се ниједан елемент не подудара са стратегијом локације и циљем).

Параметри:
strategy - (string, CSS selector/link text/partial link text/tag name/Xpath) Стратегија за локацију;
target - (string) Селектор елемената који користи наведену стратегију локације.
getCookies() Враћа низ Cookie објеката.
addCookie(cookie) Поставља колачиће.

Параметри:
cookie - (Cookie објекат) Колачић за подешавање.
getScreenshot() Враћа стринг кодиран у Base64 који представља слику видљивог дела прозора прегледача.
setScreenSize(x,y) Поставља величину прозора прегледача.

Параметри:
x - (string) Висина у пикселима;
y - (string) Ширина у пиксела.
setScriptTimeout(timeout) Поставља време чекања за учитавање скрипте.

Параметри:
timeout - (integer) Вредност временског ограничења у милисекундама.
setSessionTimeout(timeout) Подесите временско ограничење сесије (учитавање странице).

Параметри:
timeout - (integer) Вредност временса чекања у милисекундама.
setElementWaitTimeout(timeout) Поставља време чекања за стратегију лоцирања елемента (имплицитно).

Параметри:
timeout - (integer) - Вредност временског ограничења у милисекундама.
collectPerfEntries(mark) Прикупља уносе о перформансама које треба преузети помоћу методе getResult().

Параметри:
mark - (стринг, опционо) Ознака снимка перформанси.
getRawPerfEntries() Враћа низ објеката о подацима о перформанси.
getResult() Враћа објекат Result са статистиком сесије претраживача (информације о грешци, снимци перформансе, итд.).
getError() Враћа објекат BrowserError са грешкама претраживача (или враћа null ако нема грешака у претраживачу).
setError(message) Поставља прилагођену поруку о грешци која ће бити укључена у објекат Result.

Параметри:
message - (string) Порука о грешци.
discardError() Одбацује грешку која ће бити враћена у објекту Result.
getAlert() Враћа објекат Alert са упозорењима претраживача (или враћа null ако нема упозорења претраживача).
chromeOptions() Враћа објекат chromeOptions са унапред дефинисаним опцијама прегледача Chrome.
firefoxOptions() Враћа објекат firefoxOptions са унапред дефинисаним опцијама претраживача Firefox.
safariOptions() Враћа објекат safariOptions са унапред дефинисаним опцијама прегледача Safari.
edgeOptions() Враћа објекат edgeOptions са унапред дефинисаним опцијама прегледача Edge.
switchFrame(target) Пребацује се на одређени оквир. Подржано од верзије 7.0.4.

Параметри:
target - (елемент претраживача или integer, опционо) Циљни оквир. Да бисте изабрали оквир по елемент, проследите елемент. Да бисте изабрали оквир по индексу, проследите број. Ако оставите празно, пребациће се на контекст прегледања највишег нивоа.

Све методе претраживача могу изазвати следеће грешке:

  • BrowserError - изведена из објекта Error који се избацује ако конструктор Browser не успе; садржи додатно својство browser са објектом Browser који је избацио ову BrowserError.
  • WebdriverError - изведено из BrowserError; садржи иста својства као објекат BrowserError, која указују на то да ли је грешка генерисана као одговор на грешку у одговору WebDriver-а.

Елемент

Објекат Element се враћа од стране Browser објекта методама findElement()/findElements() и не може се директно конструисати.

Објекат Element представља елемент на веб страници и обезбеђује методе за интеракцију са њим.

Следеће методе су подржане са објектом Element.

Method Description
getAttribute(name) Враћа вредност атрибута атрибута елемента (или враћа null ако наведени атрибут није пронађен).

Параметри:
name - (стринг) Име атрибута.
getProperty(name) Враћа вредност својства елемента (или враћа null ако наведени атрибут није пронађен).

Параметри:
name - (стринг) Назив својства.
getText() Враћа стринг текстуалне вредности текста елемента.
click() Кликните на елемент.
clear() Очистити садржај елемента који се може уређивати.
sendKeys(keys) Шаље кључеве.

Параметри:
keys - (стринг) Кључеви за слање.

Објекaт Cookie се враћа од стране Browser објектаgetCookies() методом и преноси се у метод addCookie().

Иако објекат Cookie нема никакве методе, може садржати следећа својства:

Property Type Description
name string Назив колачића.
value string Вредност колачића.
path string Путања за коју је колачић важећи.
Подразумевано је "/" ако се изостави приликом додавања колачића.
domain string Домен на који је колачић видљив.
Подразумевано је URL домен сесије активног документа контекста тренутног прегледача ако се изостави приликом додавања колачића.
secure boolean Означава да ли је колачић безбедан.
Подразумевано је false ако се изостави приликом додавања колачића.
httpOnly boolean Означава да ли је колачић само за HTTP.
Подразумевано је false ако се изостави приликом додавања колачића.
expiry integer Време истека колачића (у секундама од Unix епохе). Не сме се подесити ако се изостави приликом додавања колачића.
sameSite string Атрибут sameSite колачића, који контролише да ли колачић треба да буде ограничен на контекст прве стране или на исти сајт.
Може да се подеси на "Lax" или "Strict".
Подразумевано је `"None" ако није изостављено приликом додавања колачића.

Упозорење

Објекат Alert представља упозорење веб странице, враћа га метода getAlert() објекта Browser и не може се директно конструисати.

Објекат Alert садржи својство text са текстом упозорења (или null ако нема упозорења).

Следеће методе су подржане са објектом Alert.

Method Description
accept() Прихвата упозорење.
dismiss() Одбацује упозорење.

Резултат

Објекат Result садржи статистику сесије и враћа га метода getResult() од стране објекта Browser.

Типично, објекат Result се стрингује и враћа из скрипте, а затим се анализира у вредности зависних ставки кроз предобраду.

Иако објекат Result нема никакве методе, он може да садржи следећа својства.

Property Type Description
duration string Трајање сесије од креирања сесије до преузимања резултата.
error object Информација о грешци.
http_status integer HTTP статус који враћа WebDriver (или 0 ако нема грешака WebDriver-а).
error_code string Грешка коју је вратио WebDriver (или празан стринг ако нема грешака WebDriver-а).
message string Порука о грешци WebDriver-а (или празан стринг ако нема грешака WebDriver-а).
performance_data object Статистика перформанси.
summary object Резиме перформанси.
navigation object Резиме навигације.
resource object Резиме ресурса.
details низ објеката Статистика перформанси након сваке операције која је могла да доведе до навигације.
mark string (опционално) Ознака снимка перформанси специфицирана методом `collectPerfEntries().
navigation object Навигациона статистика.
resource object Резиме ресурса за овај корак.
user низ објеката Низ статистике типа марке/мерења.
marks низ објеката Означени индекси снимка перформанси.
name string Назив ознаке снимка перформанси.
index integer Индекс снимка перформанси у низу детаља.