2 Objectes JavaScript d'elements del navegador

Visió general

Aquesta secció descriu els afegits de Zabbix al llenguatge JavaScript implementat amb Duktape per emprar-les a l'script element navegador. Aquestes addicions complementen els objectes JavaScript descrits a la pàgina Objectes JavaScript addicionals.

L'objecte Navegador gestiona les sessions del WebDriver, inicialitzant una sessió en crear-la i finalitzar-la quan es destrueix. Un únic script pot suportar fins a quatre objectes Navegador.

Per construir un objecte Navegador, empreu la sintaxi Nou navegador (opcions). El paràmetre opcions (objecte JSON) especifica les opcions del navegador, normalment el resultat del mètode d'opcions de WebDriver (per exemple, Browser.chromeOptions()).

Els mètodes següents són compatibles amb l'objecte Navegador.

Mètode Descripció
navigate(url) Navega fins a l'URL especificat.

Paràmetres:
url - (cadena) URL per navegar.
getUrl() Retorna una cadena de l'URL de la pàgina oberta.
getPageSource() Retorna una cadena de la font de la pàgina oberta.
findElement(strategy, selector) Retorna un objecte Element amb un element a la pàgina oberta (o retorna null si cap element coincideix amb strategy i selector).

Paràmetres:
strategy - (cadena, selector CSS/text de l'enllaç/text de l'enllaç parcial/nom de l'etiqueta/Xpath) Estratègia d'ubicació;
selector - (cadena) Selector d'elements que empra la ubicació especificada estratègia.
findElements(strategy, target) Retorna una matriu d'objectes Element amb diversos elements a la pàgina oberta (o retorna una matriu buida si cap element coincideix amb l'estratègia d'ubicació i l'objectiu).

Paràmetres:
strategy - (cadena, selector CSS/text de l'enllaç/text de l'enllaç parcial/nom de l'etiqueta/Xpath) Estratègia d'ubicació;
target - (cadena) Selector d'elements que empra l'estratègia d'ubicació especificada.
getCookies() Retorna una matriu d'objectes Cookie.
addCookie(cookie) Defineix galetes.

Paràmetres:
cookie - (Cookie object) Galeta per configurar.
getScreenshot() Retorna una cadena (imatge codificada en base64) de la finestra gràfica del navegador.
setScriptTimeout(timeout) Defineix el temps d'espera de càrrega de l'script.

Paràmetres:
timeout - (enter) Valor del temps d'espera (en mil·lisegons).
setSessionTimeout(timeout) Defineix el temps d'espera de la sessió en (carregar la pàgina).

Paràmetres:
timeout - (enter) Valor del temps d'espera (en mil·lisegons).
setElementWaitTimeout(timeout) Defineix el temps d'espera de l'estratègia d'ubicació de l'element (implícit).

Paràmetres:
timeout - (enter) Valor del temps d'espera (en mil·lisegons).
collectPerfEntries(mark) Recull les entrades de rendiment per recuperar-les amb el mètode getResult().

Paràmetres:
mark - (cadena, opcional) marca d'instantània de rendiment.
getRawPerfEntries() Retorna una matriu d'objectes d'entrada de rendiment.
getResult() Retorna un objecte Result amb estadístiques de sessió del navegador (informació d'errors, instantànies de rendiment, etc.).
getError() Retorna un objecte BrowserError amb errors del navegador (o retorna null si no hi ha errors del navegador).
setError(message) Defineix un missatge d'error personalitzat que s'inclou a l'objecte Result.

Paràmetres:
message - (cadena) Missatge d'error.
discardError() Descarta l'error que es retornarà a l'objecte Result.
getAlert() Retorna un objecte Alert amb alertes del navegador (o retorna null si no hi ha alertes del navegador).
chromeOptions() Retorna un objecte chromeOptions amb opcions predefinides del navegador Chrome.
firefoxOptions() Retorna un objecte firefoxOptions amb opcions predefinides del navegador Firefox.
safariOptions() Retorna un objecte safariOptions amb opcions predefinides del navegador Safari.
edgeOptions() Retorna un objecte edgeOptions amb les opcions del navegador Edge predefinides.

Tots els mètodes del navegador poden generar els errors següents:

  • BrowserError - derivat de l'objecte Error que es llança si el constructor Browser falla; conté una propietat addicional del navegador amb un objecte Navegador que ha llançat aquest Error del navegador.
  • WebdriverError - derivat de BrowserError; conté les mateixes propietats que l'objecte BrowserError, que indiquen si l'error es va generar com a resposta a un error a la resposta del WebDriver.

Element

L'objecte Element és retornat pels mètodes Navegador findElement()/findElements() i no es pot construir directament.

L'objecte Element representa un element de la pàgina web i proporciona mètodes per interactuar amb ell.

Els mètodes següents són compatibles amb l'objecte Element.

Mètode Descripció
getAttribute(name) Retorna una cadena de valor d'atribut de l'atribut d'element (o retorna null si no s'ha trobat l'atribut especificat).

Paràmetres:
name - (cadena) Nom de l'atribut.
getProperty(name) Retorna una cadena de valor de propietat de la propietat de l'element (o retorna null si no s'ha trobat la propietat especificada).

Paràmetres:
name - (cadena) Nom de la propietat.
getText() Retorna una cadena de valor de text de l'element text.
click() Fa clic a un element.
clear() Esborra el contingut d'un element editable.
sendKeys(keys) Envia claus.

Paràmetres:
keys - (cadena) Tecles per enviar.

Galeta

L'objecte Cookie és retornat pel mètode Navegador getCookies() i passa al mètode addCookie().

Tot i que l'objecte Cookie no té cap mètode, pot contenir les propietats següents:

Propietat Tipus Descripció
nom string Nom de la galeta.
valor string Valor de la galeta.
camí string Camí per al qual la galeta és vàlida.
El valor per defecte és "/" si s'omet en afegir una galeta.
domini string Domini al qual és visible la galeta.
Per defecte és el domini de l'URL del document actiu del context de navegació actual de la sessió si s'omet en afegir una galeta.
secure boolean Indica si la galeta és segura.
El valor per defecte és false si s'omet en afegir una galeta.
httpOnly boolean Indica si la galeta només és HTTP.
El valor per defecte és false si s'omet en afegir una galeta.
expiry integer Temps d'expiració de la galeta (en segons des de l'època Unix). No s'ha d'establir si s'omet en afegir una galeta.
sameSite string L'atribut sameSite de la galeta, que controla si la galeta s'ha de restringir a un context propi o del mateix lloc.
Es pot establir com a "Lax" o "Estricte ".
El valor predeterminat és "Cap" si s'omet en afegir una galeta.

