ReadViewSDK/.planning/codebase/TESTING.md
2026-05-21 20:36:12 +08:00

2.4 KiB
Raw Blame History

测试说明

分析日期: 2026-05-21

测试框架与现状

Runner

  • XCTestiOS/Xcode 默认测试框架)
  • 当前仓库状态:未检测到任何 XCTest 测试文件或测试 Target未发现 import XCTest/XCTestCase,且示例工程 ReadViewDemoproject.pbxproj 仅声明应用 Target

断言库:

  • XCTest 内建断言(当前仓库未见使用案例)

测试文件组织

位置:

  • 未检测到 *Tests* 目录或 *.test.* / *.spec.* 文件(排除 ReadViewDemo/Pods/** 第三方依赖源码)。

命名:

  • 未检测到(无测试用例)

如何运行(在当前仓库结构下)

CocoaPods 依赖准备

仓库包含示例工程 ReadViewDemo,并已提交 Pods/Podfile.lock。如本地环境未同步,可在仓库根或示例工程目录运行:

pod install

(依赖入口:PodfileReadViewDemo/Podfile

运行/构建示例工程

  • Xcode 打开:ReadViewDemo/ReadViewDemo.xcworkspace
  • Scheme/Target 名称从工程文件可见为 ReadViewDemo(见 ReadViewDemo/ReadViewDemo.xcodeproj/project.pbxproj

运行测试

当前无测试可运行。 若未来添加 ReadViewDemoTests(或为 SDK 增加独立测试工程/SwiftPM 包),可用 Xcode 或 xcodebuild test 运行。

示例(需要存在测试 Scheme/Target 后才有效):

xcodebuild test \
  -workspace ReadViewDemo/ReadViewDemo.xcworkspace \
  -scheme ReadViewDemo \
  -destination 'platform=iOS Simulator,name=iPhone 15'

注:本环境中执行 xcodebuild -list 发生过 CoreSimulator/日志权限相关错误,属于运行环境限制;测试命令以项目结构为依据给出,实际执行以本机 Xcode/Simulator 可用性为准。

覆盖率Coverage

  • 未检测到覆盖率配置或现有覆盖率报告产物(例如 .xcresult 固化路径或 CI 输出)。
  • 若新增 XCTest Target可在 Xcode Scheme 的 Test 设置中启用 Coverage或通过 xcodebuild test 生成 .xcresult 后用 Xcode 查看。

Mocking / Fixtures

  • 未检测到统一 mocking 框架或 fixtures 目录(无测试用例)。

Evidence关键证据文件

  • ReadViewDemo/ReadViewDemo.xcodeproj/project.pbxproj
  • Podfile
  • ReadViewDemo/Podfile
  • ReadViewDemo/Podfile.lock
  • RDReaderView.podspec
  • ReadViewDemo/ReadViewDemo/ViewController.swift
  • Sources/RDReaderView/EPUBCore/RDEPUBParser.swift