【项目日记(五)】搜索引擎-测试报告

❣博主主页: 33的博客
▶️文章专栏分类:项目日记◀️
🚚我的代码仓库: 33的代码仓库🚚
🫵🫵🫵关注我带你了解更多项目内容

在这里插入图片描述

1.项目背景

搜索引擎主要采用了前后端分离的方式来实现,把整个项目分成前端模块,索引模块,搜索模块,同时将其布置到云服务器中。该搜索引擎只是基于java API的站内搜索,根据用户输入的关键词按权重检索出对应的结果。

2.测试环境

软件:Google Chrome
开发工具:IDEA
测试工具:自动化测试工具Selenium
操作系统:Windows 10家庭中文版
浏览器版本:Google Chrome126.0.6478.115(正式版本) (64 位)

3.测试计划

测试用例:
在这里插入图片描述

3.1功能测试

执行过程部分截图:
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.2自动化测试

package docsearcher;

import org.junit.jupiter.api.Order;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.params.ParameterizedTest;
import org.openqa.selenium.By;

import static java.lang.Thread.sleep;

public class docSearcher extends InitAndEnd{
    @Order(1)
    @Test
    public void search() throws InterruptedException {
        webDriver.get("http://119.91.235.248:8080/index.html");
        sleep(3000);
        webDriver.findElement(By.cssSelector("body > div > div.header > input[type=text]")).sendKeys("array");
        sleep(3000);
        webDriver.findElement(By.cssSelector("#search-btn")).click();
        sleep(3000);
        String s=webDriver.findElement(By.cssSelector("body > div > div.result > div.count")).getText();
        StringBuilder ret=new StringBuilder();
        for (char c:s.toCharArray()){
            if(Character.isDigit(c)){
                ret.append(c);
            }
        }
        if(ret.equals("0")){
            System.out.println("测试失败");
        }else {
            System.out.println("测试通过");
        }
    }
    @Order(2)
    @Test
    public void search2() throws InterruptedException {
        webDriver.get("http://119.91.235.248:8080/index.html");
        sleep(3000);
        webDriver.findElement(By.cssSelector("body > div > div.header > input[type=text]")).clear();
        webDriver.findElement(By.cssSelector("body > div > div.header > input[type=text]")).sendKeys(" ");
        sleep(3000);
        webDriver.findElement(By.cssSelector("#search-btn")).click();
        sleep(3000);
        String s=webDriver.findElement(By.cssSelector("body > div > div.result > div.count")).getText();
        StringBuilder ret=new StringBuilder();
        for (char c:s.toCharArray()){
            if(Character.isDigit(c)){
                ret.append(c);
            }
        }
        System.out.println(ret);
        String SS=ret.toString();
        if(SS.equals("0")){
            System.out.println("测试通过");
        }
    }
}

亮点:
使用Selenium与Junit结合来测试:
①使用了JUnit5中提供的注解:避免生成过多的对象,造成资源和时间的浪费,提高了自动化的执行
效率。
②只创建一次驱动对象,避免每 个用例重复创建驱动对象造成时间和资源的浪费。
③使用参数化:保持用例的简洁,提高代码的可读性
④使用测试套件:降低了测试人员的工作量,通过套件一次执行所有要运行的测试用例。
⑤使用了等待:提高了自动化的运行效率,提高了自动化的稳定性,减小误报的可能性。
⑥使用了屏幕截图:方便问题的追溯以及问题的解决

  • 16
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
项目开发完后进行流程测试的日记如下: 日期:xxxx年xx月xx日 测试人员:C知道 测试内容:项目流程测试 测试环境:xxxx环境 测试步骤: 1. 打开项目主界面; 2. 进行用户注册操作,并验证注册功能是否正常; 3. 登录系统,验证登录功能是否正常; 4. 测试系统各个模块的功能,包括但不限于添加、编辑、删除等操作; 5. 测试系统的数据处理逻辑,确保数据的正确性和完整性; 6. 进行异常情况的测试,例如输入非法字符或超出限制范围的数据; 7. 测试系统的性能和稳定性,模拟并行用户操作,检查系统是否能够正常响应; 8. 检查系统的错误处理机制,确保错误信息能够正确提示用户; 9. 测试系统的兼容性,包括不同浏览器、不同操作系统等; 10. 测试系统的安全性,确保用户数据不受到未授权访问。 测试结果: - 注册功能正常,用户可以成功注册账号。 - 登录功能正常,用户可以成功登录系统。 - 各个模块功能正常,添加、编辑、删除等操作均可正常执行。 - 数据处理逻辑正确,数据保存和读取无误。 - 系统能够正确处理异常情况,对非法输入进行了限制和提示。 - 系统性能稳定,能够同时处理多个用户请求。 - 错误处理机制完善,错误信息清晰明确。 - 系统兼容性良好,可以在各种浏览器和操作系统下正常运行。 - 用户数据安全,未发现未授权访问漏洞。 存在问题: - 部分界面布局不够美观,需要进一步优化。 - 部分功能操作流程不够直观,需要优化用户体验。 改进计划: - 对界面进行美化,提升用户体验。 - 优化功能操作流程,简化用户操作步骤。 备注:测试过程中未发现系统崩溃或严重错误,项目流程测试顺利完成。 测试人员签名:C知道
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值