playwright处理弹出对话框
2021-12-07 本文已影响0人
Armlinux
from time import sleep
from playwright.sync_api import sync_playwright
def accept_dialog(dialog):
time.sleep(1)
dialog.accept()
class TestInput():
def setup(self):
playwright = sync_playwright().start()
self.browser = playwright.chromium.launch(headless=False)
self.context = self.browser.new_context()
self.page = self.context.new_page()
def teardown(self):
self.browser.close()
def test_click(self):
self.page.goto("https://sahitest.com/demo/confirmTest.htm")
self.page.click('[name="b1"]') # 默认取消对话框
# 接受对话框
#先注册一个监听器
self.page.on("dialog", dialog.accept())
self.page.click('[name="b1"]')
#移除监听 否则一直按照该监听器的规则执行
self.page.remove_listener("dialog", accept_dialog)
sleep(5)
test=TestInput()
test.setup()
test.test_click()