网页五子棋对战项目测试(selenium+Junit5)

目录

网页五子棋对战项目介绍

网页五子棋对战测试的思维导图​

网页五子棋对战的UI自动化测试

测试一:测试注册界面

测试二:测试登陆界面

测试三:测试游戏大厅界面

测试四:测试游戏房间界面以及观战房间界面

测试五:测试对局回放列表界面

测试六:测试对局回放详情界面


网页五子棋对战项目介绍

该项目为一个SSM项目,玩家之间可以进行实时的五子棋对战,拥有对战观战、对战回放、聊天、天梯分等功能

网页五子棋对战的思维导图

网页五子棋对战的UI自动化测试

对网页五子棋对战项目的功能、接口进行测试,利用测试的工具:selenium以及Java的单元测试工具Junit进行测试,下面为UI自动化测试的思维导图,列出该项目测试的测试用例:

测试结果:

首先创建一个Maven项目,引入selenium以及Junit5的依赖

XML 复制代码
<dependency>
	<groupId>org.seleniumhq.selenium</groupId>
	<artifactId>selenium-java</artifactId>
	<version>4.0.0</version>
</dependency>
<dependency>
	<groupId>org.junit.jupiter</groupId>
	<artifactId>junit-jupiter</artifactId>
	<version>5.8.2</version>
	<scope>test</scope>
</dependency>
<dependency>
	<groupId>org.junit.platform</groupId>
	<artifactId>junit-platform-suite</artifactId>
	<version>1.8.2</version>
	<scope>test</scope>
</dependency>

通过Suite将多个测试用例组合成一个测试套件

按照这个类的顺序执行测试代码

首先创建驱动类

测试一:测试注册界面

首先通过EdgeDriver以及URL打开注册界面

先检查一下页面元素是否加载

测试注册失败的流程:

1.账号为空,密码不为空

2.账号不为空,密码为空

账号注册失败页面会提示注册失败的弹窗

测试注册成功的流程:

账号注册成功后会跳转到登录界面

测试二:测试登陆界面

首先通过EdgeDriver以及URL打开登录界面

检查页面元素中的元素是否正确加载

测试登录失败的流程:

1.空的账号,非空的密码

2.非空的账号,空的密码

3.错误的账号,正确的密码

4.正确的账号,错误的密码

登录失败会跳出提示弹窗

测试用户未登录的时候的页面访问

用户未登陆的时候是不可访问这些页面的,拦截器会将用户的请求拦截,并跳转到登录界面

测试登录成功的流程:

用户登陆成功后会跳转到游戏大厅界面,检查是否存在游戏大厅界面中的元素

测试三:测试游戏大厅界面

创建三个不同的浏览器驱动,分别用来登录三个账号,两个账号用来匹配对手,进入到游戏房间界面,另一个账号作为观战用户来访问这个游戏房间,进行测试观战房间界面

检查页面中的元素是否正确加载

测试点击匹配按钮,当前的状态是否会发生改变,并与另一个对手匹配,进入到游戏房间界面

测试四:测试游戏房间界面以及观战房间界面

创建三个浏览器的驱动

检查页面中的元素是否正确加载

测试聊天框,测试用户发送一条消息是否可以显示

通过观战大厅中的链接跳转到正在对局的观战房间,测试观战房间界面是否正确显示

通过直接输入URL测试是否可以进入到观战房间界面

游戏房间中的用户1刷新页面,测试用户掉线的提示弹窗,退出游戏房间

当前测试后关闭用户2和用户3的浏览器驱动,剩下刷新页面退出游戏房间的用户1来测试回放界面

测试五:测试对局回放列表界面

通过EdgeDriver以及URL访问回放列表界面

检查页面中的元素是否正确加载,回到游戏大厅通过点击游戏大厅中的导航栏跳转到回放列表,测试回放列表页面元素是否正确加载

测试点击回放列表中的链接进入到回放房间

测试六:测试对局回放详情界面

创建EdgeDriver驱动

检查页面元素是否正确加载,并测试通过URL直接访问回放房间

测试结束后执行后置方法,关闭浏览器驱动

相关推荐
Lhappy嘻嘻8 小时前
Java IO|File 文件操作 + 字节流 / 字符流完整笔记 + 递归删除文件实战
java·笔记·php
伊玛目的门徒8 小时前
试用leetcode之典中典 二数之和问题
java·算法·leetcode
xy345310 小时前
wireshark 如何捕获信息
网络·测试工具·渗透测试·wireshark
懒鸟一枚11 小时前
深入理解 Linux 内存、Swap 交换分区与分页机制的关系
java·linux·数据库
我命由我1234512 小时前
执行 Gradle 指令报错,无法将“grep”项识别为 cmdlet、函数、脚本文件或可运行程序的名称
android·java·java-ee·android studio·android jetpack·android-studio·android runtime
考虑考虑13 小时前
Sentinel安装
java·后端·微服务
凤凰院凶涛QAQ14 小时前
《Java版数据结构 & 集合类剖析》栈与队列:“push/pop 是栈的灵魂,offer/poll 是队列的骨架——四组 API,两种人生”
java·开发语言·数据结构
掘金_答案15 小时前
上线那天,一个 ConcurrentHashMap 差点送走我的 AI 客服——3 天排查 JVM 血泪史
java·后端·架构
猿与禅15 小时前
CosId 分布式 ID 生成器完全教程:从架构原理到生产落地
java·shardingsphere·雪花算法·分布式id·高性能·cosid·号段模式