46 lines
1.4 KiB
Markdown
46 lines
1.4 KiB
Markdown
# Vulkan 测试专项规范
|
||
|
||
本文档是 [tests/TEST_SPEC.md](../TEST_SPEC.md) 在 Vulkan 后端上的补充入口,描述当前已经落地的 Vulkan 专项测试树。
|
||
|
||
## 1. 当前结构
|
||
|
||
```text
|
||
tests/RHI/Vulkan/
|
||
|- CMakeLists.txt
|
||
|- TEST_SPEC.md
|
||
\- unit/
|
||
|- CMakeLists.txt
|
||
\- test_backend_specific.cpp
|
||
```
|
||
|
||
## 2. 当前目标
|
||
|
||
| 类别 | target |
|
||
| --- | --- |
|
||
| Vulkan 后端单元测试 | `rhi_vulkan_tests` |
|
||
|
||
## 3. 当前覆盖
|
||
|
||
`rhi_vulkan_tests` 当前覆盖 Vulkan 后端专属语义,包括:
|
||
|
||
- RenderPass / Framebuffer clear 到真实 Vulkan 纹理后的像素结果验证
|
||
- `CopyResource` 纹理复制后的像素回读验证
|
||
- SPIR-V / GLSL 两条 shader 创建路径
|
||
- 基于 GLSL 的 graphics pipeline 创建
|
||
- UAV 视图创建与 compute dispatch 写纹理链路
|
||
|
||
这些测试允许直接依赖 Vulkan 具体类型、原生句柄和 Vulkan API;这类断言不应再回流到 `tests/RHI/unit/`。
|
||
|
||
## 4. 分层约束
|
||
|
||
- `tests/RHI/unit/` 继续只承载 RHI 抽象层统一语义测试。
|
||
- `tests/RHI/Vulkan/unit/` 承载 Vulkan 专属断言、原生对象检查和需要直接调用 Vulkan API 的测试。
|
||
- 如果后续增加 Vulkan 后端集成测试,应在 `tests/RHI/Vulkan/integration/` 下单独建树,而不是继续堆进 generic abstraction suite。
|
||
|
||
## 5. 推荐执行方式
|
||
|
||
```bash
|
||
cmake --build build --config Debug --target rhi_vulkan_tests
|
||
build\tests\RHI\Vulkan\unit\Debug\rhi_vulkan_tests.exe --gtest_brief=1
|
||
```
|