前端测试计划

具体测试项如下:

  • 注册测试
  • 登录测试
  • 忘记密码测试
  • 一次登录后自动登录测试
  • 退出登录测试
  • 编辑资料测试
  • 查看好友测试
  • 搜索好友测试
  • 添加好友测试
  • 获取当前正在游戏的房间测试
  • 创建房间测试
  • 加入房间测试
  • 锁定房间测试
  • 选择座位测试
  • 房间设置测试
  • 游戏流程测试

后端测试计划

APP中的测试主要分为两大部分,一个是对接口的测试,一个是对游戏流程的测试。

对接口的测试主要分为两部分,一类是HTTP接口的测试,这类接口负责的是游戏之外的各种功能,可以看成是静态的,相对而言比较好测试;而另一类接口则是WebSocket接口,这类接口都是在游戏过程中用到的,可以看成是动态的,情况也比较复杂,测试相对较困难。

而对游戏流程的测试只能从创建房间开始到游戏结束为止一点点的去测试,对流程中每一步骤的各种情况都要尽量覆盖到。

由于人力物力还有时间的限制,我们只能通过几台手机去一点点的尝试,一步一步的按照游戏流程往前推进,不断的进行测试与程序修复。

测试过程及结果

测试过程分两部分:一台机器测试和多台机器测试。

一台机器可以完成的测试有:注册、登录、忘记密码、自动登录、退出登录、编辑资料、查看好友、搜索并添加好友、获取当前正在游戏的房间、创建房间等。

需要多台机器完成的测试有:加入房间、锁定房间、选择座位、房间设置、游戏流程。

我们对前者进行了一一测试,发现了两个问题,在下面给出bug记录及解决过程。

对后者进行了多台机器多种角色测试。

前端Bug记录

  • 无法进入搜索好友界面。解决方案:导入未导入的包,并更换文件,成功修复,但错误原因尚不明确。
  • 若一名玩家创建了房间但网络出现故障或强制退出APP等情况,这个房间就会成为死房间,无法再加入。解决方案:当一名玩家重新登录时,检测是否存在他之前创建的房间,若有,解散该房间,释放该房间的玩家。
  • 锁定房间时,经常会出现服务器响应慢的情况。解决方案:将服务器5s响应一次改为1s响应一次。
  • 进入游戏流程时,经常会出现有玩家“离奇”死亡。解决方案:锁定房间时没有初始化好玩家生存表的值。
  • 玩家选择好座位后重新选择时,会同时占据两个座位。解决方案:重新选择时清除原座位信息。
  • 游戏过程中不该使用技能的状态不能下一步。解决方案:对下一步做限制,若不该使用技能,则可以直接下一步。

后端Bug记录

(1) 通信数据类型错误,为了统一,所有的通信数据都是转换为字符串之后再转为json进行传递的,前端和后端在进行通信时都会忘记将某些非字符串数据转为字符串,或者处理时忘了将字符串转为其他类型进行处理。

(2) 变量未初始化使用。因为在服务器中保存着一些游戏中经常会用到的一些数据,而这些数据有可能没有初始化就使用。

(3) 多次登录未处理。

(4) 房间关闭和退出后未将之前的数据删掉导致错误。

(5) 各种下标溢出错误,比如投票时判断平票时需要用到两个结果,可是非平票情况下只有一个结果,就会出现下标溢出错误。

场景测试

APP为所有用户提供了统一的功能,用户的使用场景包括如下几点:

  • 想玩狼人杀但没有人会或者没有人想扮演法官的玩家
  • 想玩狼人杀但没有牌的玩家
  • 想玩狼人杀且想让狼人在夜间交流更方便的玩家
  • 想玩狼人杀但经常忘记场上形势的玩家
  • 想玩狼人但找不到人来玩的玩家
  • 下载下来一个人看看APP功能的玩家
  • 下载下来只是看看的吃瓜群众

综合上述用户场景,我们需要进行1人~多人、不同种角色组合的游戏测试,以满足用户的需求。

测试矩阵

游戏人数 测试平台 测试机型 狼人人数 预言家 女巫 守卫 丘比特 游戏局数
1人 IOS IPhone6s 1人 是 是 是 是 1局
…… Android IPhone5 2人 否 否 否 否 2局
8人 IPhone4s 3人 3局
小米note 4人
乐视1s
红米

服务器:Windows系统, 1核1G内存,Django框架,MySQL数据库

性能测试与压力测试

设备所限,未能进行高强度的压力测试。至于性能方面,因为只有测试的几台设备,所以速度还是很快的。

出口条件

(1) 新增功能都已实现。

(2) 软件能够正常运行。

(3) 服务器能够稳定运行。

(4)测试矩阵中的典型情况得到测试并无bug。

