【JavaAPI搜索引擎】项目测试报告

JavaAPI搜索引擎测试报告

项目背景与项目介绍

Java官方API文档是我们在学习Java语言中不可或缺的权威资料。

相比于各种网站的Java资料,官方文档无论是语言表达还是组织方式都要更加全面和准确。

因为没有人比作者更加了解自己的作品,官方文档一定是最了解自己的作品的。

通过查阅Java文档,我们可以准确而全面地了解到自己需要了解的知识点。

但目前Java官方文档只能通过滚动条寻找关键字进行点击的方式来查询,自然就存在着查询低效的问题。

为了解决这一问题,我尝试创建了一个搜索引擎,JavaAPI搜索引擎项目是一个基于Java开发的全文搜索系统,旨在对大规模的文本数据进行高效索引和快速检索

项目功能

输入一个查询词,得到若干个搜索结果.每个搜索结果包含了标题,描述,展⽰URL和点击URL

自动化测试

搜索引擎自动化测试报告

单元测试

测试ansj分词器

编写测试方法:

java 复制代码
 //测试Ansj库能够正确完成分词操作
    @Test
    public void testAnsj(){
        //准备一个比较长的话来进行分词:
        String str = "Looking my eyes, tell me  why? baby! why";
        //把parse方法返回值Result转换成List:getTerms():
        //terms就表示一个分词结果
        List<Term> terms = ToAnalysis.parse(str).getTerms();
        for(Term term :terms){
            System.out.println(term.getName());
        }
    }

测试的结果如下所示:

测试能否获取到正确的URL

测试代码如下所示:

java 复制代码
//测试能否正确获取到当前文件路径
    //1. 指定一个加载文档的路径,也就是我们之前下载好文档的路径
    private static final String INPUT_PATH  = "D:/doc_searcher_index/docs/api";
    @Test
    public void testURL(){

        File file = new File("D:\\doc_searcher_index\\docs\\api\\java.base\\java\\util\\ArrayList.html");

        //先获取到一个固定线上文档的前缀
        String part1  = "https://docs.oracle.com/en/java/javase/11/docs/api";

        //下面去获取到后半部分:
        //substring方法中只有一个参数表示从这个下标开始截取到末尾
        String part2 = file.getAbsolutePath().substring(INPUT_PATH.length());

        /*
        System.out.println("固定的线上文档前缀part1: " +part1);
        System.out.println("本地文档路径的后半部分part2: "+part2);
        */
        String result = part1 + part2;
        System.out.println(result);
    }

测试结果如下所示:

测试能否正确解析文件中的正文

测试的具体代码如下所示:

java 复制代码
//测试是否可以正确解析文件中的正文部分
    @Test
    public void TestParseContent(){
        Parser parser = new Parser();
        File file = new File("D:\\doc_searcher_index\\docs\\api\\java.base\\java\\util\\ArrayList.html");
        String result = parser.parseContent(file);
        String result2 = parser.parseContentByRegex(file);

        System.out.println(result);
        System.out.println();
        System.out.println("=================================");
        System.out.println(result2);
    }

测试的结果如下所示:

测试计划

界面测试

测试1 页面布局是否合理美观,元素是否正确显示

模块

搜索模块

测试环境

Chrome 版本 137.0.7151.69(正式版本)(64 位)PC端 Windows系统

测试步骤

打开谷歌浏览器,输入URL

测试数据

URL:http://123.56.249.238:8080/index.html

期望结果

页面中的元素显示正确,没有乱码和错别字,整体布局合理美观

测试结果

页面元素显示正确,布局合理美观,测试结果如下图:

测试2 测试是否可以正常显示出搜索结果

模块

搜索模块

测试环境

Chrome 版本 137.0.7151.69(正式版本)(64 位)PC端 Windows系统

测试步骤

  1. 打开谷歌浏览器,输入URL
  2. 在搜索页面的输入框中
  3. 输入关键词Arrays,点击搜索按钮

测试数据

搜索:Arrays

期望结果

在搜索框中,输入Arrays,点击搜索按钮之后,能够正常显示出搜索结果

测试结果

搜索结果可以正常显示出来,测试结果如下图:

测试3 点击搜索结果后,测试搜索结果的页面内容是否正常显示

模块

搜索模块

测试环境

Chrome 版本 137.0.7151.69(正式版本)(64 位)PC端 Windows系统

测试步骤

  1. 打开谷歌浏览器,输入URL
  2. 在搜索页面的输入框中
  3. 输入关键词Arrays,点击搜索按钮
  4. 出现搜索结果之后,点击搜索结果
  5. 查看搜索结果的页面是否可以正常显示

