2 Pārlūka vienuma JavaScript objekti
Pārskats
Šajā sadaļā ir aprakstīti Zabbix papildinājumi JavaScript valodai, kas ieviesti ar Duktape izmantošanai Pārlūka vienuma skriptā. Šie papildinājumi papildina JavaScript objektus, kas aprakstīti lapā Papildu JavaScript objekti.
Browser
Objekts Browser pārvalda WebDriver sesijas, inicializējot sesiju izveides brīdī un pārtraucot to iznīcināšanas brīdī.
Viens skripts var atbalstīt līdz četriem Browser objektiem.
Lai izveidotu Browser objektu, izmantojiet sintaksi new Browser(options).
Parametrs options (JSON object) norāda pārlūka opcijas, parasti WebDriver opciju metodes rezultātu (piemēram, Browser.chromeOptions()).
Ar Browser objektu tiek atbalstītas šādas metodes.
| Method | Description |
|---|---|
navigate(url) |
Pāriet uz norādīto URL. Parametri: url - (string) URL, uz kuru pāriet. |
getUrl() |
Atgriež atvērtās lapas URL kā virkni. |
getPageSource() |
Atgriež atvērtās lapas pirmkodu kā virkni. |
findElement(strategy, selector) |
Atgriež Element objektu ar vienu elementu atvērtajā lapā (vai atgriež null, ja neviens elements neatbilst strategy un selector).Parametri: strategy - (string, css selector/link text/partial link text/tag name/xpath) Atrašanās vietas stratēģija;selector - (string) Elementa selektors, izmantojot norādīto atrašanās vietas stratēģiju. |
findElements(strategy, target) |
Atgriež Element objektu masīvu ar vairākiem elementiem atvērtajā lapā (vai atgriež tukšu masīvu, ja neviens elements neatbilst atrašanās vietas stratēģijai un mērķim).Parametri: strategy - (string, css selector/link text/partial link text/tag name/xpath) Atrašanās vietas stratēģija;target - (string) Elementa selektors, izmantojot norādīto atrašanās vietas stratēģiju. |
getCookies() |
Atgriež Cookie objektu masīvu. |
addCookie(cookie) |
Iestata sīkdatnes. Parametri: cookie - (Cookie object) Iestatāmā sīkdatne. |
getScreenshot() |
Atgriež base64 kodētu virkni, kas attēlo pārlūka skata apgabala attēlu. |
setScreenSize(x,y) |
Iestata pārlūka skata apgabala izmēru. Parametri: x - (string) Platums pikseļos;y - (string) Augstums pikseļos. |
setScriptTimeout(timeout) |
Iestata skripta ielādes noildzi. Parametri: timeout - (integer) Noildzes vērtība milisekundēs. |
setSessionTimeout(timeout) |
Iestata sesijas (lapas ielādes) noildzi. Parametri: timeout - (integer) Noildzes vērtība milisekundēs. |
setElementWaitTimeout(timeout) |
Iestata elementa atrašanās vietas stratēģijas (netiešo) noildzi. Parametri: timeout - (integer) Noildzes vērtība milisekundēs. |
collectPerfEntries(mark) |
Savāc veiktspējas ierakstus, ko izgūt ar metodi getResult().Parametri: mark - (string, optional) veiktspējas momentuzņēmuma atzīme. |
getRawPerfEntries() |
Atgriež veiktspējas ierakstu objektu masīvu. |
getResult() |
Atgriež Result objektu ar pārlūka sesijas statistiku (kļūdu informāciju, veiktspējas momentuzņēmumiem u.c.). |
getError() |
Atgriež BrowserError objektu ar pārlūka kļūdām (vai atgriež null, ja pārlūka kļūdu nav). |
setError(message) |
Iestata pielāgotu kļūdas ziņojumu, kas tiks iekļauts Result objektā.Parametri: message - (string) Kļūdas ziņojums. |
discardError() |
Atmet kļūdu, kas tiks atgriezta Result objektā. |
getAlert() |
Atgriež Alert objektu ar pārlūka brīdinājumiem (vai atgriež null, ja pārlūka brīdinājumu nav). |
chromeOptions() |
Atgriež chromeOptions objektu ar iepriekš definētām Chrome pārlūka opcijām. |
firefoxOptions() |
Atgriež firefoxOptions objektu ar iepriekš definētām Firefox pārlūka opcijām. |
safariOptions() |
Atgriež safariOptions objektu ar iepriekš definētām Safari pārlūka opcijām. |
edgeOptions() |
Atgriež edgeOptions objektu ar iepriekš definētām Edge pārlūka opcijām. |
switchFrame(target) |
Pārslēdzas uz norādīto rāmi. Parametri: target - (browser element or integer, optional) Mērķa rāmis. Lai atlasītu rāmi pēc elementa, nododiet elementu. Lai atlasītu rāmi pēc indeksa, nododiet skaitli. Ja atstāts tukšs, tiks pārslēgts uz augstākā līmeņa pārlūkošanas kontekstu. |
Visas Browser metodes var izraisīt šādas kļūdas:
BrowserError- atvasināts no objektaError, kas tiek izraisīts, jaBrowserkonstruktors neizdodas; satur papildu rekvizītubrowserarBrowserobjektu, kas izraisīja šoBrowserError.WebdriverError- atvasināts noBrowserError; satur tās pašas īpašības kā objektsBrowserError, kas norāda, vai kļūda tika ģenerēta, reaģējot uz kļūdu WebDriver atbildē.
Elements
Element objekts tiek atgriezts ar Browser objekta findElement()/findElements() metodēm, un to nevar izveidot tieši.
Element objekts attēlo elementu tīmekļa lapā un nodrošina metodes mijiedarbībai ar to.
Ar Element objektu tiek atbalstītas šādas metodes.
| Method | Description |
|---|---|
getAttribute(name) |
Atgriež elementa atribūta vērtības virkni (vai atgriež null, ja norādītais atribūts netika atrasts).Parametri: name - (string) Atribūta nosaukums. |
getProperty(name) |
Atgriež elementa īpašības vērtības virkni (vai atgriež null, ja norādītā īpašība netika atrasta).Parametri: name - (string) Īpašības nosaukums. |
getText() |
Atgriež elementa teksta vērtības virkni. |
click() |
Noklikšķina uz elementa. |
clear() |
Notīra rediģējama elementa saturu. |
sendKeys(keys) |
Nosūta taustiņus. Parametri: keys - (string) Nosūtāmie taustiņi. |
Cookie
Objektu Cookie atgriež objekta Browser metode getCookies(), un tas tiek nodots metodei addCookie().
Lai gan objektam Cookie nav metožu, tas var saturēt šādas īpašības:
| Īpašība | Type | Apraksts |
|---|---|---|
| name | string | Sīkdatnes nosaukums. |
| value | string | Sīkdatnes vērtība. |
| path | string | Ceļš, kuram sīkdatne ir derīga. Ja, pievienojot sīkdatni, tas nav norādīts, pēc noklusējuma tiek izmantots "/". |
| domain | string | Domēns, kurā sīkdatne ir redzama. Ja, pievienojot sīkdatni, tas nav norādīts, pēc noklusējuma tiek izmantots sesijas pašreizējā pārlūkošanas konteksta aktīvā dokumenta URL domēns. |
| secure | boolean | Norāda, vai sīkdatne ir droša. Ja, pievienojot sīkdatni, tas nav norādīts, pēc noklusējuma tiek izmantots false. |
| httpOnly | boolean | Norāda, vai sīkdatne ir tikai HTTP. Ja, pievienojot sīkdatni, tas nav norādīts, pēc noklusējuma tiek izmantots false. |
| expiry | integer | Sīkdatnes derīguma termiņš (sekundēs kopš Unix laikmeta sākuma). To nedrīkst iestatīt, ja, pievienojot sīkdatni, tas nav norādīts. |
| sameSite | string | Sīkdatnes atribūts sameSite, kas nosaka, vai sīkdatnei jābūt ierobežotai līdz pirmās puses vai tās pašas vietnes kontekstam.Var iestatīt uz "Lax" vai "Strict".Ja, pievienojot sīkdatni, tas nav norādīts, pēc noklusējuma tiek izmantots "None". |
Brīdinājums
Objekts Alert attēlo tīmekļa lapas brīdinājumu, to atgriež objekta Browser metode getAlert(), un to nevar izveidot tieši.
Objekts Alert satur rekvizītu text ar brīdinājuma tekstu (vai null, ja brīdinājumu nav).
Ar objektu Alert tiek atbalstītas šādas metodes.
| Method | Description |
|---|---|
accept() |
Apstiprināt brīdinājumu. |
dismiss() |
Noraidīt brīdinājumu. |
Rezultāts
Objekts Result satur sesijas statistiku un tiek atgriezts ar objekta Browser metodi getResult().
Parasti objekts Result tiek pārveidots par virkni un atgriezts no skripta, bet pēc tam, izmantojot priekšapstrādi, parsēts atkarīgo vienumu vērtībās.
Lai gan objektam Result nav metožu, tas var saturēt tālāk norādītās īpašības.
| Īpašība | Type | Apraksts | ||
|---|---|---|---|---|
| duration | string | Sesijas ilgums no sesijas izveides līdz rezultāta iegūšanai. | ||
| error | object | Kļūdas informācija. | ||
| http_status | integer | HTTP statuss, ko atgrieza WebDriver (vai 0, ja nav WebDriver kļūdu). | ||
| error_code | string | Kļūda, ko atgrieza WebDriver (vai tukša virkne, ja nav WebDriver kļūdu). | ||
| message | string | WebDriver kļūdas ziņojums (vai tukša virkne, ja nav WebDriver kļūdu). | ||
| performance_data | object | Veiktspējas statistika. | ||
| summary | object | Veiktspējas kopsavilkums. | ||
| navigation | object | Navigācijas kopsavilkums. | ||
| resource | object | Resursu kopsavilkums. | ||
| details | array of objects | Veiktspējas statistika pēc katras darbības, kas varēja izraisīt navigāciju. | ||
| mark | string | (neobligāti) Veiktspējas momentuzņēmuma atzīme, kas norādīta ar metodi collectPerfEntries(). |
||
| navigation | object | Navigācijas statistika. | ||
| resource | object | Šīs darbības resursu kopsavilkums. | ||
| user | array of objects | Masīvs ar mark/measure tipa statistiku. | ||
| marks | array of objects | Atzīmēto veiktspējas momentuzņēmumu indeksu masīvs. | ||
| name | string | Veiktspējas momentuzņēmuma atzīmes nosaukums. | ||
| index | integer | Veiktspējas momentuzņēmuma indekss masīvā details. | ||