
mablには「Auto login flow(以後、Auto-login)」という機能があるみたいなので試してみた。この機能は「よくあるログイン機能」であれば、自動的にログインページを探し出して、登録されたクレデンシャル情報を使って自動ログインを行ってくれる。
Auto-loginの威力
この機能の何が便利かというと、テストするアプリにログイン画面がある場合、自動でログインしてくれるので、それぞれのケースで「事前にログインを行う」とかしなくてもよくなる。テストケース自体もすっきりするし、Auto-loginを使うかどうかもワンクリックでOKになるのだ。
しかしながら、「ほんとにそんなうまいこと動いてくれるの?」と思ってしまう性分なので、簡単なログイン画面で試してみた。
試しに使ったのが Redmineのデモページ。Redmineにはチケットの作成・読み込み・更新・削除といった機能があるので、自動テストのデモにはちょうどいい感じ。

設定は、まず「Configuration」の「Credentials」を開いて、ログイン情報(ユーザ名、パスワード)を登録。

次に、テストを作るときに「Authentication」をオンにする。これだけ。

ローカルだと動かないので mabl のクラウド環境で実行してみる。成功したようなのでログを見てみると、上記のようにログイン画面を見つけて開き、入力を進めてくれているようだ。
べんりー。

テストケースにはこんな感じで「Start flow “mabl Auto Login Flow”」と表示され、ログインしたあとのステップを入れていけばよくなる。
ドキュメントはこちら。
How do I log into my app with mabl?
you’d like to add your credentials and have mabl login automatically or if you’d like to record a manual login flow yourself.
とあるように、自動でmablがログインするか、自分でログインのフローを記録するかを選択できる。凝りに凝ったログインページだと手動でがんばることになる。
For the URL, you’ll want to start on a page that has, at the very least, a login link. When mabl tests your app with an auto-login flow, it will automatically look for this link and navigate to it. If the link isn’t present, mabl won’t be able to log in at all. All you need to do now is click the “create test” button at the bottom.
とあるので、開始ページにログインへのリンクがなければならないのだろう。もしくははじめにログイン画面を開いてあげたら良いかも。
それにしても便利。