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