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

英語で読む
Proxy Mail QA

サインアップからチェックアウトまでクーポンコードをテストする

ウェルカムオファーには見た目以上に多くの要素があります。メールが届くこと、コードが一度だけ使えること、そして使えなくなるべき時に使えなくなることです。新しいテスト用アカウントでサインアップし、割引内容と終了日を含むクーポンを取得して、チェックアウトでの処理結果を記録します。

更新日:

クーポンのフローが気づかれずに壊れる理由

Proxy Mail QA でできること

  1. ステージングサイトで新しいアドレスを使ってオファーに登録します。
  2. アカウントページと受信トレイでクーポンを確認します。コピーボタン付きのコード、割引内容(「20%オフ」)、終了日、アドレス作成から到着までの時間が表示されます。終了日を過ぎると「期限切れ」と表示されますが、コピーは引き続きできるため、チェックアウトで拒否されることをテストできます。
  3. テスト決済でチェックアウト時に適用し、その結果を受信トレイに記録します。受け付け、拒否、またはエラーを、アプリが表示したメッセージとともに記録します。
  4. 判定を確認します。終了日後に受け付けられたクーポン、1回限りなのに2回受け付けられたクーポン、同じ人がすでに受け取ったオファーで受け付けられたクーポンは失敗になります。エラーは警告になります。

確認する内容

テストでの使い方

offer.spec.ts
const submitted = new Date();
await page.getByRole('button', { name: 'Get 20% off' }).click();
// Offers often take minutes: this waits up to 10.
const coupon = await qa.waitForCode(address, { type: 'coupon', since: submitted, timeout: 600 });
expect(coupon.discount).toBe('20% off');
expect(coupon.after_seconds).toBeLessThan(300);
await page.getByLabel('Promo code').fill(coupon.value);
await page.getByRole('button', { name: 'Apply' }).click();
const first = await qa.recordCouponResult(address, 'accepted', { oneTime: true });
expect(first.check?.status).toBe('pass');
// The same code again should be refused.
await page.getByLabel('Promo code').fill(coupon.value);
await page.getByRole('button', { name: 'Apply' }).click();
const again = await qa.recordCouponResult(address, 'rejected', { message: await page.getByRole('alert').innerText() });
expect(again.check?.status).not.toBe('fail');

MCP server に接続したエージェントは、wait_for_code(kind coupon)と record_coupon_result で同じことができます。また、test_coupon_checkout プロンプトはステージング環境での一連の流れを順に案内します。

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

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

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

よくある質問

何かを有効にする必要はありますか?

はい、現在は必要です。マーケティングとオファーのメールは Labs の機能です。アプリの Account settings → Labs で有効にしてください。この設定は API キー とエージェントにも適用されます。有効にするまでは、マーケティング用のツールはその旨を伝えるエラーを返します。

Proxy Mail QA がチェックアウトまで行いますか?

いいえ。リンクを開いたりチェックアウトしたりすることはありません。テスト、エージェント、またはあなた自身がステージングサイトでテスト決済を使ってクーポンを適用し、その結果を記録します。

クーポンの終了日がメールに書かれていない場合は?

利用者が問い合わせることになるため、coupon_expiry のチェックで警告が出ます。「10月31日まで有効」や「7日間有効」のように書かれている場合は、クーポンの横に終了日が表示されます。

他のショップのクーポンを集めるのに使えますか?

いいえ。自分が所有していないサービスの特典を得るためにアカウントを作成することは詐欺であり、利用規約に違反します。これらのアカウントは、開発、ステージング、QA で自社のオファーをテストするためのものです。

ログインコードの待機でクーポンが返されなかったのはなぜですか?

通常の待機ではクーポンは対象外です。サインインのテストで、誤って割引コードをコード入力欄に入力しないようにするためです。クーポンを取得するには type coupon を、エージェントの場合は kind coupon を指定してください。

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

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

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