docs: Update RHI test refactoring status to v1.2

This commit is contained in:
2026-03-25 13:05:01 +08:00
parent 2ac32e1330
commit fbbf5dca55

View File

@@ -31,6 +31,9 @@
| `test_fence.cpp` | 10 | RHIFence | | `test_fence.cpp` | 10 | RHIFence |
| `test_sampler.cpp` | 4 | RHISampler | | `test_sampler.cpp` | 4 | RHISampler |
| `test_factory.cpp` | 5 | RHIFactory | | `test_factory.cpp` | 5 | RHIFactory |
| `test_pipeline_state.cpp` | 10 | RHIPipelineState |
| `test_render_pass.cpp` | 10 | RHIRenderPass |
| `test_framebuffer.cpp` | 8 | RHIFramebuffer |
#### D3D12 后端 (`tests/RHI/D3D12/unit/`) #### D3D12 后端 (`tests/RHI/D3D12/unit/`)
@@ -538,8 +541,8 @@ TEST_F(OpenGLTestFixture, CommandList_Dispatch) {
| **PipelineLayout** | ❌ 无测试 | **必须添加** | | **PipelineLayout** | ❌ 无测试 | **必须添加** |
| **DescriptorPool** | ❌ 无测试 | **必须添加** | | **DescriptorPool** | ❌ 无测试 | **必须添加** |
| **DescriptorSet** | ❌ 无测试 | **必须添加** | | **DescriptorSet** | ❌ 无测试 | **必须添加** |
| **RenderPass** | ❌ 无测试 | **必须添加** | | **RenderPass** | ✅ 已覆盖 | 10个测试已完成 |
| **Framebuffer** | ❌ 无测试 | **必须添加** | | **Framebuffer** | ✅ 已覆盖 | 8个测试已完成 |
| **Compute/Dispatch** | ❌ 无测试 | **必须添加** | | **Compute/Dispatch** | ❌ 无测试 | **必须添加** |
| Resource Barriers | ⚠️ 太弱 | 传递 nullptr | | Resource Barriers | ⚠️ 太弱 | 传递 nullptr |
@@ -583,8 +586,8 @@ TEST_F(OpenGLTestFixture, CommandList_Dispatch) {
|--------|------|--------|------|------| |--------|------|--------|------|------|
| 1 | Shader 测试重构 | 中 | 9个测试无效 | ✅ 已完成 | | 1 | Shader 测试重构 | 中 | 9个测试无效 | ✅ 已完成 |
| 2 | 添加 PipelineState 测试 | 大 | RHI 核心组件无测试 | ✅ 已完成 | | 2 | 添加 PipelineState 测试 | 大 | RHI 核心组件无测试 | ✅ 已完成 |
| 3 | 添加 RenderPass 测试 | 中 | 重要 API 未覆盖 | ⏳ 待完成 | | 3 | 添加 RenderPass 测试 | 中 | 重要 API 未覆盖 | ✅ 已完成 |
| 4 | 添加 Framebuffer 测试 | 中 | 重要 API 未覆盖 | ⏳ 待完成 | | 4 | 添加 Framebuffer 测试 | 中 | 重要 API 未覆盖 | ✅ 已完成 |
### P1 - 应该修复(提高覆盖率) ### P1 - 应该修复(提高覆盖率)
@@ -607,14 +610,14 @@ TEST_F(OpenGLTestFixture, CommandList_Dispatch) {
## 6. 新增测试文件清单 ## 6. 新增测试文件清单
| 文件路径 | 测试内容 | 优先级 | | 文件路径 | 测试内容 | 优先级 | 状态 |
|----------|----------|--------| |----------|----------|--------|------|
| `tests/RHI/unit/test_pipeline_state.cpp` | PipelineState 创建/配置/绑定 | P0 | | `tests/RHI/unit/test_pipeline_state.cpp` | PipelineState 创建/配置/绑定 | P0 | ✅ 已完成 |
| `tests/RHI/unit/test_render_pass.cpp` | RenderPass 创建/Begin/End | P0 | | `tests/RHI/unit/test_render_pass.cpp` | RenderPass 创建/Begin/End | P0 | ✅ 已完成 |
| `tests/RHI/unit/test_framebuffer.cpp` | Framebuffer 创建/绑定 | P0 | | `tests/RHI/unit/test_framebuffer.cpp` | Framebuffer 创建/绑定 | P0 | ✅ 已完成 |
| `tests/RHI/unit/test_descriptor.cpp` | DescriptorPool/Set 创建/更新 | P1 | | `tests/RHI/unit/test_descriptor.cpp` | DescriptorPool/Set 创建/更新 | P1 | ⏳ 待完成 |
| `tests/RHI/unit/test_compute.cpp` | Compute shader/Dispatch | P1 | | `tests/RHI/unit/test_compute.cpp` | Compute shader/Dispatch | P1 | ⏳ 待完成 |
| `tests/RHI/unit/test_pipeline_layout.cpp` | PipelineLayout 创建 | P2 | | `tests/RHI/unit/test_pipeline_layout.cpp` | PipelineLayout 创建 | P2 | ⏳ 待完成 |
--- ---
@@ -717,12 +720,25 @@ ctest -R "D3D12|OpenGL|RHITestFixture" -C Debug --output-on-failure
--- ---
**文档版本**: 1.1 **文档版本**: 1.2
**最后更新**: 2026-03-25 **最后更新**: 2026-03-25
**作者**: XCEngine Team **作者**: XCEngine Team
## 更新日志 ## 更新日志
### v1.2 (2026-03-25)
- P0-3: RenderPass 测试 ✅ 已完成
- 新增 `test_render_pass.cpp`10个测试
- 添加 `CreateRenderPass/CreateFramebuffer` 到 `RHIDevice` 接口
- 实现 D3D12 和 OpenGL 后端
- 修复 D3D12 depth stencil 资源创建(自动设置 `D3D12_RESOURCE_FLAG_ALLOW_DEPTH_STENCIL`
- 修复 D3D12 RTV/DSV 空指针检查
- P0-4: Framebuffer 测试 ✅ 已完成
- 新增 `test_framebuffer.cpp`8个测试
- 修复 `D3D12RenderPass` 的 `StoreAndResolve` 映射问题
- 测试结果D3D12 100测试 + OpenGL 100测试 = 200测试全部通过
- 集成测试8/8 全部通过
### v1.1 (2026-03-25) ### v1.1 (2026-03-25)
- P0-1: Shader 测试重构 ✅ 已完成 - P0-1: Shader 测试重构 ✅ 已完成
- 添加 `ShaderLanguage` 枚举 - 添加 `ShaderLanguage` 枚举