如何使用剧作家检查特定动作是否发出请求?

How to check if specific action made a request using playwright?

这是我第一次使用 Playwright,我只是不知道如何检查是否向服务器发出了请求。我想按下一个发送请求的按钮并验证它是否成功。我正在使用 Playwright 的 chromium 并使用 Mocha 和 Chai 进行测试。这是我的代码:

const browser = await chromium.launch();    
const page = await browser.newPage();

await page.goto(url);
await page.click('text=Send');
// Validate if the request is send

await browser.close();

我可能尝试做错了,但我对 Playwright 没有太多经验,所以任何帮助将不胜感激。

我不确定我是否清楚。如我所见,您需要向 API 发出请求。您可以在 docs 中查看。例如,点击按钮后:

test('api', async({ request }) => {
    const browser = await chromium.launch();
    const page = await browser.newPage();
    await page.goto(url);
    await page.click('text=Send');
    // your api call(s)
    const req = await request.YOUR_REQ_METHOD('https://THE_URL_NEEDED');
    // your assertion(s)
    expect(req.ok()).toBeTruthy();
});

我只是补充一点,我并不是说情况就是这样,请始终考虑是否需要使用浏览器来实现您的目标。