1. 需求分析
1.1 用户价值
- 跨平台使用
- 快速检索并查找文件
- 不需要网络
1.2. 用户场景
- 功能与实际使用场景相关联
- 实际操作为命令行交互,无界面
- 与原everything桌面工具相比添加了跨平台的功能
1.3. 明确性
- 检索的内容是文件
- 检索的排除目录为 C:\Windows;C:\$Recycle.Bin
- 检索的包含目录为 C:\; D:\; E:\; F:\
- 最大检索返回结果数 everything.max_return = 40
- 文件监控的时间间隔 everything.interval = 60000
- 默认检索时depth深度的排序规则为降序排序 everything.order_by_desc = dalse
- 默认情况下关闭索引
1.4. 可测试性
- 查看命令行输出的测试结果
- 定位方式:辅助数据库中的内容信息
1.5 输出
- 按照文件类型或文件名称查询到的文件
2. 测试设计
2.1 测试分析
2.1.1 整体模块分析
- 整体模块分为:命令行交互、程序配置、核心功能
- 其中核心功能包括了:公共类、数据库操作相关、文件检索、拦截器、信息类模型、文件监视器、文件搜索
2.1.2 逻辑分析
- 全部服务的异常监控、服务重启
- 将 File 转换为 Thing 的状态转化合理
2.2 测试设计
基本设计方法:
- 等价类划分法
根据文件名称检索、根据文件类型检索 - 边界值法
检索并打印所有文件、直接search查询、search一个文件名、search一个文件类型 - 字符多样性
search不同字符查询 - 因果图
1: index
2: search
3:文件名称
4:文件类型
T: 查询到对应文件
F: 无法查询到对应文件