Hoppa till huvudinnehåll

Sauce Labs

Alla kommandon stöds endast på Chrome när man använder Sauce Labs Extended Debugging -funktioner. Du kan aktivera dessa genom att ställa in följande Sauce-alternativ:

{
browserName: 'Chrome',
browserVersion: 'latest',
platformName: 'Windows 10',
'sauce:options': {
extendedDebugging: true
}
}

getPageLogs

Hämta webbsidesspecifik logginformation baserad på den senaste sidladdningen.

Sauce Labs-kommando. Mer information finns i de officiella protokolldokumenten.

Användning
browser.getPageLogs(type)
Parametrar
NamnTypDetaljer
typestringloggtyp (t.ex. 'sauce:network', 'sauce:performance')
Exempel
// Get Network Logs
console.log(browser.getPageLogs('sauce:network'));
/**
* outputs:
* [{
* "url": "https://app.saucelabs.com/dashboard",
* "statusCode": 200,
* "method": "GET",
* "requestHeaders": {
* ...
* },
* "responseHeaders": {
* ...
* },
* "timing": {
* ...
* }
* }, {,
* ...
* }]
*/
// Get Performance Logs (needs capturePerformance capability see: https://docs.saucelabs.com/performance/transitions/#setting-performance-capabilities
console.log(browser.getPageLogs('sauce:performance'));
/**
* outputs:
* {
* "speedIndex": 1472.023,
* "timeToFirstInteractive": 1243.214,
* "firstMeaningfulPaint": 892.643,
* ...
* }
*/
Returnerar
  • <object> log: loggutdata av önskad typ (se exempel)

sauceThrottleNetwork

Med nätverkskonditionering kan du testa din webbplats på olika nätverksanslutningar, inklusive Edge, 3G och till och med offline. Du kan begränsa datagenomströmningen, inklusive maximal ned- och uppladdningshastighet, och använda latensmanipulation för att framtvinga en minsta fördröjning i anslutningens rundturstid (RTT).

Sauce Labs-kommando. Mer information finns i de officiella protokolldokumenten.

Användning
browser.sauceThrottleNetwork(condition)
Parametrar
NamnTypDetaljer
conditionstring, objectnätverksförhållande att ställa in (t.ex. 'online', 'offline', 'GPRS', 'Regular 2G', 'Good 2G', 'Regular 3G', 'Good 3G', 'Regular 4G', 'DSL', 'Wifi')
Exempel
// predefined network condition
browser.sauceThrottleNetwork('offline')
// custom network condition
browser.sauceThrottleNetwork({
download: 1000,
upload: 500,
latency: 40'
})

throttleCPU

Du kan begränsa CPU:n i DevTools för att förstå hur din sida presterar under den begränsningen.

Sauce Labs-kommando. Mer information finns i de officiella protokolldokumenten.

Användning
browser.throttleCPU(rate)
Parametrar
NamnTypDetaljer
ratenumberVärde för hur mycket CPU:n ska begränsas.
Exempel
// throttle CPU and make it run 4x slower
browser.throttleCPU(4)
// reset CPU throttling
browser.throttleCPU(0)

interceptRequest

Tillåter modifiering av alla förfrågningar som görs av webbläsaren. Du kan svartlista, ändra eller omdirigera dessa enligt vad som krävs för dina tester.

Sauce Labs-kommando. Mer information finns i de officiella protokolldokumenten.

Användning
browser.interceptRequest(rule)
Parametrar
NamnTypDetaljer
ruleobjectEn regel som beskriver förfrågningsavlyssningen.
Exempel
// redirect a request
browser.interceptRequest({
url: 'https://saucelabs.com',
redirect: 'https://google.com'
})
// Blacklist requests to 3rd party vendors
browser.interceptRequest({
url: 'https://api.segment.io/v1/p',
error: 'Failed'
})
// Modify requests to REST API (Mock REST API response)
browser.interceptRequest({
url: 'http://sampleapp.appspot.com/api/todos',
response: {
headers: {
'x-custom-headers': 'foobar'
},
body: [{
title: 'My custom todo',
order: 1,
completed: false,
url: 'http://todo-backend-express.herokuapp.com/15727'
}]
}
})

assertPerformance

Utvärdera mot prestandabaslinje för din app.

Sauce Labs-kommando. Mer information finns i de officiella protokolldokumenten.

Användning
browser.assertPerformance(name, metrics)
Parametrar
NamnTypDetaljer
namestringNamnet på jobbet du skapade din baslinje med.
metrics
valfri
string[]Namn på mätvärden du vill utvärdera mot baslinjen.
Exempel
// test performance for a page
browser.url('https://webdriver.io')
const hasRegression = browser.assertPerformance({
name: 'my performance test', // make sure that the name is also set in the sauce options in your capabilities
metrics: ['score', 'firstPaint']
})
Returnerar
  • <object> hasRegression: Ett objekt som innehåller resultatet samt mätvärden om resultatet.

jankinessCheck

Utför ett rullningstest som utvärderar ryckigheten i applikationen.

Sauce Labs-kommando. Mer information finns i de officiella protokolldokumenten.

Användning
browser.jankinessCheck()
Exempel
// test performance for a page
browser.url('https://webdriver.io')
browser.jankinessCheck()
Returnerar
  • <object> testResults: Ett objekt som innehåller poängen samt mätvärden kring hur smidigt användargränssnittet på sidan var under testet.

mockRequest

Simulerar en nätverksresurs.

Sauce Labs-kommando. Mer information finns i de officiella protokolldokumenten.

Användning
browser.mockRequest(url, filterOptions)
Parametrar
NamnTypDetaljer
urlstringURL-mönster som matchar URL att simulera.
filterOptions
valfri
objectYtterligare filteralternativ för URL att simulera (t.ex. headers, method).
Returnerar
  • <object> mockId: Ett objekt som innehåller ID för en simulerad resurs.

getMockCalls

Ta emot förfrågningsinformation om förfrågningar som matchar den simulerade resursen.

Sauce Labs-kommando. Mer information finns i de officiella protokolldokumenten.

Användning
browser.getMockCalls(mockId)
Parametrar
NamnTypDetaljer
mockIdStringID för en simulering
Returnerar
  • <object> requests: En lista med förfrågningsinformation.

clearMockCalls

Rensa listan över simulerade anrop.

Sauce Labs-kommando. Mer information finns i de officiella protokolldokumenten.

Användning
browser.clearMockCalls(mockId, restore)
Parametrar
NamnTypDetaljer
mockIdStringID för en simulering
restore
valfri
booleanAnge till true om simuleringen också ska återställas.

respondMock

Svara om simuleringen matchar en specifik resurs.

Sauce Labs-kommando. Mer information finns i de officiella protokolldokumenten.

Användning
browser.respondMock(mockId, payload)
Parametrar
NamnTypDetaljer
mockIdStringID för en simulering
payload
valfri
objectInformation om simulerat svar.

Welcome! How can I help?

WebdriverIO AI Copilot