Перейти до основного вмісту

Сервіс LambdaTest

wdio-lambdatest-service є пакетом третьої сторони, для отримання додаткової інформації дивіться GitHub | npm

WDIO health check

Сервіс WebdriverIO, який керує тунелем та метаданими задач для користувачів LambdaTest.

Встановлення​

npm i wdio-lambdatest-service --save-dev

Інструкції щодо встановлення WebdriverIO можна знайти тут.

Конфігурація​

WebdriverIO має вбудовану підтримку LambdaTest. Вам просто потрібно встановити user та key у вашому файлі wdio.conf.js. Щоб увімкнути функцію для автоматизації додатків, встановіть product: 'appAutomation' у вашому файлі wdio.conf.js. Цей плагін сервісу підтримує LambdaTest Tunnel. Також встановіть tunnel: true, щоб активувати цю функцію.

// wdio.conf.js
exports.config = {
// ...
user: process.env.LT_USERNAME,
key: process.env.LT_ACCESS_KEY,
logFile : './logDir/api.log',
product : 'appAutomation',
services: [
['lambdatest', {
tunnel: true
}]
],
// ...
};

Щоб отримати зауваження про помилки тесту на панелі автоматизації​

Щоб отримати зауваження про помилки тесту на панелі автоматизації, просто додайте ltErrorRemark: true у ваш wdio.conf.js.

Щоб завантажити додаток з локального середовища або URL​

Завантажуйте додатки android або ios з локального середовища або розміщеного URL-адреси додатка, додавши цю необхідну конфігурацію у вашому wdio.conf.js. Щоб використовувати завантажений додаток для тестування у тому ж запуску, встановіть enableCapability = true, це встановить значення URL-адреси додатка в можливостях.

// wdio.conf.js
services: [
[
"lambdatest",
{
tunnel: true,
app_upload: true,
app:{
app_name : "xyz", //provide your desired app name
app_path : "/path/to/your/app/file", //provide the local app location
// or
app_url : "https://example.test_android.apk", //provide the url where your app is horsted or stored
custom_id : "12345", //provide your desired custom id
enableCapability : true
}
}
]
]

Опції​

Для авторизації в сервісі LambdaTest ваша конфігурація повинна містити опції user та key.

tunnel​

Встановіть це значення в true, щоб увімкнути маршрутизацію з'єднань з хмари LambdaTest через ваш комп'ютер. Вам також потрібно встановити tunnel в true в можливостях браузера.

Тип: Boolean
За замовчуванням: false

lambdatestOpts​

Вказані опції будуть передані в LambdaTest Tunnel.

Тип: Object
За замовчуванням: {}

Нижче наведено повний список всіх доступних опцій:

tunnelName​

Визначає ім'я користувацького тунелю LambdaTest.

Приклад:

{"tunnelName": "my_custom_tunnel"}

port​

Порт для активації LambdaTest Tunnel.

Приклад:

{"port": 33000}

user​

Ім'я користувача LambdaTest.

Приклад:

{"user": "your_username"}

key​

Ключ доступу LambdaTest.

Приклад:

{"key": "your_access_key"}

verbose​

Чи повинен кожен запит проксі записуватися в stdout.

Приклад:

{"verbose": true}

logFile​

Розташування файлу журналу LambdaTest Tunnel.

Приклад:

{"logFile": "/path/to/log/file"}

config​

Шлях до конфігураційного файлу. Приклад:

{"config": "/path/to/config/file"}

dir​

Вказує локальний каталог, який буде обслуговуватися файловим сервером на порту Tunnel.

Приклад:

{"dir": "/path/to/local/directory"}

proxyHost​

Вказує ім'я хоста проксі-порту Tunnel.

Приклад:

{"proxyHost": "proxy.example.com"}

proxyUser​

Вказує ім'я користувача проксі-порту Tunnel.

Приклад:

{"proxyUser": "your_proxy_username"}

proxyPass​

Вказує пароль проксі-порту Tunnel.

Приклад:

{"proxyPass": "your_proxy_password"}

proxyPort​

Вказує номер порту, на якому активується проксі Tunnel.

Приклад:

{"proxyPort": 8080}

egressOnly​

Використовує налаштування проксі тільки для вихідних запитів.

Приклад:

{"egressOnly": true}

ingressOnly​

Маршрутизує тільки вхідний трафік через вказаний проксі.

Приклад:

{"ingressOnly": true}

pacfile​

Для використання PAC (Proxy Auto-Configuration) у локальному тестуванні, вкажіть шлях до PAC-файлу.

Приклад:

{"pacfile": "/path/to/pacfile"}

loadBalanced​

Активує Балансування навантаження для LambdaTest Tunnel.

