1.在下面代码中运行pytest --tracing on 不但没有生成trace.zip,而且还将原来存在的test-results目录删除了
import base64
from playwright.sync_api import sync_playwright
def test_download():
with sync_playwright() as p:
browser = p.chromium.launch()
context = browser.new_context()
page = context.new_page()
page.goto("https://www.baidu.com")
screenshot_bytes = page.screenshot()
print(base64.b64encode(screenshot_bytes))
context.close() # 上下文关闭时保存录屏
browser.close()
2.但是下面的代码中运行pytest --tracing on生成了trace.zip文件
from playwright.sync_api import Page, expect
def test_has_title(page: Page):
page.goto("https://www.baidu.com/")
# Expect a title "to contain" a substring.
expect(page).to_have_title("百度一下")
解决:
import base64
from playwright.sync_api import sync_playwright
def test_download():
with sync_playwright() as p:
browser = p.chromium.launch()
context = browser.new_context()
# 启用跟踪
context.tracing.start(screenshots=True, snapshots=True)
page = context.new_page()
page.goto("https://www.baidu.com")
screenshot_bytes = page.screenshot()
print(base64.b64encode(screenshot_bytes))
#关闭跟踪
context.tracing.stop(path="trace.zip")
context.close()
browser.close()