Python

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()
上一篇下一篇

猜你喜欢

热点阅读