LambdaTest サービス
wdio-lambdatest-service はサードパーティのパッケージです。詳細は GitHub | npm をご覧ください。
LambdaTest ユーザーのためのトンネルとジョブメタデータを管理する WebdriverIO サービスです。
インストール
npm i wdio-lambdatest-service --save-dev
WebdriverIO のインストール方法はこちらをご覧ください。
設定
WebdriverIO は LambdaTest を標準でサポートしています。wdio.conf.js ファイルで user と key を設定するだけです。アプリの自動化機能を有効にするには、wdio.conf.js ファイルで product: 'appAutomation' を設定します。このサービスプラグインは 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
        }]
    ],
    // ...
};
自動化ダッシュボードにテストエラーに関するコメントを表示するには
自動化ダッシュボードにテストエラーに関するコメントを表示するには、wdio.conf.js に ltErrorRemark: true を追加するだけです。
ローカルまたはURLからアプリをアップロードするには
wdio.conf.js に必要な設定を追加することで、ローカルまたはホストされているアプリのURLから android または ios アプリをアップロードできます。同じ実行でアップロードされたアプリをテストに使用するには、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
LambdaTest クラウドからの接続をコンピューターにルーティングする機能を有効にするには、これを true に設定します。ブラウザーの機能でも tunnel を true に設定する必要があります。
型: Boolean
デフォルト: false
lambdatestOpts
指定されたオプションは LambdaTest Tunnel に渡されます。詳細はこのリストを参照してください。
型: Object
デフォルト: {}
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
useScenarioName
Cucumber 特有のテストでテスト名をシナリオ名として取得するには、wdio.conf.js に useScenarioName: true を追加するだけです。
コンパイルと公開の手順
- このリポジトリを git clone します。
- "npm install" を実行します。
- "npm run build" を実行します。
- 公開手順:"npm login" を実行します。
- "npm publish --access public" を実行します。
WebdriverIO の詳細については、ホームページを参照してください。