Приклад:

{"loadBalanced": true}

mode​

Вказує, в якому режимі повинен працювати тунель "ssh" або "ws". (за замовчуванням "ssh").

Приклад:

{"mode": "ssh"}

sshConnType​

Вказує тип ssh-з'єднання (over_22, over_443, over_ws). Щоб використовувати –sshConnType, спочатку вкажіть прапор ––mode ssh.

Приклад:

{"sshConnType": "over_22"}

maxSSHConnections​

Збільшує кількість SSH-з'єднань від Tunnel Client до Tunnel Server. Максимально допустиме значення - 30.

Приклад:

{"maxSSHConnections": 2}

sharedTunnel​

Спільне використання тунелю між членами команди.

Приклад:

{"sharedTunnel": true}

env​

Середовище, на якому буде запущено LambdaTest Tunnel.

Приклад:

{"env": "production"}

infoAPIPort​

Відкриває Tunnel Info API на вказаному порту.

Приклад:

{"infoAPIPort": 8080}

callbackURL​

URL зворотного виклику для статусу тунелю.

Приклад:

{"callbackURL": "https://example.com/callback"}

allowHosts​

Список хостів, розділених комами, для маршрутизації через тунель. Все інше буде маршрутизуватися через Інтернет.

Приклад:

{"allowHosts": "example.com,anotherexample.com"}

bypassHosts​

Список хостів, розділених комами, для обходу тунелю. Вони будуть маршрутизовані через Інтернет.

Приклад:

{"bypassHosts": "example.com,anotherexample.com"}

clientCert​

Шлях до файлу клієнтського сертифіката mTLS.

Приклад:

{"clientCert": "/path/to/client_certificate"}

clientKey​

Шлях до файлу клієнтського ключа mTLS.

Приклад:

{"clientKey": "/path/to/client_key"}

mTLSHosts​

Список хостів mTLS, розділених комами.

Приклад:

{"mTLSHosts": "example.com,anotherexample.com"}

dns​

Список DNS-серверів, розділених комами.

Приклад:

{"dns": "8.8.8.8,8.8.4.4"}

mitm​

Увімкнути режим MITM (Man-in-the-middle) для LambdaTest Tunnel.

Приклад:

{"mitm": true}

ntlm​

Для використання аутентифікації Microsoft NTLM (Windows NT LAN Manager) для комунікації або транспортних цілей.

Приклад:

{"ntlm": true}

pidfile​

Шлях до pidfile, куди буде записано ідентифікатор процесу.

Приклад:

{"pidfile": "/path/to/pidfile"}

usePrivateIp​

Встановлює віддалену адресу на внутрішню IP-адресу клієнтської машини.

Приклад:

{"usePrivateIp": true}

Ви можете дізнатися більше про ці опції тут.

preferScenarioName​

Тільки для Cucumber. Встановлює ім'я сесії в ім'я Сценарію, якщо запущено лише один Сценарій. Корисно при паралельному запуску з wdio-cucumber-parallel-execution.

Тип: Boolean
За замовчуванням: false

sessionNameFormat​

Налаштовує формат імені сесії.

Тип: Function
За замовчуванням (Cucumber/Jasmine): (config, capabilities, suiteTitle) => suiteTitle
За замовчуванням (Mocha): (config, capabilities, suiteTitle, testTitle) => suiteTitle + ' - ' + testTitle

sessionNameOmitTestTitle​

Тільки для Mocha. Не додає заголовок тесту до імені сесії.

Тип: Boolean
За замовчуванням: false

sessionNamePrependTopLevelSuiteTitle​

Тільки для Mocha. Додає заголовок верхнього рівня набору перед іменем сесії.

Тип: Boolean
За замовчуванням: false

setSessionName​

Автоматично встановлює ім'я сесії.

Тип: Boolean
За замовчуванням: true

setSessionStatus​

Автоматично встановлює статус сесії (пройдено/не пройдено).

Тип: Boolean
За замовчуванням: true

ignoreTestCountInName​

Ігнорує кількість повторних спроб тесту в імені

Тип: Boolean
За замовчуванням: false

useScenarioName​

Щоб отримати імена тестів як імена сценаріїв для тестів Cucumber, просто додайте useScenarioName: true у ваш wdio.conf.js.

Кроки для компіляції та публікації​

  1. клонувати цей репозиторій git.
  2. виконати "npm install"
  3. виконати "npm run build"
  4. Кроки для публікації: виконати "npm login"
  5. виконати "npm publish --access public"

Для отримання додаткової інформації про WebdriverIO див. домашню сторінку.

Welcome! How can I help?

WebdriverIO AI Copilot