開始する前に
最初に、Node.jsLTSバージョン、現在バージョン18以降をインストールする必要があります。Macを使用する場合は、Homebrewパッケージマネージャー経由でNode.jsをインストールすることをお勧めします。
プロキシ環境でのインストール
企業ファイアウォールの内側の環境で、Webサイトにアクセスするのにプロキシが必要な場合は、mabl CLIをインストールするコマンドを実行する前にnpmを設定しておく必要があります。例:
npm config set proxy http://proxy.example.com:8080
プロキシの設定が必要かどうか不明な場合は、ネットワーク管理者にご相談ください。
CLIのインストール
Node.jsをインストールした後、端末で次のコマンドを実行してmabl CLIをインストールします。
npm i -g @mablhq/mabl-cli
インストールされているCLIのバージョンを確認するには、次のコマンドを実行します。
mabl --version
CLIをインストールした後に、mablのログインのためのクレデンシャルまたはワークスペースのAPIキーを使用した認証のどちらかが必要です。ローカルマシンでCLIを使用する場合は、mablのクレデンシャルを使用してログインできます。
mabl auth login
一方、ビルドプロセスの一部としてmabl CLIを使用したい場合は、APIキーで認証する必要があります。APIキーを取得するには、mablアプリのSettings > APIsに移動して「Command Line Interface」APIキーを作成し、次のコマンドで使用します。
mabl auth activate-key <APIキー>
ローカルマシンでのテストの実行
API認証はCI/CDパイプラインの一部としてデプロイ時にテストを実行するためのものであるため、ヘッドレスモードの使用を含めてローカルでテストを実行するには、mablのログインクレデンシャルを使用して認証してください。
認証が成功したかどうかを確認するには、次のコマンドを実行します。
mabl auth info
Logged in as user [john@company.com]
Login expires in [3 hours, 23 minutes]
mabl CLIの更新
mabl CLIツールのバージョンを更新するには、次のコマンドを実行します。
npm install -g @mablhq/mabl-cli@latest
設定
config
コマンドを使用すると、ブラウザーパス、現在のワークスペース、フォワードプロキシなどの利用可能な設定オプションの取得、設定、リスト表示を行うことができます。設定オプションの一覧を表示するには、次のコマンドを実行します。
# view current configuration keys and values > mabl config list
その他の利用可能な設定引数には、以下のようなものがあります。
# set a configuration value # mabl config set <configuration-key> <value> > mabl config set workspace <WORKSPACE_ID> # get a configuration value # mabl config get <configuration-key> > mabl config get browser.path # delete a configuration value # mabl config delete <configuration-key> > mabl config delete http.proxy
プロキシ設定
mabl CLIはフォワードプロキシをサポートしています。プロキシを使用するには、http.proxy
の設定値をプロキシサーバーのURLに設定します。このURLには、基本認証のクレデンシャルとポート情報を含めることができます。
指定しているURLが無効であるというエラーが返される場合は、Node.jsバージョン14以降を使用していることを確認してください。
# add a proxy with no credentials on port 3128 > mabl config set http.proxy http://proxy.mycompany.com:3128 # add a proxy using credentials on port 3128 > mabl config set http.proxy http://"username:password"@proxy.mycompany.com:3128 # delete the current proxy setting > mabl config delete http.proxy
ログイン時に407
エラーが返される場合、これはプロキシ認証エラーです。上記でパスワードとユーザー名が正しく設定されていることを確認してください。
プロキシのタイプによっては、mabl config set
を使って次の設定を追加することもできます。
オプション | 説明 | デフォルト値 |
---|---|---|
http.proxyMode |
プロキシを使用するトラフィックを指定します | mabl |
http.sslVerify |
SSL検証を有効化または無効化します | true |
http.proxyType |
使用するプロキシ実装を指定します | legacy |
値が未設定の場合はデフォルト値が使用される
設定されていない設定オプションがある場合、その設定オプションはmabl config list
の一覧表示で---
と表示され、上の表のデフォルト値が使用されます。
同様に、mabl config delete
コマンドを使ってプロキシ設定値を削除した場合も、その設定オプションは未設定 (---
) と表示され、デフォルト値が使用されます。
http.proxyMode
デフォルトでは、mabl固有のリクエストのみがフォワードプロキシを通過します。http.proxy
Mode設定フラグを使用すると、プロキシを適用するトラフィックを指定できます。
http.proxyMode | 説明 |
---|---|
mabl | mablトラフィックのみに適用されます (デフォルト設定) |
test | テストトラフィックのみに適用されます |
all | mablトラフィックとテストトラフィックの両方に適用されます (デフォルト設定) |
none | プロキシは適用されません |
プロキシモードの変更
http.proxyMode none
は、プロキシ設定のテストを行う場合や、作業環境 (オフィスと自宅など) の切り替え時にプロキシをオフにする場合に便利です。
http.sslVerify
デフォルトでは、CLIはサーバー証明書が既知の認証局によって発行されたものであるかどうかを検証します。プロキシがHTTPSトラフィックをインターセプトしている場合、証明書の検証に失敗することがあります。プロキシを使用していてSSL検証が失敗する場合は、以下のように、証明書の検証を無効にすることができます。これは、必要な場合にのみ行うようにしてください。
# disable SSL verification > mabl config set http.sslVerify false # delete the current ssl verification setting to use the default > mabl config delete http.sslVerify
http.proxyType
レガシーなプロキシライブラリには、http.sslVerifyの設定が順守されないという問題があることが知られています。この場合、常にSSL証明書の検証が行われ、自己署名証明書を使用するプロキシでエラーが発生します。この問題を解消するため、mablでは証明書の検証を正しく行う新しいプロキシ実装を追加しました。http.proxyTypeの設定では、これらのプロキシ実装を切り替えることができます。指定できる値は、current
とlegacy
(デフォルト) です。
-
current
: プロキシライブラリでhttp.sslVerifyフラグが正しく実行されます。 -
legacy
: 既存のプロキシ実装であり、http.sslVerifyフラグを順守しません。
注: すべての場合にcurrent
設定を使用したうえで、お使いのプロキシ設定でcurrent
設定がうまく機能しない場合にのみ、legacy
設定に戻すことをお勧めします。
システム要件
- お使いのマシンにChromeブラウザーがインストールされている必要があります。
- 現在、Windows Subsystem for Linux (WSL) でのCLIの使用はサポートされていません。
CLIのアンインストール
mabl CLIを削除するには、次のコマンドを実行します。
npm remove -g @mablhq/mabl-cli