测试数据

搜索:Arrays

期望结果

在搜索框中,输入Arrays,点击搜索按钮之后,能够正常显示出搜索结果,当点击Arrays的搜索结果之后,查看搜索结果页面是正常的

测试结果

搜索结果页面可以正常显示出来,测试结果如下图:

功能测试


搜索空格

模块

搜索模块

测试环境

Chrome 版本 137.0.7151.69(正式版本)(64 位)PC端 Windows系统

测试步骤

  1. 打开谷歌浏览器,输入URL
  2. 在搜索页面的输入框中
  3. 输入空格,点击搜索按钮
  4. 查看是否可以搜索成功

测试数据

搜索:空格

期望结果

搜索成功,但是显示结果为0个

测试结果

搜索成功,但是结果为0个,测试结果如下图:

搜索中文

模块

搜索模块

测试环境

Chrome 版本 137.0.7151.69(正式版本)(64 位)PC端 Windows系统

测试步骤

  1. 打开谷歌浏览器,输入URL
  2. 在搜索页面的输入框中
  3. 输入中文:哈哈,点击搜索按钮
  4. 查看是否可以搜索成功

测试数据

搜索:哈哈

期望结果

搜索成功,但是显示结果为0个

测试结果

搜索成功,但是结果为0个,测试结果如下图:

搜索数字

模块

搜索模块

测试环境

Chrome 版本 137.0.7151.69(正式版本)(64 位)PC端 Windows系统

测试步骤

  1. 打开谷歌浏览器,输入URL
  2. 在搜索页面的输入框中
  3. 输入数字:123,点击搜索按钮
  4. 查看是否可以搜索成功

测试数据

搜索:123

期望结果

搜索成功,但是显示结果为0个

测试结果

搜索成功,打开含有数字的搜索结果,测试结果如下图:

搜索内容后加空格

模块

搜索模块

测试环境

Chrome 版本 137.0.7151.69(正式版本)(64 位)PC端 Windows系统

测试步骤

  1. 打开谷歌浏览器,输入URL
  2. 在搜索页面的输入框中
  3. 输入数字:Arr ays,点击搜索按钮
  4. 查看是否可以搜索成功

测试数据

搜索:Arr ays

期望结果

搜索成功,打开含有关键词的结果

测试结果

搜索成功,打开含有数字的搜索结果,测试结果如下图:

搜索不存在的内容

模块

搜索模块

测试环境

Chrome 版本 137.0.7151.69(正式版本)(64 位)PC端 Windows系统

测试步骤

  1. 打开谷歌浏览器,输入URL
  2. 在搜索页面的输入框中
  3. 输入数字:&&&,点击搜索按钮
  4. 查看是否可以搜索成功

测试数据

搜索:&&&

期望结果

搜索成功,但是显示结果为0个

测试结果

搜索成功,但是结果为0,测试结果如下图:

搜索英文关键词

模块

搜索模块

测试环境

Chrome 版本 137.0.7151.69(正式版本)(64 位)PC端 Windows系统

测试步骤

  1. 打开谷歌浏览器,输入URL
  2. 在搜索页面的输入框中
  3. 输入数字:Arrays,点击搜索按钮
  4. 查看是否可以搜索成功

测试数据

搜索:Arrays

期望结果

搜索成功,打开含有关键词的搜索结果

测试结果

搜索成功,打开含有关键词搜索结果,测试结果如下图:

多次搜索相同的内容

模块

搜索模块

测试环境

Chrome 版本 137.0.7151.69(正式版本)(64 位)PC端 Windows系统

测试步骤

  1. 打开谷歌浏览器,输入URL
  2. 在搜索页面的输入框中
  3. 输入英文:Arrays,点击搜索按钮
  4. 查看是否可以搜索成功
  5. 重复输入Arrays,查看是否可以搜索成功

测试数据

搜索:Arrays

期望结果

搜索成功,打开含有关键词的搜索结果

测试结果

搜索成功,打开含有关键词搜索结果,测试结果如下图

搜索多个关键词中间加上空格

模块

搜索模块

测试环境

Chrome 版本 137.0.7151.69(正式版本)(64 位)PC端 Windows系统

测试步骤

  1. 打开谷歌浏览器,输入URL
  2. 在搜索页面的输入框中
  3. 输入英文:Arrays list,点击搜索按钮
  4. 查看是否可以搜索成功

测试数据

搜索:Arrays list

期望结果

搜索成功,打开含有关键词的搜索结果

测试结果

