1

如何使用 Playwright Sharp 接受如下所示的对话框?

确认对话框

我似乎在 Playwright Sharp 的文档中找不到任何内容,但是 Playwright 的 (JS) 文档描述了如何为对话框添加事件处理程序:

page.on('dialog', dialog => dialog.accept());

在 Playwright Sharp 中是否有类似的方法可以做到这一点?

4

2 回答 2

1

page.Dialog 在出现时触发对话框事件,只需向其注册事件处理程序,如下所示:

page.Dialog += (_, x) => x.Dialog.AcceptAsync();

于 2021-02-15T04:38:13.107 回答
0

您可以预设page.WaitForEventAsync对话动作和超时时间,默认超时时间为 30 秒。当对话框激活时,这将触发您预设的操作并等待超时以继续其余代码。

// Preset dialog react
var dialogTask = page.WaitForEventAsync(PageEvent.Dialog, args =>
{
    args.Dialog.DismissAsync();
    return true;
}, 1000);

// Activate alert dialog
await Page.EvaluateAsync("alert('yo');");

await dialogTask;

您可以在此处找到 playwright-sharp page dialog unit test并尝试弄清楚如何使用它。

于 2021-04-09T10:15:10.590 回答