编写playwright脚本的过程中会涉及到脚本的调试,调试的话主要用Playwright Inspector来进行调试,可以通过以下几种方式来调试
PWDEBUG=1
设置PWDEBUG=1会打开inspector界面,并且
- 浏览器会以headed的模式运行
- timeout的默认值是0
设置方式
mac上设置方式 : PWDEBUG=1 pytest -s
windows设置方式:
set PWDEBUG=1 # 如果在powershell中要$env:PWDEBUG=1
pytest -s
如图所示,要执行下一条点击step over,执行整个执行resume
并且在这个界面还可以重新录制和进行元素定位,点击explore即可
PWDEBUG=console
设置PWDEBUG=console后,通过pytest -s
执行用例时会有以下区别
- 浏览器会以headed的模式运行
- timeout的默认值是0
- 打开控制台
如图所示
page.pause
前提: 在headed模式时才会生效
在执行到page.pause() 处暂停,并且打开inspector,如图所示
Trace viewer
通过trace viewer可以查看脚本执行过程,如图所示
录制trace
在需要录制的脚本前后加上如下代码即可录制
context.tracing.start(screenshots=True, snapshots=True, sources=True)
…………………… #需要录制的代码
context.tracing.stop(path="trace.zip") #保存的文件名
如果使用了pytest-playwright插件,通过pytest 运行的时候带上 ```–tracing on ``参数即可录制(注意生成的trace.zip文件是在test-results目录下)
查看保存的trace,
方法一: 访问https://trace.playwright.dev/选择录制好的trace.zip文件即可打开,如图所示
方法二:
在控制台中输入playwright show-trace trace.zip