搜索成功,打开含有关键词搜索结果,测试结果如下图

搜索多个关键词中间加上逗号

模块

搜索模块

测试环境

Chrome 版本 137.0.7151.69(正式版本)(64 位)PC端 Windows系统

测试步骤

  1. 打开谷歌浏览器,输入URL
  2. 在搜索页面的输入框中
  3. 输入英文:Arrays , list,点击搜索按钮
  4. 查看是否可以搜索成功

测试数据

搜索:Arrays , list

期望结果

搜索成功,打开含有关键词的搜索结果

测试结果

搜索成功,打开含有关键词搜索结果,测试结果如下图

搜索英文+中文的内容

模块

搜索模块

测试环境

Chrome 版本 137.0.7151.69(正式版本)(64 位)PC端 Windows系统

测试步骤

  1. 打开谷歌浏览器,输入URL
  2. 在搜索页面的输入框中
  3. 输入英文:Arr哈哈,点击搜索按钮
  4. 查看是否可以搜索成功

测试数据

搜索:Arr哈哈

期望结果

搜索成功,打开含有关键词的搜索结果

测试结果

搜索成功,打开含有关键词搜索结果,测试结果如下图

搜索英文+数字的内容

模块

搜索模块

测试环境

Chrome 版本 137.0.7151.69(正式版本)(64 位)PC端 Windows系统

测试步骤

  1. 打开谷歌浏览器,输入URL
  2. 在搜索页面的输入框中
  3. 输入英文:Arr123,点击搜索按钮
  4. 查看是否可以搜索成功

测试数据

搜索:Arr123

期望结果

搜索成功,打开含有关键词的搜索结果

测试结果

搜索成功,打开含有关键词搜索结果,测试结果如下图

主页搜索模块

测试搜索按钮

模块

主页搜索模块

测试环境

Chrome 版本 137.0.7151.69(正式版本)(64 位)PC端 Windows系统

测试步骤

  1. 打开谷歌浏览器,输入URL
  2. 在搜索页面的输入框中
  3. 输入英文:Array, 点击搜索按钮
  4. 查看搜索按钮是否可以正常点击,功能是否正常

测试数据

搜索:Array

期望结果

搜索成功,打开含有关键词的搜索结果

测试结果

搜索成功,打开含有关键词搜索结果,测试结果如下图

点击搜索结果的标题,测试是否能够正常跳转到对应的页面

模块

主页搜索模块

测试环境

Chrome 版本 137.0.7151.69(正式版本)(64 位)PC端 Windows系统

测试步骤

  1. 打开谷歌浏览器,输入URL
  2. 在搜索页面的输入框中
  3. 输入英文:Arrays, 点击搜索按钮
  4. 查看是否搜索成功
  5. 点击搜索结果

测试数据

搜索:Array

期望结果

搜索成功,打开含有关键词的搜索结果

测试结果

搜索成功,打开含有关键词搜索结果,测试结果如下图

然后点击第一个搜索结果,测试是否可以跳转到对应的页面:

用户搜索的关键词是否高亮显示

模块

主页搜索模块

测试环境

Chrome 版本 137.0.7151.69(正式版本)(64 位)PC端 Windows系统

测试步骤

  1. 打开谷歌浏览器,输入URL
  2. 在搜索页面的输入框中
  3. 输入英文:Arrays, 点击搜索按钮
  4. 查看是否搜索成功
  5. 点击搜索结果

测试数据

搜索:Arrays

期望结果

搜索成功,打开含有关键词的搜索结果

测试结果

搜索成功,打开含有关键词搜索结果,测试结果如下图

易用性测试

测试用户输入的大写字母是否可以自动转换成小写字母

模块

主页搜索模块

测试环境

Chrome 版本 137.0.7151.69(正式版本)(64 位)PC端 Windows系统

测试步骤

  1. 打开谷歌浏览器,输入URL
  2. 在搜索页面的输入框中
  3. 输入英文:ARRAYS, 点击搜索按钮
  4. 查看是否会将大写字母转换成小写字母

测试数据

搜索:ARRAYS

期望结果

搜索成功,打开含有关键词的搜索结果

测试结果

搜索成功,打开含有关键词搜索结果,测试结果如下:

是否支持搜索结果的复制粘贴

模块

主页搜索模块

测试环境

Chrome 版本 137.0.7151.69(正式版本)(64 位)PC端 Windows系统

测试步骤

  1. 打开谷歌浏览器,输入URL
  2. 在搜索页面的输入框中
  3. 输入英文:list, 点击搜索按钮
  4. 查看搜索结果是否支持复制粘贴

