Сервис Browserstack
Сервис WebdriverIO, который управляет локальным туннелем и метаданными задач для пользователей BrowserStack.
Установка
Самый простой способ — сохранить @wdio/browserstack-service
как devDependency в вашем файле package.json
, используя:
npm install @wdio/browserstack-service --save-dev
Инструкции по установке WebdriverIO
можно найти здесь.
Конфигурация
WebdriverIO имеет встроенную поддержку BrowserStack. Вам следует установить user
и key
в вашем файле wdio.conf.js
. Этот плагин сервиса обеспечивает поддержку BrowserStack Tunnel. Также установите browserstackLocal: true
для активации этой функции.
Отчетность о статусе сессии в BrowserStack будет соответствовать настройке strict
в опциях Cucumber.
// wdio.conf.js
export const config = {
// ...
user: process.env.BROWSERSTACK_USERNAME,
key: process.env.BROWSERSTACK_ACCESS_KEY,
services: [
['browserstack', {
testObservability: true,
testObservabilityOptions: {
projectName: "Your project name goes here",
buildName: "The static build job name goes here e.g. Nightly regression"
},
browserstackLocal: true
}]
],
// ...
};
Опции
Для авторизации в сервисе BrowserStack ваша конфигурация должна содержать опции user
и key
.
testObservability
Test Observability — это продвинутый инструмент отчетности тестов, который дает представление о том, как улучшить ваши автоматизированные тесты и помогает быстрее отлаживать их. Он включен по умолчанию путем установки флага testObservability
как true
для всех пользователей browserstack-service. Вы можете отключить это, установив флаг testObservability
в false
.
После завершения выполнения тестов вы можете посетить Test Observability для отладки ваших сборок с дополнительными данными, такими как анализ уникальных ошибок, автоматическое обнаружение нестабильных тестов и многое другое.
Вы можете использовать Test Observability, даже если не запускаете тесты на инфраструктуре BrowserStack. Даже если вы запускаете тесты на CI, локальной машине или даже на других облачных провайдерах, Test Observability все равно может генерировать интеллектуальные отчеты о тестах и продвинутую аналитику ваших тестов.
Если вы хотите использовать Test Observability без запуска тестов на инфраструктуре BrowserStack, вы можете настроить конфигурацию следующим образом:
// wdio.conf.js
export const config = {
// ...
services: [
['browserstack', {
testObservability: true,
testObservabilityOptions: {
user: process.env.BROWSERSTACK_USERNAME,
key: process.env.BROWSERSTACK_ACCESS_KEY,
projectName: "Your project name goes here",
buildName: "The static build job name goes here e.g. Nightly regression"
}
}]
],
// ...
};
Вы можете изучить все функции Test Observability в этой песочнице или прочитать о них подробнее здесь.
browserstackLocal
Установите это значение в true, чтобы включить маршрутизацию соединений из облака BrowserStack через ваш компьютер.
Тип: Boolean
По умолчанию: false
forcedStop
Установите это значение в true, чтобы убить процесс BrowserStack Local по завершении, не ожидая вызова обратного вызова остановки BrowserStack Local. Это экспериментально и не должно использоваться всеми. В основном необходимо как обходное решение для этой проблемы.
Тип: Boolean
По умолчанию: false
app
Appium установите это значение с путем к файлу приложения, доступным локально на вашем компьютере, чтобы использовать приложение как тестируемое приложение для сессий Appium.
Тип: String
или JsonObject
По умолчанию: undefined
Список доступных значений app:
path
Используйте локально доступный путь к файлу приложения в качестве тестируемого приложения для Appium.
services: [
['browserstack', {
app: '/path/to/local/app.apk'
// ИЛИ
app: {
path: '/path/to/local/app.apk'
}
}]
]
Передача custom_id при загрузке приложения.
services: [
['browserstack', {
app: {
path: '/path/to/local/app.apk',
custom_id: 'custom_id'
}
}]
]