SuperAPI AI 工具集

solid-impl-testing

测试与质量

查看项目

更新于 10-16 08:50

技能介绍

用途:为 SolidJS 组件、signals 或 stores 编写单元与集成测试时使用,重点规避遗漏 cleanup、异步测试模式错误以及 React 测试习惯带来的问题。

安装:npm install --save-dev @solidjs/testing-library @testing-library/jest-dom vitest;npm install --save-dev vite-plugin-solid。

主要能力:@solidjs/testing-library 提供 render、cleanup、renderHook、testEffect;@testing-library/dom 再导出 screen、fireEvent、waitFor、within 与各类查询;@testing-library/jest-dom 提供 DOM 断言;Vitest 为推荐测试运行器;vite-plugin-solid 负责编译测试用 JSX/TSX。

关键用法:render 必须传入返回 JSX 的函数,如 render(() => <Component />),不能直接传 JSX;每个 afterEach 显式调用 cleanup();不要使用 rerender(),SolidJS 不重渲染,应通过 signals 驱动状态变化;测试组件中不要解构 props;Vitest 配置需设置 resolve.conditions: ["development", "browser"],否则会加载服务端包导致 hydration 错误。查询优先 getByRole,其次 getByLabelText、getByText,异步用 findBy* 与 waitFor,getByTestId 为最后手段。测试文件含 JSX 时用 .test.tsx。

适用场景:组件渲染与交互、props 响应式变化、Context Provider、异步数据、自定义 hook、路由、响应式 effect 等测试。

限制:资料未提供具体收费、价格、平台支持范围与效果数据;官方来源为 solid-testing-library、testing-library 查询文档与 SolidJS 测试指南。