本文へ移動

Cucumber Viewport Loggerサービス

wdio-cucumber-viewport-logger-serviceはサードパーティパッケージです。詳細については、GitHub | npmを参照してください。

WebdriverIO用Cucumber Viewport Loggerサービス

このサービスにより、WebdriverIOベースのソリューションで、Cucumberのステップやその他のデバッグ情報をブラウザウィンドウに直接ログ出力できます。特に、デバイスや仮想マシンを使用していて、それらに直接*物理的に*アクセスできず、e2eテストのデバッグのために対話型セッションを設定できない場合に役立ちます。

demo

クイックスタート

パッケージのインストール

npm install wdio-cucumber-viewport-logger-service --save-dev

例として、`services`設定セクションにサービスを追加します。

  services: [
//...
'cucumber-viewport-logger',
//...
]

サービスオプション

オプション説明タイプデフォルト値
numberOfStepsビューポートに表示されるステップ数数値3
enabledサービスの有効/無効ブール値true
stylesロガーラッパー、ステップキーワードステップテキストのCSSスタイル。以下の例を参照してください。オブジェクト
// wdio.conf.js
exports.config = {
// ...
services: [
['cucumber-viewport-logger', {
numberOfSteps: 5,
enabled: process.env.VP_LOGGER === '1', // service will be enabled only when you set `VP_LOGGER` enviroment variable to `1`
// set CSS custom styles for particular elements
styles: {
wrapper: { backgroundColor: 'white' },
keyword: { color: 'red' },
text: {
fontSize: '30px',
color: 'green',
},
closeButton: {
color: 'red',
},
},
},]
]
// ...
};

API

logToViewport(message, styles) - カスタムCSSスタイル(必須ではない)を使用してカスタムメッセージをレンダリングします。ステップ定義などで使用できます。

When(/^I render message: "([^"]*)"$/, { timeout: 120000 }, function (message) {
browser.logToViewport(message, { text: { color: 'green' } });
});

removeViewportLogMessage() - ビューポートメッセージセクションを削除します。たとえば、ビジュアルアサーションを行う場合などに便利です。

pointerEvents: 'none'

デフォルトでは、すべてのマウスイベント(クリック、ホバーなど)はメッセージセクションを通過します。たとえば、メッセージセクションをクリックする代わりに、メッセージの隣にある要素(アプリの要素)にクリックが「渡されます」。この動作を変更する場合は、ラッパーのスタイル「pointerEvents」オプションを「auto」に設定します。


/ wdio.conf.js
exports.config = {
// ...
services: [
['cucumber-viewport-logger', {

styles: {
wrapper: { pointerEvents: 'auto' },
},
},]
]
// ...
};

ようこそ!お手伝いできることはありますか?

WebdriverIO AI Copilot