测试文档---智力冲刺

文章目录

  • 项目背景
  • 测试计划
    • UI测试
    • 接口测试
    • 手工测试
  • 测试总结

项目背景

项目描述:“智力冲刺”是一款网页小游戏,就像我们平时看到的网页游戏一样,前端页面负责展示游戏效果,后端服务器来实现游戏的逻辑。在我们的“智力冲刺”游戏中,玩家从浏览器打开游戏登录页面(登录或者注册),登录成功后进入游戏大厅,点击开始匹配按钮进入游戏房间进行对战,分出胜负后给与玩家反馈。总共设计了三个模块来进行功能的实现:

  1. 用户模块:用户注册(加盐算法)、用户登录(拦截器+session持久化)、用户天梯分数记录、用户比赛场次记录

  2. 匹配模块:根据用户的天梯分数实现匹配机制

  3. 对战模块:实现两个玩家在网页端进行五子棋对战的功能

测试计划

UI测试

  • 定位页面

在这里插入图片描述

//定位页面并截图
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
public class IndexTest extends CommonDriver{/*** 获取到这一个driver实例*/private static final FirefoxDriver driver= getDriver();@BeforeAllpublic static void getPage() throws InterruptedException, IOException {driver.get("http://localhost:8080/login.html");//需要对于首页进行截图//以文件的形式存储File srcFile=driver.getScreenshotAs(OutputType.FILE);//把截图的文件存放到指定的目录下面File destFile=new File("D:/java_gobang/src/test/Files/index.png");Thread.sleep(1000);FileUtils.copyFile(srcFile,destFile);//设置隐式等待时间:最长3秒driver.manage().timeouts().implicitlyWait(Duration.ofSeconds(3));}
}
  • 测试“登录”二字是否存在
 /*** 测试:"登录"是否存在*/@Test@Order(1)public void checkTittle(){WebElement webElement =driver.findElement(By.cssSelector("body > nav > a"));String text=webElement.getText();//断言:二者是否一致Assertions.assertEquals("登录",text);}
  • 测试“用户名”和“密码”二字是否存在
/*** 测试:“用户名”和“密码”是否存在*/@Test@Order(2)public void checkProblemListTittles(){//测试:"用户名"是否存在WebElement element1=driver.findElement(By.cssSelector("#tables > div > div > table > thead > tr > th:nth-child(1)"));String number=element1.getText();Assertions.assertEquals("用户名",number);//测试:"密码"是否存在WebElement element2=driver.findElement(By.cssSelector("#tables > div > div > table > thead > tr > th:nth-child(2)"));String tittle=element2.getText();Assertions.assertEquals("密码",tittle);}
  • 测试“注册“链接是否跳转
//获取到注册链接的css选择器WebElement TittleLinkElement = driver.findElement(By.cssSelector("#"+tittleLinkedCss));//获取注册链接的实际内容String tittleReal = TittleLinkElement.getText();Assertions.assertEquals(tittleExcept, tittleReal);//点击,看一下跳转的结果:TittleLinkElement.click();try {Thread.sleep(2000);} catch (InterruptedException e) {e.printStackTrace();}//截图:看是否成功跳转File srcFile=driver.getScreenshotAs(OutputType.FILE);//把截图的文件存放到指定的目录下面File destFile=new File("D:/java_gobang/src/test/Files/ProblemLinked"+numberExcept+".png");Thread.sleep(1000);FileUtils.copyFile(srcFile,destFile);
  • 测试“提交“链接是否跳转
//获取到提交链接的css选择器WebElement TittleLinkElement = driver.findElement(By.cssSelector("#"+tittleLinkedCss));//获取提交链接的实际内容String tittleReal = TittleLinkElement.getText();Assertions.assertEquals(tittleExcept, tittleReal);//点击,看一下跳转的结果:TittleLinkElement.click();try {Thread.sleep(2000);} catch (InterruptedException e) {e.printStackTrace();}//截图:看是否成功跳转File srcFile=driver.getScreenshotAs(OutputType.FILE);//把截图的文件存放到指定的目录下面File destFile=new File("D:/java_gobang/src/test/Files/ProblemLinked"+numberExcept+".png");Thread.sleep(1000);FileUtils.copyFile(srcFile,destFile);

接口测试

  • 测试登录接口是否正常

在这里插入图片描述

  • 测试注册接口是否正常

在这里插入图片描述

  • 测试得到用户信息接口是否正常

在这里插入图片描述

手工测试

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

在这里插入图片描述

测试总结

对登录模块、匹配模块、对战模块分别进行测试。保证了页面元素的完整性、正确性,信息的准确性,游戏逻辑的正确性。基本上排除了项目中的简单问题,可以让玩家获得较好的游戏体验。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/207971.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

YOLOv7 学习笔记

文章目录 前言一、YOLOv7贡献和改进二、YOLOv7核心概念三、YOLOv7架构改进总结 前言 在深度学习和计算机视觉领域,目标检测一直是一个极具挑战性和实用性的研究领域。特别是在实时目标检测方面,准确率和速度之间的平衡成为了关键考量因素。YOLO&#xf…

C语言精选——选择题Day40

第一题 1. int a[10] {2,3,5}, 请问a[3]及a[3]之后的数值是() A:不确定的数据 B:5 C:0 D:0xf f f f f f f f 答案及解析 C 数组的不完全初始化,会自动把没初始化的部分初始化为0; 第…

postman做接口自动化测试

接口是用来连接服务端和客户端,一般返回的数据都是json。 get和post请求的区别: 1. get请求比post请求安全 2. get请求参数有长度限制,post请求没有 3. get请求没有body,参数都是放在url里面,而post请求是放在body…

大华DSS S2-045 OGNL表达式注入漏洞复现

0x01 产品简介 大华DSS安防监控系统平台是一款集视频、报警、存储、管理于一体的综合安防解决方案。该平台支持多种接入方式,包括网络视频、模拟视频、数字视频、IP电话、对讲机等。此外,该平台还支持多种报警方式,包括移动侦测、区域入侵、越线报警、人员聚集等。 0x02 漏…

元宇宙:重塑游戏行业体验下一个前沿

游戏行业在其整个历史中经历了显著的转变,从超级马里奥的像素化冒险发展到Red Dead Redemption等游戏中迷人的开放世界体验。随着时间的推移,游戏不断突破数字领域所能达到的极限。然而,被称为元宇宙的突破性演变将彻底改变游戏行业&#xff…

PO模式在selenium自动化测试框架有什么好处

PO模式是在UI自动化测试过程当中使用非常频繁的一种设计模式,使用这种模式后,可以有效的提升代码的复用能力,并且让自动化测试代码维护起来更加方便。 PO模式的全称叫page object model(POM),有时候叫做 p…

网工内推 | 外企、合资公司急招网工,国内外旅游,健身年卡

01 深圳市耐施菲信息科技有限公司 招聘岗位:网络工程师 职责描述: 1、负责项目的计划、实施、过程管控、项目验收等工作; 2、负责大型项目设备实施、安装调试等售后维护工作; 3、分析、设计网络拓扑结构、配置H3C、华为等交换机…

SQL FOREIGN KEY 约束- 保障表之间关系完整性的关键规则

SQL FOREIGN KEY 约束 SQL FOREIGN KEY 约束用于防止破坏表之间关系的操作。FOREIGN KEY 是一张表中的字段(或字段集合),它引用另一张表中的主键。具有外键的表称为子表,具有主键的表称为被引用表或父表。 以下是两个表的例子&a…

dll动态链接库【C#】

1说明: 在C#中,dll是添加 【类库】生成的。 2添加C#的dll: (1)在VS中新建一个Windows应用程序项目,并命名为TransferDll。 (2)打开Windows窗体设计器,从工具箱中为窗体…

Unity 性能优化的手段【更新中】

目录 对象池 减少Draw Calls 批处理 合并网格 贴图集 LOD 基本原理 应用 优点 挑战 LightMap 基本概念 如何工作 优点 缺点 对象池 使用对象池:频繁地创建和销毁对象会导致性能下降和内存碎片化。对象池可以预先创建一些对象,然后在需要时…

【数据开发】Hive 多表join中的条件过滤与指定分区

1、条件过滤 left join 中 on 后面加条件 where 和 and 的区别 1、 on条件是在生成临时表时使用的条件,它不管and中的条件是否为真,都会保留左边表中的全部记录。2、where条件是在临时表生成好后,再对临时表进行过滤的条件。这时已经没有le…

Gemini:新一代AI产品的惊人功能和革命性影响

目录 1 前言2 视频分析与交互能力3 策划推理能力4 教育领域的应用能力5 科学领域的论文解读能力6 结语 1 前言 Google最新推出的AI产品Gemini引发了广泛关注,其30分钟的介绍和演示视频展示了令人惊艳的功能。Gemini以其惊人的艺术创作能力脱颖而出,通过…

TCP一对一聊天

客户端 import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension; import java.awt.Font; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.BufferedReader; import java.io.IOException; import java.io…

python-04(入门基础篇4——lists相关的部分语法)

python-04(入门基础篇4——lists相关的部分语法) 1. 前言1.1 python入门1.2 参考官网 2. 关于索引和切片3. 在列表追加元素3.1 支持拼接3.2 使用list.append() 方法在列表末尾添加新项 4. 列表是可变类型4.1 更改其中某元素内容4.2 使用切片更改列表大小…

cesium学习记录

有段时间自学了cesium,这里记录一下自学过程,希望在所需之时查阅~~ 1、cesium源码获取与Index页面介绍 官网网址 www.cesiumjs.org 源代码下载:Platform-Dowmloads 在index.html右击open with Live server开启本地服务 点击Documentation…

mysql 表分区类型

在MySQL中,有几种不同类型的分区可以用于对表进行分区。以下是MySQL中常用的分区类型: 1. RANGE分区:基于给定的列范围进行分区。例如,可以按照日期范围或数值范围对表进行分区。 CREATE TABLE sales (id INT NOT NULL AUTO_INC…

VMware安装OpenEuler(安装界面)

本文中使用的OpenEuler版本:22.03 LTS SP2 VMware:17.0.0 一、下载镜像 根据CPU和场景,按需下载 https://www.openeuler.org/zh/download/?versionopenEuler%2022.03%20LTS%20SP2 二、初始化VmWare 三、配置操作系统 四、安装操作系统 …

Nginx漏洞修复

1、漏洞 去掉在请求响应头中存在的信息 Server: nginx X-Content-Type-Options: nosniff X-Frame-Options: SAMEORIGIN X-XSS-Protection: 1;modeblock 修复方法 在Nginx的配置文件中的 server 标签内增加一下配置 server_tokens off; add_header X-Frame-Options SAMEORIGIN; …

Python绘制几种常见的时序分析图

时间序列数据是一种按照时间顺序排列的观测值集合,每个观测值对应于一个特定的时间点。这种数据在许多领域中都具有重要的应用价值,如金融、经济、气候科学等。通过分析时间序列数据,可以帮助我们掌握潜在的模式、发现趋势和季节性波动等重要…

【力扣】160.相交链表

160.相交链表 这个题目因为我之前在学指针的时候没学好,所以总感觉有一种畏难,我害怕。但是当真正的开始学习之后,发现现在的脑袋还是能用的,所以不要放弃,你可以的! 题解: 总的来说还是挺简…