@ 原子测试/ 核心
为整个原子测试生态系统提供动力的核心设施。 包裹 定义用于模拟场景、定位元素和与 跨越不同测试环境的组件.
最快的开始 : 运行
npm create atomic-testing@latest要脚手架一个工作 测试设置——跑道配置,示例组件,其ScenePart和传球 测试——输入一个现有项目.
原子试验旨在提供一种一致的方式与 跨越DOM和端到端测试的第三方或一方组件. 核心内容 重点 可续用性, (中文(简体) ), 可替换性,以及 适应性 所以一样 测试可以在React,Vue,Playwright,Cypress等网站运行.
关键特性
- 构成部分 - 与UI组件进行程序互动。 司机 显示高水平动作, 如点击按钮或读取一个值 .
- 定位器 - 使用辅助工具查找元素,例如
byDataTestId或者说byRole。 。 。 . - 场景部件 - 将页面或部件的片段描述为驱动程序地图.
- 测试引擎 - 制作一个场景,并允许访问所有定义的部分,这样 试验仍可忽略基本框架.
示例
import { TextFieldDriver, ButtonDriver } from '@atomic-testing/component-driver-mui-v6';
import { byDataTestId, ScenePart } from '@atomic-testing/core';
import { createTestEngine } from '@atomic-testing/react-19';
import { Login } from './Login';
const loginScenePart = {
username: { locator: byDataTestId('username'), driver: TextFieldDriver },
password: { locator: byDataTestId('password'), driver: TextFieldDriver },
submit: { locator: byDataTestId('submit'), driver: ButtonDriver },
} satisfies ScenePart;
const engine = createTestEngine(<Login />, loginScenePart);
await engine.parts.username.setValue('alice');
await engine.parts.password.setValue('secret');
await engine.parts.submit.click();
await engine.cleanUp();
参见 文档 详细指南
和更多的例子。 完整的注册窗体示例可见于
examples/example-mui-signup-form。 。 。 .
公共 API 稳定性
这个包的稳定表面是它的 . 桶出口,在
由被害者进行机器检查 API 提取器
报告 etc/core.api.md。标记的出口 @internal 为:
不是保证的一部分。 见 1.0 API 冻结和演变政策。 。 。 .