工作原理
Extension.js 按以下顺序选择 profile 模式:- 显式的
profile路径(如果提供) - 受管理的 profile 模式(默认)
- 默认是临时(ephemeral)
- 当
persistProfile: true时则保持持久
- 当
EXTENSION_USE_SYSTEM_PROFILE=true时,使用系统 profile 模式
profile 能力
profile 模式
Extension.js 会在以下位置创建受管理的 profile:
dist/extension-js/profiles/<browser>-profile/<...>
dist/extension-js/profiles/<browser>-profile/dev
在 extension.config.* 中配置
CLI 用法
直接使用显式的 profile 路径:start 与 preview 上用法类似。
生命周期说明
- Extension.js 为每次运行创建一个临时的受管理 profile。
- Extension.js 在多次运行之间复用持久的受管理 profile(
dev)。 - Extension.js 会自动清理旧的受管理 profile 文件夹。可通过
EXTENSION_TMP_PROFILE_MAX_AGE_HOURS控制最大保留时长。
最佳实践
- 基线测试用受管理临时 profile:减少隐藏状态,降低不稳定复现的概率。
- 长时间调试会话用
persistProfile:在多次运行之间保留 auth / 会话 / devtools 状态。 - 按浏览器家族保持各自的自定义 profile:避免跨浏览器互相污染。
- 有意识地使用系统 profile 模式:适合复现,但隔离性不如受管理 profile。
下一步
- 进一步了解 浏览器 preferences。
- 进一步了解 浏览器 flag。

