英語から自動翻訳されています。

英語で読む
Proxy Mail QA

サインインフォームを確認するためのメールアドレス

サインインフォームのテストは簡単そうに見えます。メールアドレスとパスワードを入力してボタンを押すだけです。しかし実際には、既知の状態で存在し、パスワードがわかっているアカウントが必要です。さらにコード、マジックリンク、リセットには、読める受信トレイが必要です。自分のメールアドレスでは 1 つのアカウントしか作れず、テストメールと実際のメールが混ざり、チームメイトやテストスイートに渡すこともできません。

更新日:

最初に結論を。 Proxy Mail QA は当社の製品なので、中立ではありません。サインイン(ログイン)フォームのテストでは、メールを読めるテストアカウントが必要な場合におすすめします。各アカウントにはパスワードが一緒に保存され、サインインコードやマジックリンクは実際の受信トレイに届き、パスワードリセットのメールも最後までたどれます。ソーシャルサインイン(Google、Apple、Microsoft)、SMS コード、認証アプリ、パスキーはテストできません。また、AI エージェントやテストの代わりにフォームを入力・送信することもしません。それはエージェントやテストが行います。

サインインフォームのテストで確認すること

  1. 正しいメールアドレスとパスワードでサインインできる。
  2. パスワードが間違っている場合は、そのメールアドレスにアカウントがあるかどうかを明かさない、わかりやすいメッセージが出る。アカウントのないメールアドレスでも同じメッセージが出る。
  3. 大文字で入力したメールアドレスや、末尾に空白があるメールアドレスでも、同じアカウントにサインインできる。
  4. サインインコードやマジックリンクが届き、1 回だけ使え、期限切れや新しいものが送られた時点で使えなくなる。
  5. パスワードを忘れた場合のメールが届き、そのリンクは 1 回だけ使える。その後、古いパスワードは失敗し、新しいパスワードで成功する。
  6. パスワードを何度も間違えると、アカウントがロックされるか遅延がかかり、ロック解除メールがあれば届く。
  7. パスワードマネージャーがフォームに入力できる。フィールドに autocomplete="username"(または email)と autocomplete="current-password" が設定されている。
  8. サインイン後、常にホームページではなく、本来行こうとしていたページに移動する。

再びサインインできるテストアカウント

import { ProxyMailQA } from 'proxymail-qa';
const qa = new ProxyMailQA(); // a key with "Can read saved passwords", in PROXYMAIL_QA_API_KEY
await qa.withAccount({ tags: ['verified'] }, async (account) => {
const { secret } = await qa.savedPassword(account.address);
await signIn(page, account.address, secret); // your own sign-in steps
});

サインインコードとマジックリンク

パスワードの代わりにコードやリンクをメールで送るフォームの場合:

サーバーの test_sign_in_code プロンプトは、認証済みのアカウントを借り、アプリがメールで送るコードやリンクでサインインします。詳しくはワンタイムコードのテストとマジックリンクのテストをご覧ください。

大文字とプラスタグ

get_address_variants は、同じ受信トレイに届くテスト用アドレスのバリエーションを返します。サインインで重要なのは次の 2 つです。

パスワードリセット

test_password_reset プロンプトは、認証済みのアカウントを借り、アプリでパスワードをリセットし、リセットメールをチェックし、新しいパスワードをアカウントに保存してプールに返却します。その後、古いパスワードでサインインできないことを確認してください。詳しくはパスワードリセットのテストをご覧ください。

エージェントに頼む

Qoder で Proxy Mail QA を接続している場合(Marketplace):

Test the sign-in form at https://staging.acme.dev/login with Proxy Mail QA. Start a run.
Create a test address with a password (create_address, password: true), sign up with it
at https://staging.acme.dev/signup and finish the verification. Sign out.
Sign in with it. Then try a wrong password, an email with no account, and the address
in capitals, and compare the messages.
Use "Forgot password", finish the reset with the link from the email, save the new
password with set_password, and check the old one fails.
Finish the run and give me the report.

エージェントは create_address のパスワードをセッション中保持するため、以前に保存されたパスワードを読めない Marketplace 接続でもこの方法は使えます。

対象外のこと

次のサインアップテストで試してみてください

無料プラン、クレジットカード不要。アドレスを作成して、コードやリンクが届くのを確かめてください。

無料アカウントを作成アプリを開く

AI ツールでアプリを作りましたか?使ったツールを選んでください

このページについて質問がありますか?

質問はどの言語でもかまいません。ドキュメントからすぐに回答を得ることも、Proxy Mail QA チームに質問を送ることもできます。チームからの返信は英語です。