测试数据

搜索:list

期望结果

搜索成功,打开含有关键词的搜索结果

测试结果

搜索成功,打开含有关键词搜索结果,测试结果如下:

搜索内容按照关键词在文档中的权重显示

模块

主页搜索模块

测试环境

Chrome 版本 137.0.7151.69(正式版本)(64 位)PC端 Windows系统

测试步骤

  1. 打开谷歌浏览器,输入URL
  2. 在搜索页面的输入框中
  3. 输入英文:list, 点击搜索按钮
  4. 查看搜索结果是否按照关键词在文档中的权重显示

测试数据

搜索:list

期望结果

搜索成功,打开含有关键词的搜索结果

测试结果

搜索成功,打开含有关键词搜索结果,测试结果是按照关键词在文档中的权重显示的:

兼容性测试

不同的设备

模块

主页搜索模块,主页展示模块

测试环境

1:电脑:MateBook 14 版本号23H2(64 位)PC端 Windows系统

2:手机:iQOO 10 MP_0.1(64 位)移动端 OriginOS 14.0

3:平板:OPPO Pad Air(64 位)平板端 ColorOS V12.1(Android 12)

测试步骤

  1. 打开电脑浏览器,输入URL,测试是否可以正常运行
  2. 打开手机浏览器,输入URL,测试是否可以正常运行
  3. 打开平板浏览器,输入URL,测试是否可以正常运行

测试数据

搜索:list

期望结果

搜索成功,打开含有关键词的搜索结果

测试结果

电脑的测试结果如下所示:

手机的测试结果如下所示:

平板的测试结果如下所示:

测试不同的浏览器

模块

搜索模块,主页展示模块

测试环境

Chrome 版本 137.0.7151.69(正式版本)(64 位)PC端 Windows系统

Firefox 139.0.4(20250609112858) PC端 Windows系统

Microsoft Edge版本 137.0.3296.68 (正式版本) (64 位) PC端 Windows系统

华为浏览器 11.0.8.301 | 内核版本: 92.0.4515.107 PC端 Windows系统

测试步骤

1:在Chorme浏览器中输入url:http://123.56.249.238:8080/index.html,然后在搜索框中输入关键字list,正确弹出页面.

2: 在Firefox 浏览器中输入url:http://123.56.249.238:8080/index.html,然后在搜索框中输入关键字list,正确弹出页面.

3:在Microsoft Edge浏览器中输入url:http://123.56.249.238:8080/index.html,然后在搜索框中输入关键字list,正确弹出页面.

4:在华为浏览器中输入url:

http://123.56.249.238:8080/index.html,然后在搜索框中输入关键字list,正确弹出页面.

测试数据

url : http://localhost:8080/index.html

关键字 :list

期望结果

在各个浏览器中输入url后,输入关键字,正确弹出内容页面

测试结果

测试成功,在各个不同的浏览器中都可以正常打开运行,测试结果如下:

谷歌浏览器测试结果:

火狐浏览器测试结果:

Edge浏览器测试结果:

华为浏览器的测试结果:

相关推荐
代码搬运媛1 天前
ES Modules 与 CommonJS 的核心区别详解
大数据·elasticsearch·搜索引擎
数据智能老司机1 天前
Elastic 向量搜索实战指南——Elastic中的模型管理与向量相关考量
elasticsearch·搜索引擎·llm
Elastic 中国社区官方博客1 天前
使用 OpenTelemetry 和 Elastic 简化公共部门的可观察性
大数据·elasticsearch·搜索引擎·全文检索·可用性测试·opentelemetry
G皮T2 天前
【Elasticsearch】映射:详解 _source & store 字段
大数据·elasticsearch·搜索引擎·映射·store·mappings·_source
vlln2 天前
【论文解读】Search-R1:通过 RL 让 LLM 学会使用搜索引擎
人工智能·深度学习·神经网络·搜索引擎·transformer
G皮T3 天前
【Elasticsearch】映射:fielddata 详解
大数据·elasticsearch·搜索引擎·映射·搜索·mappings·fielddata
ID_云泽3 天前
Elasticsearch中多索引数据合并与Nested嵌套类型操作全解析
elasticsearch·搜索引擎·全文检索
G皮T3 天前
【Elasticsearch】一个图书馆的案例解释 Elasticsearch
大数据·elasticsearch·搜索引擎·全文检索·kibana·索引·index
G皮T3 天前
【Elasticsearch】映射:Join 类型、Flattened 类型、多表关联设计
大数据·elasticsearch·搜索引擎·nested·join·多表关联·flattened