Sauce Labs Device Cloud — это облачная платформа, предоставляющая доступ к широкому спектру реальных мобильных устройств и эмуляторов для автоматизации тестирования мобильных приложений. В рамках WebdriverIO интеграция с Sauce Labs позволяет запускать тесты на реальных устройствах без необходимости иметь физический доступ к ним. Это решение помогает сэкономить время и ресурсы, обеспечивая стабильность и точность тестирования в разных окружениях.
Sauce Labs — это сервис для автоматизированного тестирования, предлагающий облачный доступ к реальным устройствам и браузерам. Он поддерживает множество платформ, включая мобильные операционные системы, такие как iOS и Android, а также браузеры для веб-приложений. Sauce Labs предлагает широкий выбор устройств с различными версиями операционных систем, что делает тестирование приложений более гибким и масштабируемым.
WebdriverIO — это мощный инструмент для написания автоматических тестов, который поддерживает интеграцию с различными сервисами, включая Sauce Labs. Это позволяет разрабатывать, запускать и отслеживать тесты на реальных устройствах и эмуляторах через облако, обеспечивая тестирование в разных браузерах и на разных мобильных устройствах без необходимости поддерживать собственный парк устройств.
Некоторые из ключевых преимуществ использования Sauce Labs в связке с WebdriverIO:
Чтобы начать работать с Sauce Labs в WebdriverIO, необходимо выполнить несколько шагов для правильной настройки окружения.
Создание аккаунта в Sauce Labs
Для начала нужно зарегистрироваться на платформе Sauce Labs и
получить свои учетные данные — username и
access key. Эти данные понадобятся для настройки
конфигурации WebdriverIO.
Установка зависимостей
Убедитесь, что на проекте установлен WebdriverIO. Если это ещё не сделано, можно установить его через npm:
npm install @wdio/cli wdio-sauce-service --save-dev
Плагин wdio-sauce-service позволяет интегрировать
WebdriverIO с Sauce Labs.
Конфигурация WebdriverIO
В файле конфигурации wdio.conf.js необходимо настроить
подключение к Sauce Labs. Важно добавить данные об учетной записи Sauce
Labs и указать необходимые параметры устройств.
Пример конфигурации:
exports.config = {
user: process.env.SAUCE_USERNAME,
key: process.env.SAUCE_ACCESS_KEY,
services: ['sauce'],
capabilities: [
{
browserName: 'Chrome',
platformName: 'Windows 10',
version: 'latest',
screenResolution: '1280x1024',
name: 'WebdriverIO Example Test',
build: 'Build Number',
extendedDebugging: true
},
{
deviceName: 'iPhone 12',
platformVersion: '14.4',
platformName: 'iOS',
app: 'sauce-storage:myApp.zip',
name: 'Mobile App Test'
}
],
reporters: ['dot'],
logLevel: 'info'
};
В этом примере конфигурации указаны как параметры для веб-тестирования, так и для тестирования мобильных приложений. Важно указать параметры:
Запуск тестов
После настройки конфигурации можно запускать тесты с помощью команды:
npx wdio run wdio.conf.js
WebdriverIO автоматически подключится к Sauce Labs, выберет нужные устройства и начнёт выполнение тестов.
Во время выполнения тестов на Sauce Labs можно ожидать следующие результаты:
При тестировании мобильных приложений с помощью Sauce Labs и WebdriverIO важно учитывать особенности работы с мобильными платформами. Мобильные устройства могут работать с различными версиями операционных систем, иметь различные разрешения экранов и особенности интерфейса. Чтобы обеспечить стабильность тестов на разных устройствах, следует учитывать:
Sauce Labs и WebdriverIO представляют собой мощную комбинацию для автоматизации тестирования мобильных и веб-приложений. С помощью этой интеграции можно легко масштабировать тестирование, используя облачные ресурсы Sauce Labs и управляя тестами через WebdriverIO. Это решение помогает разработчикам и тестировщикам обеспечивать стабильность и качество своих приложений в разных окружениях, не тратя время на настройку и поддержание собственной тестовой инфраструктуры.