Alerta

L'objecte Alert representa una alerta de pàgina web, és retornat pel mètode Navegador object getAlert() i no es pot construir directament.

L'objecte Alert conté la propietat text amb el text de l'alerta (o null si no hi ha alertes).

Els mètodes següents són compatibles amb l'objecte Alert.

Mètode Descripció
accept() Accepta l'alerta.
dismiss() Descarta l'alerta.

Resultat

L'objecte Result conté estadístiques de sessió i és retornat pel mètode Navegador getResult().

Normalment, l'objecte Result es restringeix i es retorna des de l'script, i després s'analitza en valors d'element dependents mitjançant el preprocessament.

Tot i que l'objecte Result no té cap mètode, pot contindre les propietats següents.

Propietat Tipus Descripció
duration string Durada de la sessió des de la creació de la sessió fins a la recuperació del resultat.
error object Informació d'error.
http_status integer Estat HTTP retornat pel WebDriver (o 0 si no hi ha errors de WebDriver).
error_code string Error retornat pel WebDriver (o cadena buida si no hi ha errors de WebDriver).
missatge string Missatge d'error de WebDriver (o cadena buida si no hi ha errors de WebDriver).
dades_de_rendiment object Estadístiques de rendiment.
resum object Resum del rendiment.
navegació object Resum de navegació.
recurs object Resum del recurs.
detalls array of objects Estadístiques de rendiment després de cada operació que podria haver donat lloc a la navegació.
mark string (opcional) Marca d'instantània de rendiment especificada amb el mètode collectPerfEntries().
navegació object Estadístiques de navegació.
recurs object Resum del recurs per a aquest pas.
usuari array of objects Matriu d'estadístiques de tipus de marca/mesura.
marks array of objects Índexs d'instantània de rendiment marcats.
nom string Nom de la marca de la instantània de rendiment.
index integer Índex d'instantània de rendiment a la matriu de detalls.