Sauce Labs
Все команды поддерживаются только в Chrome при использовании возможностей Расширенной отладки Sauce Labs. Вы можете включить их, установив следующие опции Sauce:
{
browserName: 'Chrome',
browserVersion: 'latest',
platformName: 'Windows 10',
'sauce:options': {
extendedDebugging: true
}
}
getPageLogs
Получение информации из логов веб-страницы на основе последней загрузки страницы.
Команда Sauce Labs. Более подробную информацию можно найти в официальной документации протокола.
Использование
browser.getPageLogs(type)
Параметры
Имя | Тип | Детали |
---|---|---|
type | string | тип лога (например, 'sauce:network', 'sauce:performance') |
Примеры
// Получить логи сети
console.log(browser.getPageLogs('sauce:network'));
/**
* выводит:
* [{
* "url": "https://app.saucelabs.com/dashboard",
* "statusCode": 200,
* "method": "GET",
* "requestHeaders": {
* ...
* },
* "responseHeaders": {
* ...
* },
* "timing": {
* ...
* }
* }, {,
* ...
* }]
*/
// Получить логи производительности (требуется возможность capturePerformance, см.: https://docs.saucelabs.com/performance/transitions/#setting-performance-capabilities
console.log(browser.getPageLogs('sauce:performance'));
/**
* выводит:
* {
* "speedIndex": 1472.023,
* "timeToFirstInteractive": 1243.214,
* "firstMeaningfulPaint": 892.643,
* ...
* }
*/
Возвращает
- <object>
log
: выходные данные лога желаемого типа (см. пример)
sauceThrottleNetwork
С помощью настройки сети вы можете тестировать свой сайт на различных сетевых соединениях, включая Edge, 3G и даже в офлайн-режиме. Вы можете ограничить скорость передачи данных, включая максимальную скорость загрузки и выгрузки, и использовать манипуляции с задержкой для обеспечения минимальной задержки в круговом времени соединения (RTT).
Команда Sauce Labs. Более подробную информацию можно найти в официальной документации протокола.
Использование
browser.sauceThrottleNetwork(condition)
Параметры
Имя | Тип | Детали |
---|---|---|
condition | string, object | условие сети для установки (например, 'online', 'offline', 'GPRS', 'Regular 2G', 'Good 2G', 'Regular 3G', 'Good 3G', 'Regular 4G', 'DSL', 'Wifi') |
Примеры
// предопределенное состояние сети
browser.sauceThrottleNetwork('offline')
// пользовательское состояние сети
browser.sauceThrottleNetwork({
download: 1000,
upload: 500,
latency: 40'
})
throttleCPU
Вы можете ограничить CPU в DevTools, чтобы понять, как ваша страница работает при таком ограничении.
Команда Sauce Labs. Более подробную информацию можно найти в официальной документации протокола.
Использование
browser.throttleCPU(rate)
Параметры
Имя | Тип | Детали |
---|---|---|
rate | number | Коэффициент ограничения CPU. |
Примеры
// ограничить CPU и замедлить его в 4 раза
browser.throttleCPU(4)
// сбросить ограничения CPU
browser.throttleCPU(0)
interceptRequest
Позволяет изменять любые запросы, сделанные браузером. Вы можете блокировать, изменять или перенаправлять их в соответствии с требованиями ваших тестов.
Команда Sauce Labs. Более подробную информацию можно найти в официальной документации протокола.
Использование
browser.interceptRequest(rule)