Playwright
本页由英文自动翻译。
阅读英文版一个 Playwright 测试:用新地址注册,并输入邮件中的验证码,使用 proxymail-qa 包。
把 proxymail-qa 添加到项目中,并把 API 密钥 保存在
PROXYMAIL_QA_API_KEY中。npm install --save-dev proxymail-qapnpm add -D proxymail-qayarn add -D proxymail-qabun add -d proxymail-qa注册并输入验证码
Section titled “注册并输入验证码”创建地址,用它注册,然后等待验证码。
since让等待忽略表单提交之前发送的任何邮件,这样重试时不会拿到旧验证码。等待最长 30 秒;需要更久时传入timeout。signup.spec.ts import { expect, test } from '@playwright/test';import { ProxyMailQA } from 'proxymail-qa';const qa = new ProxyMailQA(); // reads PROXYMAIL_QA_API_KEYtest('sign-up sends a working code', async ({ page }) => {const { address, password } = await qa.createAddress({ persona: true, password: true });const submitted = new Date();await page.goto('/signup');await page.getByLabel('Email').fill(address);await page.getByLabel('Password').fill(password);await page.getByRole('button', { name: 'Sign up' }).click();const { value } = await qa.waitForCode(address, { since: submitted });await page.getByLabel('Code').fill(value);await expect(page).toHaveURL(/welcome/);await qa.deleteAddress(address);});或者打开链接
Section titled “或者打开链接”如果是链接而不是验证码,就等待链接并打开它。
const { value: link } = await qa.waitForLink(address, { type: 'verify', since: submitted });await page.goto(link);
如果没有邮件到达,错误会尽 Proxy Mail QA 所知说明原因,例如你的应用的邮件服务商只向已验证地址发信。这个包还支持角色的出生日期和国家、应用链接、用于模板测试的邮件 HTML,以及特殊地址:见它的 README。在 CI 中运行,见在 CI 中运行。
更喜欢直接用 HTTP?所有调用都在 REST API 指南中。
对本页有疑问?
可以用任何语言提问。文档可以立即回答,你也可以把问题发给 Proxy Mail QA 团队,他们会用英文回复。