playwright跟踪功能

时间:2025-10-06 04:25:29  阅读量:  分类:标签:

Playwright 有个特色功能:跟踪(tracing)启用跟踪功能后,可以在执行自动化后,通过记录的跟踪数据文件,回看自动化过程中的每个细节

下面的的代码进行了自动化搜索股票,并打开跟踪功能,保存跟踪数据文件为 trace.zip。

from playwright.sync_api import sync_playwright

p = sync_playwright().start()
browser = p.chromium.launch(headless=False)

# 创建 BrowserContext对象
context = browser.new_context()
# 启动跟踪功能
context.tracing.start(snapshots=True, sources=True, screenshots=True)

page = context.new_page()
page.goto(r"E:\playwright\stock.html")

# 搜索名称中包含 通讯 的股票
page.locator('#kw').fill('通讯')
page.locator('#go').click()

page.wait_for_timeout(1000)  # 等待1秒

lcs = page.locator(".result-item").all()
for lc in lcs:
    print(lc.inner_text())

# 搜索名称中包含 软件 的股票
page.locator('#kw').fill('软件')
page.locator('#go').click()

page.wait_for_timeout(1000)  # 等待1秒

lcs = page.locator(".result-item").all()
for lc in lcs:
    print(lc.inner_text())

# 搜索名称中包含 软件 的股票
page.locator('#kw').fill('软件')
page.locator('#go').click()

page.wait_for_timeout(1000)  # 等待1秒

lcs = page.locator(".result-item").all()
for lc in lcs:
    print(lc.inner_text())

# 结束跟踪
context.tracing.stop(path="trace.zip")

browser.close()
p.stop()

就是多了这几行代码

from playwright.sync_api import sync_playwright

p = sync_playwright().start()
browser = p.chromium.launch(headless=False)

# 创建 BrowserContext对象
context = browser.new_context()
# 启动跟踪功能
context.tracing.start(snapshots=True, sources=True, screenshots=True)

#你的代码逻辑

# 结束跟踪
context.tracing.stop(path="trace.zip")

查看跟踪的方法

执行完以后,我们发现,当前工作目录下面多了 trace.zip 这个跟踪数据文件。怎么查看这个跟踪文件呢?

有 2 种方法:

  • 终端执行命令 playwright show-trace trace.zip

  • 直接访问 trace.playwright.dev 这个网站,上传 跟踪文件

  • 这个功能对自动化测试特别有用。

  • 测试结束后,对有疑问的测试用例的执行过程,可以详细的查看具体信息。