API搜索引擎系统测试报告

API搜索引擎系统测试报告 一、项目概述本项目是一个基于Java和Spring Boot实现的文档搜索引擎专门用于对JDK 8 API文档进行全文检索。系统通过递归遍历指定目录下的HTML文件解析文档内容并去除HTML标签构建正排索引存储文档ID、标题、URL、内容和倒排索引建立词语到文档的映射关系及权重。搜索时对用户输入的查询词进行分词和停用词过滤根据词语在文档标题和正文中出现的频率计算权重标题权重×10 正文权重×1合并相同文档的权重后按降序排序最终生成包含关键词高亮摘要的搜索结果并通过RESTful API返回JSON格式数据。二、测试目的本次测试旨在验证文档搜索引擎的功能完整性、性能表现、安全性和系统稳定性确保其能够满足实际使用需求。三、测试环境操作系统Ubuntu 22.04虚拟机开发语言Java 17运行方式JAR包部署运行浏览器Microsoft Edge 146.0.3856.62 (正式版本) (64 位)测试工具Xshell、VMware、fiddler、Postman系统访问地址http://192.168.5.128:8080//index.html四、功能模块分析本项目由四个核心模块构成索引构建模块Parse类负责递归遍历JDK API文档目录下的所有HTML文件通过多线程并发解析文档内容去除HTML标签后提取标题、URL和正文并调用Index模块构建索引索引管理模块Index类在内存中维护正排索引ArrayList存储文档ID、标题、URL、内容和倒排索引HashMap存储词语到文档权重列表的映射并提供索引的磁盘保存序列化到forward.txt/inverted.txt和加载功能搜索核心模块DocSearcher类接收用户查询词后进行分词和停用词过滤根据倒排索引检索相关文档通过优先队列实现多路归并合并相同文档的权重标题权重×10正文权重×1按权重降序排序后在正文中定位关键词位置生成包含上下文和高亮标签i的摘要最终包装为Result对象Web接口模块DocSearcherController类基于Spring Boot提供RESTful API通过/searcher接口接收query参数调用搜索核心后将结果列表序列化为JSON格式返回。各模块之间通过清晰的数据模型DocInfo、Weight、Result进行解耦和交互形成了完整的搜索引擎架构。五、测试用例设计5.1测试用例设计思维导图5.2具体测试用例5.2.1 关键词测试用例5.2.2 权重测试用例5.2.3 摘要测试用例5.2.4 web接口测试用例5.2.5 性能测试用例5.2.6 异常测试用例5.2.7 边界条件与集成测试用例六、测试执行过程6.1测试准备打开VMware启动Ubuntu虚拟机打开xshell进入Linux进入javadoc运行jar包访问http://192.168.5.128:8080//index.html6.2开始测试6.2.1 关键词测试1测试结果2结果截图图 1 TC-SEG-046.2.2 权重测试6.2.3 摘要测试6.2.4 web接口测试1测试结果2结果截图图 2 TC-API-02图 3 TC-API-056.2.5 性能测试6.2.6 异常测试6.2.7 边界条件与集成测试6.3 bug记录6.3.1关键词修改建议可能是没有停用词文件或者停用词文件不完整导致建议增加停用词或上传停用词文件6.3.2web接口修改建议建议查看索引中是否包含中文文档或分词器是否可以对中文进行分词6.3.3易用性需点击“搜索”按钮才能进行搜索修改建议建议添加“回车”效果用户输入完查找词后按回车也可以进入搜索阶段七、测试总结经过全面的黑盒测试该文档搜索引擎整体功能完善性能良好达到预期目标。核心功能如分词检索、权重排序、摘要生成、Web接口等均正常工作能够满足对JDK API文档的搜索需求发现的少数问题已得到解决或已有明确的处理方案。