用途:在 Storybook 故事中编写自动化交互测试。play 函数在故事渲染后运行,可模拟用户操作并断言组件行为、状态变化与边界情况。
主要能力:结合 @storybook/test 的 within、userEvent、expect、waitFor 与 step;支持 Testing Library 语义查询、异步等待、错误与校验状态测试、多步骤流程编排、可复用 play 辅助函数。常见模式涵盖模态框、键盘导航、多步表单、拖拽与文件上传。
使用方式:在故事对象上定义 play: async ({ canvasElement }) => { ... },用 within(canvasElement) 限定查询范围,用 userEvent 模拟输入、点击、Tab、选择、键盘与指针操作,用 expect 断言,用 waitFor 等待异步变化,用 step 组织步骤。play 函数会在 Storybook 中查看故事、视觉回归测试、测试运行器及故事热重载时执行。
限制与注意:避免直接操作 DOM,应使用语义查询;不要遗漏 await;避免依赖易变文本的脆弱选择器。资料未提供安装命令、版本要求、收费与平台信息。