Beta阶段测试报告的更多相关文章

  1. [Beta阶段]测试报告

    [Beta阶段]测试报告 博客目录 测试方法及过程 在正式发布前,为检验后端各接口功能的正确性,后端服务器对压力的耐受程度,以及前端各页面.功能的运行情况,我们对我们的服务器及小程序进行了多种测试.除 ...

  2. [BUAA软工]Beta阶段测试报告

    Beta阶段测试报告 Bug发现与报告 BUG 出现原因 解决方案 将shell加上编辑器UI以后,两边显示的文件不同步 两边的根目录不一致 修改编辑器获取根目录的函数,使其与shell的/home目 ...

  3. [敏杰开发]Beta阶段测试报告

    [敏杰开发]Beta阶段测试报告 这是一篇软工课程博客 项目 内容 课程:北航-2020-春-软件工程 博客园班级博客 作业要求 Beta阶段测试报告 我们在这个课程的目标是 测试项目 这个作业在哪个 ...

  4. 【BUAA软工】Beta阶段测试报告

    项目 内容 班级:北航2020春软件工程 博客园班级博客 作业:Beta阶段测试报告 测试报告 发现的bug Beta阶段的bug [已解决]CPP项目无法进行调试 [已解决] 注册界面注册后不能够自 ...

  5. [敏捷软工团队博客]Beta阶段测试报告

    项目 内容 2020春季计算机学院软件工程(罗杰 任健) 博客园班级博客 作业要求 Beta阶段测试报告 我们在这个课程的目标是 在团队合作中锻炼自己 这个作业在哪个具体方面帮助我们实现目标 对Bet ...

  6. [软工顶级理解组] Beta阶段测试报告

    在测试过程中发现了多少Bug? 测试阶段发现并已修复的bug: 尚且存在,但是难以解决或者不影响使用的bug: 计算重修课程的时候,如果重修课程的课程号和原课程号不同,则GPA计算会出现误差.但我们无 ...

  7. 北航学堂Android客户端Beta阶段测试报告

    我们已经知道的bug如下: 1.在没有网络的情况下,我们的程序会直接崩溃,没有弹出提醒网络异常的错误,这是个比较严重的bug,我们在6号7号 考试结束之后会进行修改: 有待进行的优化: 1.UI界面的 ...

  8. 公客网beta阶段项目展示

    课程评价网站--公客网 为大学生选课排忧解难 公正客观的评课网站 为大学生提供发表自己看法的平台 为每一门课程打出公正的评分 beta阶段的新功能 beta阶段发布说明 评价的增删改 对课程发表评价 ...

  9. 老师说的都对 - Beta阶段博客作业

    第二小组Beta冲刺阶段博客目录 github 地址:PCES-Github 一.Scrum Meeting 1.第十周会议记录 2.第十一周会议记录 3.第十二周会议记录 二.测试报告 Beta阶段 ...

随机推荐

  1. jQuery为开发插件提拱了两个方法:jQuery.fn.extend(); jQuery.extend();

    jQuery为开发插件提拱了两个方法,分别是: jQuery.fn.extend(); jQuery.extend(); jQuery.fn jQuery.fn = jQuery.prototype ...

  2. jquery的选择器

    一.基本选择器 1.$("#id") id选择器,返回单个元素 2.$(".class") class选择器,返回集合元素 3.$("element& ...

  3. 利用BI搭建零售业数据信息平台

    某百货公司是全市规模最大的以零售为主.多元化经营的股份制商业企业.拥有员工数千人,经营国内外品牌2300余种,年商品销售额逾10亿人元. 销售体量如此庞大的企业近几年在IT建设上出现了问题,集团内部的 ...

  4. html5页面结构

    我是html5初学者,最近闲来无事,和各位一起学些下html5. 开发环境 jdk1.6,tomcat6,开发工具eclipse. 新建一个web工程,创建一个index.jsp页面.页面代码如下. ...

  5. 小tips合集

    No. 1 同一个文本文件里的行结束符如果不一致,比如有些行结束符是0D0A-Windows风格的,而有些行又是UNIX风格的0A,在这种混杂情况下,VIM将非UNIX风格的显示为^M,但如果都是0D ...

  6. 企业号微信支付 公众号支付 H5调起支付API示例代码 JSSDK C# .NET

    先看效果 1.本文演示的是微信[企业号]的H5页面微信支付 2.本项目基于开源微信框架WeiXinMPSDK开发:https://github.com/JeffreySu/WeiXinMPSDK 感谢 ...

  7. Java多线程中的死锁问题

    Java程序基本都要涉及到多线程,而在多线程环境中不可避免的要遇到线程死锁的问题.Java不像数据库那么能够检测到死锁,然后进行处理,Java中的死锁问题,只能通过程序员自己写代码时避免引入死锁的可能 ...

  8. Oracle学习笔记三 SQL命令

    SQL简介 SQL 支持下列类别的命令: 1.数据定义语言(DDL) 2.数据操纵语言(DML) 3.事务控制语言(TCL) 4.数据控制语言(DCL)  

  9. 基于jquery实现图片拖动和曲线拖放

    功能:图片的拖动.曲线的拖放和绘制 一. 准备工作 1. 点击此下载相关的文档 二. 在浏览器中运行 dragDrop.html 文件,即可看到效果 三. 效果图

  10. sql 优化

    1.选择最有效率的表名顺序(只在基于规则的优化器中有效): oracle的解析器按照从右到左的顺序处理 from 子句中的表名,from子句中写在最后的表(基础表driving table)将被最先处 ...