---
title: 测试文档
order: 4
category: atom
---

# PisellBaseCard 组件测试用例文档

## 测试概览

本文档列出 PisellBaseCard 组件的测试用例点，基于 types.ts 与组件实现。

---

## 一、基础渲染测试

| 测试项 | 测试步骤 | 预期结果 | 测试类型 |
|--------|---------|---------|---------|
| 根节点渲染 | 不传 props 渲染组件 | 存在 `.pisell-base-card-root` | 自动化 |
| 空 children | 不传 children | 根节点内无占位内容，可空渲染 | 自动化 |
| children 渲染 | 传入 `children={<span>内容</span>}` | 根节点内显示「内容」 | 自动化 |
| className 合并 | 传入 `className="custom"` | 根节点 class 包含 `pisell-base-card-root` 与 `custom` | 自动化 |
| style 应用 | 传入 `style={{ padding: 8 }}` | 根节点内联样式包含 padding: 8px（与默认合并） | 自动化 |

---

## 二、Props 与默认值测试

| 测试项 | 测试步骤 | 预期结果 | 测试类型 |
|--------|---------|---------|---------|
| clickable 默认 true | 不传 clickable | 根节点有 `role="button"`、`tabIndex={0}` | 自动化 |
| disabled 默认 false | 不传 disabled | 根节点无 `aria-disabled`，可交互 | 自动化 |
| clickable=false | 传入 `clickable={false}` | 无 role、无 tabIndex，不响应点击 | 自动化 |
| disabled=true | 传入 `disabled={true}` | 有 `aria-disabled="true"`，不响应点击 | 自动化 |

---

## 三、交互与事件测试

| 测试项 | 测试步骤 | 预期结果 | 测试类型 |
|--------|---------|---------|---------|
| onClick 触发 | clickable=true, disabled=false，传入 onClick，点击根节点 | onClick 被调用一次 | 自动化 |
| 禁用时不触发 | disabled=true，传入 onClick，点击根节点 | onClick 不触发 | 自动化 |
| 不可点击时不触发 | clickable=false，传入 onClick，点击根节点 | onClick 不触发 | 自动化 |
| 键盘 Enter 触发点击 | 聚焦后按 Enter | 触发与点击相同效果（调用 onClick） | 自动化 |
| 键盘 Space 触发点击 | 聚焦后按 Space | 触发与点击相同效果，且不滚动页面 | 自动化 |
| 键盘其他键不触发 | 聚焦后按其他键 | 不触发 onClick | 自动化 |

---

## 四、状态样式测试

| 测试项 | 测试步骤 | 预期结果 | 测试类型 |
|--------|---------|---------|---------|
| style 生效 | 传入 `style={{ backgroundColor: 'red' }}` | 根节点背景色为 red | 自动化 |
| disabledStyle 生效 | 传入 `disabled={true}`, `disabledStyle={{ opacity: 0.5 }}` | 根节点 opacity 为 0.5 | 自动化 |
| data 属性 | 传入 clickable/disabled 不同组合 | `data-clickable`、`data-disabled` 与 props 一致 | 自动化 |

---

## 五、人工测试点

| 测试项 | 测试步骤 | 预期结果 |
|--------|---------|---------|
| 悬停样式 | 传入 hoverStyle，鼠标悬停 | 悬停时应用 hoverStyle |
| 按下样式 | 传入 activeStyle，鼠标按下不松开 | 按下时应用 activeStyle |
| 默认视觉 | 不传 style | 背景 #fff、边框 #eaecf0、圆角 12px、padding 16px、阴影符合设计稿 |
| 可点击时光标 | clickable=true | 光标为 pointer |
| 禁用时光标 | disabled=true | 光标为 not-allowed |
| 焦点环 | Tab 聚焦可点击卡片 | 有可见焦点指示 |

---

## Bug 汇总

### 待修复的 Bug

| Bug ID | 描述 | 优先级 | 状态 | 发现时间 |
|--------|------|--------|------|---------|
| - | - | - | - | - |

### 已修复的 Bug

| Bug ID | 描述 | 优先级 | 修复时间 | 修复方案 |
|--------|------|--------|---------|---------|
| - | - | - | - | - |
