Chromium
isAlertOpen
Om en enkel dialogruta är öppen för närvarande.
Icke-officiellt och odokumenterat Chromium-kommando. Mer om detta kommando kan hittas här.
Användning
browser.isAlertOpen()
Exempel
console.log(browser.isAlertOpen()); // skriver ut: false
browser.execute('window.alert()');
console.log(browser.isAlertOpen()); // skriver ut: true
Returnerar
- <Boolean>
isAlertOpen
:true
ellerfalse
baserat på om en enkel dialogruta är närvarande eller inte.
isAutoReporting
Om fel automatiskt ska genereras för webbläsarloggar.
Icke-officiellt och odokumenterat Chromium-kommando. Mer om detta kommando kan hittas här.
Användning
browser.isAutoReporting()
Returnerar
- <Boolean>
isAutoReporting
:true
ellerfalse
baserat på om automatisk rapportering är aktiverad.
setAutoReporting
Växla om svaret ska returneras med okänt fel med första webbläsarfelet (t.ex. misslyckades att ladda resurs på grund av 403/404-svar) för alla efterföljande kommandon (när det är aktiverat).
Icke-officiellt och odokumenterat Chromium-kommando. Mer om detta kommando kan hittas här.
Användning
browser.setAutoReporting(enabled)
Parametrar
Namn | Typ | Detaljer |
---|---|---|
enabled | boolean | true om automatisk rapportering ska aktiveras, använd false för att inaktivera tidigare aktiverad automatisk rapportering. |
Exempel
// Aktivera automatisk rapportering direkt efter att sessionen startades med tomma webbläsarloggar
console.log(browser.setAutoReporting(true)); // skriver ut: null
// Vid begäran av en icke-befintlig resurs kommer den att avbryta körningen på grund av kastat okänt fel
browser.url('https://webdriver.io/img/404-does-not-exist.png');
// Under sessionen, utför några operationer som fyller webbläsarloggarna
browser.url('https://webdriver.io/img/404-does-not-exist.png');
browser.url('https://webdriver.io/403/no-access');
// Aktivera automatisk rapportering som kastar ett okänt fel för första webbläsarloggen (404-svar)
browser.setAutoReporting(true);
Returnerar
- <Object|Null>
firstBrowserError
: Om det första webbläsarfelet redan inträffade innan detta kommando kördes kommer det att kasta ett okänt fel som svar, vilket är ett objekt med 'message'-nyckeln som beskriver det första webbläsarfelet. Annars returnerar detnull
vid framgång.
isLoading
Bestämmer laddningsstatus för aktivt fönsterhandtag.
Icke-officiellt och odokumenterat Chromium-kommando. Mer om detta kommando kan hittas här.
Användning
browser.isLoading()
Exempel
console.log(browser.isLoading()); // skriver ut: false
browser.newWindow('https://webdriver.io');
console.log(browser.isLoading()); // skriver ut: true
Returnerar
- <Boolean>
isLoading
:true
ellerfalse
baserat på om aktivt fönsterhandtag laddar eller inte.
takeHeapSnapshot
Tar en heap-snapshot av den aktuella exekveringskontexten.
Icke-officiellt och odokumenterat Chromium-kommando. Mer om detta kommando kan hittas här.
Användning
browser.takeHeapSnapshot()
Returnerar
- <Object>
heapSnapshot
: En JSON-representation av heap-snapshot. Som kan inspekteras genom att laddas som fil i Chrome DevTools.
getNetworkConnection
Hämta anslutningstypen för nätverksemulering. Detta kommando är endast tillämpligt när fjärrändpunkten svarar med networkConnectionEnabled
-kapacitet inställd på true
.
Icke-officiellt och odokumenterat Chromium-kommando. Mer om detta kommando kan hittas här.
Användning
browser.getNetworkConnection()
Exempel
const browser = remote({
capabilities: {
browserName: 'chrome',
'goog:chromeOptions': {
// Nätverksemulering kräver enhetsläge, som endast är aktiverat när mobil emulering är på
mobileEmulation: { deviceName: 'iPad' },
},
}
});
console.log(browser.getNetworkConnection()); // skriver ut: 6 (Både Wi-Fi och data)
Returnerar
- <Number>
connectionType
: En bitmask för att representera nätverksanslutningstypen. Flygplansläge (1
), endast Wi-Fi (2
), Wi-Fi och data (6
), 4G (8
), 3G (10
), 2G (20
). Som standard är Wi-Fi och data aktiverade.
setNetworkConnection
Ändra anslutningstyp för nätverksanslutning. Detta kommando är endast tillämpligt när fjärrändpunkten svarar med networkConnectionEnabled
-kapacitet inställd på true
.
Icke-officiellt och odokumenterat Chromium-kommando. Mer om detta kommando kan hittas här.
Användning
browser.setNetworkConnection(parameters)
Parametrar
Namn | Typ | Detaljer |
---|---|---|
parameters | object | Objekt som innehåller ConnectionType, ange bitmask som värde för type -nyckeln i objektet. Flygplansläge (1 ), endast Wi-Fi (2 ), Wi-Fi och data (6 ), 4G (8 ), 3G (10 ), 2G (20 ). |
Exempel
const browser = remote({
capabilities: {
browserName: 'chrome',
'goog:chromeOptions': {
// Nätverksemulering kräver enhetsläge, som endast är aktiverat när mobil emulering är på
mobileEmulation: { deviceName: 'iPad' },
},
}
});
console.log(browser.setNetworkConnection({ type: 1 })); // skriver ut: 1 (Flygplansläge)
Returnerar
- <Number>
connectionType
: En bitmask för att representera nätverksanslutningstypen. Värdet bör matcha den angivnatype
i objektet, men enheten kanske inte är kapabel till den begärda nätverksanslutningstypen.
getNetworkConditions
Hämta aktuella nätverksförhållanden som används för emulering.
Icke-officiellt och odokumenterat Chromium-kommando. Mer om detta kommando kan hittas här.
Användning
browser.getNetworkConditions()
Returnerar
- <Object>
networkConditions
: Objekt som innehåller nätverksförhållanden föroffline
,latency
,download_throughput
ochupload_throughput
. Nätverksförhållanden måste ställas in innan de kan hämtas.
setNetworkConditions
Ställ in nätverksförhållanden som används för emulering genom att begränsa anslutningen.
Icke-officiellt och odokumenterat Chromium-kommando. Mer om detta kommando kan hittas här.
Användning
browser.setNetworkConditions(network_conditions, network_name)
Parametrar
Namn | Typ | Detaljer |
---|---|---|
network_conditions | object | Objekt som innehåller nätverksförhållanden som är latency , throughput (eller download_throughput /upload_throughput ) och offline (valfritt). |
network_name valfri | string | Namn på nätverksbegränsningsförval. GPRS , Regular 2G , Good 2G , Regular 3G , Good 3G , Regular 4G , DSL , WiFi eller No throttling för att inaktivera. När förval anges respekteras inte värden som skickas i första argumentet. |
Exempel
// Använd olika nedladdnings- (25kb/s) och uppladdningsvärden (50kb/s) för begränsning med en latens på 1000ms
browser.setNetworkConditions({ latency: 1000, download_throughput: 25600, upload_throughput: 51200 });
// Tvinga frånkoppling från nätverk genom att ställa in 'offline' till true
browser.setNetworkConditions({ latency: 0, throughput: 0, offline: true });
// När förvalnamn (t.ex. 'DSL') anges respekteras inte värden i objektet (t.ex. 'offline')
browser.setNetworkConditions({ latency: 0, throughput: 0, offline: true }, 'DSL');
// Bästa praxis för att ange nätverksbegränsningsförval är att använda ett tomt objekt
browser.setNetworkConditions({}, 'Good 3G');
deleteNetworkConditions
Inaktivera alla nätverksbegränsningar som kan ha ställts in. Motsvarande att ställa in förinställningen No throttling
.
Icke-officiellt och odokumenterat Chromium-kommando. Mer om detta kommando kan hittas här.
Användning
browser.deleteNetworkConditions()
sendCommand
Skicka ett kommando till DevTools-felsökaren.
För en lista över tillgängliga kommandon och deras parametrar, se Chrome DevTools Protocol Viewer.
Icke-officiellt och odokumenterat Chromium-kommando. Mer om detta kommando kan hittas här.
Användning
browser.sendCommand(cmd, params)
Parametrar
Namn | Typ | Detaljer |
---|---|---|
cmd | string | Namn på kommandot (t.ex. Browser.close ). |
params | object | Parametrar till kommandot. Om inga parametrar finns för kommandot, ange ett tomt objekt. |
sendCommandAndGetResult
Skicka ett kommando till DevTools-felsökaren och vänta på resultatet.
För en lista över tillgängliga kommandon och deras parametrar, se Chrome DevTools Protocol Viewer.
Icke-officiellt och odokumenterat Chromium-kommando. Mer om detta kommando kan hittas här.
Användning
browser.sendCommandAndGetResult(cmd, params)
Parametrar
Namn | Typ | Detaljer |
---|---|---|
cmd | string | Namn på kommandot som returnerar ett resultat (t.ex. Network.getAllCookies ). |
params | object | Parametrar till kommandot. Om inga parametrar finns för kommandot, ange ett tomt objekt. |
Returnerar
- <*>
result
: Antingen returvärdet för ditt kommando eller felet som var orsaken till att ditt kommando misslyckades.
file
Ladda upp en fil till fjärrmaskinen på vilken webbläsaren körs.
Icke-officiellt och odokumenterat Chromium-kommando. Mer om detta kommando kan hittas här.
Användning
browser.file(file)
Parametrar
Namn | Typ | Detaljer |
---|---|---|
file | string | Base64-kodad zip-arkiv som innehåller en enda fil som ska laddas upp. Om base64-kodad data inte representerar ett zip-arkiv eller arkivet innehåller mer än en fil kommer det att kasta ett okänt fel. |
Returnerar
- <String>
path
: Absolut sökväg till uppladdad fil på fjärrmaskinen.
launchChromeApp
Startar en Chrome-app genom angivet id.
Icke-officiellt och odokumenterat Chromium-kommando. Mer om detta kommando kan hittas här.
Användning
browser.launchChromeApp(id)
Parametrar
Namn | Typ | Detaljer |
---|---|---|
id | string | Tilläggs-id för appen som ska startas, enligt definitionen i chrome://extensions. |
Exempel
import fs from 'fs'
const browser = remote({
capabilities: {
browserName: 'chrome',
'goog:chromeOptions': {
// Installera vid start av webbläsaren för att kunna starta den
extensions: [
// Posten ska vara en base64-kodad packad Chrome-app (.crx)
fs.readFileSync('/absolute/path/app.crx').toString('base64')
]
}
}
});
browser.launchChromeApp('aohghmighlieiainnegkcijnfilokake')); // Google Docs (https://chrome.google.com/webstore/detail/docs/aohghmighlieiainnegkcijnfilokake)
getElementValue
Hämtar värdet av ett givet formulärkontrollelement.
Icke-officiellt och odokumenterat Chromium-kommando. Mer om detta kommando kan hittas här.
Användning
browser.getElementValue(elementId)
Parametrar
Namn | Typ | Detaljer |
---|---|---|
elementId | String | id för elementet att hämta värde från |
Returnerar
- <String|Null>
value
: Aktuellt värde för elementet. Om det angivna elementet inte är ett formulärkontrollelement kommer det att returneranull
.
elementHover
Aktivera hover-tillstånd för ett element, som återställs vid nästa interaktion.
Icke-officiellt och odokumenterat Chromium-kommando. Mer om detta kommando kan hittas här.
Användning
browser.elementHover(elementId)
Parametrar
Namn | Typ | Detaljer |
---|---|---|
elementId | String | id för elementet att hovra över |
touchPinch
Utlöser en nyp-zoom-effekt.
Icke-officiellt och odokumenterat Chromium-kommando. Mer om detta kommando kan hittas här.
Användning
browser.touchPinch(x, y, scale)
Parametrar
Namn | Typ | Detaljer |
---|---|---|
x | number | x-position att nypa på |
y | number | y-position att nypa på |
scale | number | nyp-zoom-skala |
freeze
Frys den aktuella sidan. Tillägg för Page Lifecycle API.
Icke-officiellt och odokumenterat Chromium-kommando. Mer om detta kommando kan hittas här.
Användning
browser.freeze()
resume
Återuppta den aktuella sidan. Tillägg för Page Lifecycle API.
Icke-officiellt och odokumenterat Chromium-kommando. Mer om detta kommando kan hittas här.
Användning
browser.resume()
getCastSinks
Returnerar listan över cast-sinks (Cast-enheter) tillgängliga för Chrome media router.
Icke-officiellt och odokumenterat Chromium-kommando. Mer om detta kommando kan hittas här.