0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

mablでBasic認証の壁を越える! ローカル作成からクラウド実行までの完全ガイド

0
Last updated at Posted at 2026-04-13

mablを使ってテストの自動化を進める中で、「Basic認証」 の壁にぶつかったことはありませんか?

テスト対象の環境(例えばステージング環境など)にBasic認証がかかっているのはよくあることですが、mablでテストを作ろうとすると、ログインダイアログが表示されてしまい、毎回 ID と パスワード を手で入力しないといけない。テストを自動化したいのに、テスト作成時のログインが手動になってしまう...。

Basic認証のログインダイアログ

ヘルプを探しても「クラウド実行」での設定は見つかるものの、ローカルでのテスト作成時の設定が見当たらず、「mablではBasic認証のテストはできないのでは?」と諦めてしまう方も少なくありません。

実は、mablでBasic認証を突破してテストを行うことは可能です。

多くのユーザーが混乱してしまう最大の原因は、「ローカル実行(テスト作成時を含む)」「クラウド実行」 で、Basic認証の突破方法が全く異なるという点にあります。

この記事では、この「分かりにくいポイント」を整理し、セキュアかつ確実にBasic認証環境をテストするための設定方法を徹底解説します。

アンチパターン: URLにIDとパスワードを埋め込むのはNG!

設定方法の前に、よくやってしまいがちな「アンチパターン」について触れておきます。

Basic認証を回避する手軽な方法として、アクセスするURLを以下のように指定する方法があります。

https://ユーザーID:パスワード@example.com

確かにこれならIDとパスワードの入力はスキップされ、テストを作成することは可能です。しかし、この方法は アクセスログにBasic認証のIDとパスワードがそのまま平文で記録されてしまう という致命的なセキュリティ上の問題があります。

本番環境はもちろんのこと、テスト環境であっても、クレデンシャル情報がログに残る運用は避けるべきです。mablにはより安全な機能が用意されていますので、以下の正しい手順を活用しましょう。

解決策1: ローカルでのテスト作成・実行時の設定(デスクトップアプリ)

まず、mabl Trainerを開いてテストを「作成・編集」する時や、自PCのChromeブラウザを使って「ローカル実行」する時の設定です。

ヘルプには「トレーニング時は、Basic認証のクレデンシャルを手動で入力する必要があります」といった情報しか見当たらず不安になってしまいますが、実はmablデスクトップアプリの「Preferences(設定)」からHTTPヘッダーを直接追加することで自動ログインが可能になります。

設定手順

  1. mablデスクトップアプリの設定を開く
    アプリ上部のメニューから EditPreferences を選択します。
    mabl Edit→Preferences

  2. HTTPヘッダー設定画面へ
    表示されたPreferencesダイアログの左側のメニューから HTTPヘッダー を選択します。
    mabl HTTPヘッダー

  3. ヘッダー値の追加
    「追加のブラウザHTTPヘッダー」画面が表示されるので、以下のように設定します。
    キー: Authorization (※Authenticationではないので注意!)
    : Basic {Base64変換した ID:パスワード の文字列}
    mabl 追加のブラウザHTTPヘッダー

  4. テストの作成
    この設定をした状態でmabl Trainerを起動し、テスト対象サイトにアクセスします。Basic認証のダイアログは表示されず、スムーズにテスト作成を進めることができます。

解決策2: クラウド実行時の設定(mablクラウド)

テストの作成が終わり、いざmablのクラウド上でテスト(プラン)を実行する際の設定です。

クラウド実行の場合、解決策1で設定したローカルの「Preferences」の設定は反映されません。代わりに、mablの標準機能である 「クレデンシャル」 機能を使用して、安全に認証情報を渡します。

設定手順

  1. Basic認証用クレデンシャルの作成
    mablの左メニューから、テスト環境設定クレデンシャル を開き、新規クレデンシャルを作成します。
    mabl クレデンシャルの追加

  2. プラン(またはテスト実行)でのクレデンシャル設定
    テストを実行する際、またはプランの設定画面において、「クラウド実行」を選択します。

  3. HTTPベーシック認証クレデンシャルの割り当て
    実行設定の中に「HTTPベーシック認証クレデンシャル」を選択するドロップダウンがあるので、手順1で作成したクレデンシャルを指定します。
    mabl クラウド実行 HTTPベーシック認証クレデンシャル

  • フォームログインとの併用も可能!
    クラウド実行の際には、Basic認証のクレデンシャルとは別に、Webアプリの「ログインクレデンシャル」も設定できます。これにより、「Basic認証を通過した後に、Webアプリのログイン画面で別のID/パスワードを使ってログインする」というシナリオも、コードを書くことなく簡単に実現できます。

まとめ

mablでBasic認証を突破するための設定は、実行環境によって以下のように分かれています。

実行環境 いつ使うか 認証の突破方法
ローカル テストの作成・編集時,ローカル実行時 mablデスクトップのPreferencesから Authorizationヘッダー を追加
クラウド クラウドでのテスト実行時 実行/プラン設定画面からHTTPベーシック認証クレデンシャルを指定

mablでBasic認証

この「ローカルとクラウドでの設定の違い」さえ理解してしまえば、mablでのBasic認証テストは決して難しくありません。

URLへのパスワード埋め込みといった危険な方法を避け、mablの機能を正しく活用して、セキュアで信頼性の高い自動テストを構築していきましょう!


追記

Base64変換時の注意点: ダブルクオートはNG, シングルクオートを使う

Basic 認証で使用する username:password を Base64 に変換する際、
ダブルクォートを使うと誤変換が起きる場合があります。

特に $ や % などの記号を含むパスワードの場合、
シェルが 変数展開 として解釈してしまい、意図しない文字列が Base64 化されてしまいます。

ダブルクオートは危険(誤変換の例)

echo -n "user:foobar$u" | base64

この方法では、パスワード中の $u が「変数 u」として扱われ、
実際には "user:foobar" だけがエンコードされてしまいます。

正しく変換するにはシングルクオートを使う

echo -n 'user:foobar$u' | base64

シングルクォートで囲むことで、
特殊文字をすべて“そのまま”扱うため、正しい Base64 が得られます。

デコードして確認する方法

echo -n '<Base64文字列>' | base64 --decode

元の username:password に戻れば成功です。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?