搜索引擎项目测试

模块划分:

  • 预处理模块:把下载好的html文档进行初步处理,简单分析页面结构,去掉其中的html标签,将其保存在raw_data文本文件中。
  • 索引模块:根据预处理得到的结果,构建正排索引和倒排索引。
  • 搜索模块:完成从输入查询词到输出最终结果的搜索过程。
  • 展示模块:页面中展示搜索框,用户能够输入数据并且完成展示搜索结果。

搜索结果展示

在这里插入图片描述

测试

1.Parser类

功能:
遍历本地文件,将所有的api html文档进行处理,得到一个单一的文件,使用行文本的方式来进行组织。每一行对应到一个html文档,包含三列(文档标题,文档url,文档的正文)。
测试用例:

  • 是否遍历到本地文件(F:\docs\api)下的每一个以html结尾的文档
  • 文档标题是否与html文件名相同
  • 每一行是否对应到一个html文件,是否包含三列,是否已 '\3’分隔开
  • 文档url是否正确,是否能够跳转线上文档页面
  • 解析到的正文内容是否还包含 ‘\n’ 和html标签
  • 解析的行文本文件是都保存在raw_data.txt中
2.Index类

功能:
根据raw_data.txt中的内容进行分词,构建正排索引和倒排索引。构建一个字符串数组,将行文本文件中的内容按照 ‘\3’ 进行划分,分为三个部分,分别对应到文档标题,文档url和文档正文。借助分词工具将标题和正文进行分词,将标题和正文分词后的结果以hashmap的形式存放,key为分词结果中的一个词,value就是weight构成的ArrayList。
测试用例:

  • 是否按照 '\3’进行划分,是否划分为三个部分
  • 三个部分是否依次按照标题,url,文档正文存放
  • 标题和正文中词出现的次数统计是否正确
  • weight计算是否正确
3.Searcher类

功能:
对查询词进行分词,根据分词结果,依次查找倒排索引,得到对应的docId。按照搜索词和文档之间的相关性进行降序排序,此处的相关性即搜索词的权重。从正文中截取一部分作为描述。
测试用例:

  • 是否按照降序排序
  • 是否有展示url,展示url与点击url是否一致
  • 摘要信息显示是否正常
  • 搜索词与标题相似度是否最高

对于搜索词设计测试用例:
搜索词有效等价类为英文查询词,无效等价类为非英文查询词,要考虑查询词为中文,字符等情况。

4.html页面展示

功能:
能够显示搜索框,输入搜索词,展示搜索结果,点击对应的结果,跳转到相应页面。
测试用例:

  • 页面展示是否正常,是否简洁美观
  • 是否能够正常输入搜索词
  • 输入正确的搜索词,显示正常的搜索结果
  • 按快捷键enter是否能显示结果
  • 不输入任何搜索词是否有结果

测试结果

搜索界面简洁美观,无乱码。
在这里插入图片描述
搜索结果明确,展示url显示,描述信息正确,且排序最靠前的与搜索词最匹配。
在这里插入图片描述
点击标题,正确跳转达到对应页面
在这里插入图片描述
输入中文或者符号,无查询内容
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值