PhyLab Beta 测试报告

测试中发现的bug

Beta阶段新Bug

Bug 可能原因
markdown生成的报告可能溢出显示框 表格过长,显示框未设置横向溢出
移动端实验区无法评论 移动端社区未接入导致无法评论
移动端社区不能登陆 社区密码并不是用户设置的密码
在社区设置头像后无法在用户界面上传头像
社区的头像在用户界面不会显示
社区头像路径与用户界面头像路径冲突
移动端用户注册收不到邮件 社区注册接口移动端与pc端不同
设计性实验页面移动端隐藏答案有延迟 移动端浏览器点击事件与pc端不同

Alpha未发现Bug

Bug 可能原因
控制台测试/实验界面生成报告错误信息可能无法返回 返回的信息中包含了非utf8编码字符,导致laravel抛出异常

遗留Bug

Bug 可能原因
实验区域发布评论,如果需要验证码,无法填写 评论频率过快,实验区未接入验证码系统
工具页面,手机端画面崩坏 使用了手机上无法显示的前端库
手机社区资料修改没有保存按钮 排版问题
某些浏览器(如Edge)下个人信息无法修改 未知,可能与兼容性有关
控制台编辑器有时需要点击才能显示内容 与编辑器模块刷新有关
用户在未进行邮箱验证情况下仍可能登入社区,但此时社区功能并不能完全使用 未知,可能与社区模块有关
逐差法小工具输入框有误 对逐差法理解错误
注册界面的年级信息没有关联 数据库设置有误
实验和社区界登出不同步 登出调用失败

针对新功能的场景测试

典型用户个人信息

Alpha测试报告

场景测试1:Markdown报告生成&移动端体验

  1. 典型用户:小王
  2. 用户的需求/迫切需要解决的问题:
  • 做实验的时候想用实验网站生成一下实验数据,看看自己的实验结果是否靠谱
  • 原有网站无法在移动端生成和查看报告。
  • 生成latex报告太慢了,但小王只想看看其中某几个数对不对。
  1. 场景描述:
  • 小王在做实验的过程中记录了大量的数据,但对实验的过程很没底,想知道数据是否正确。
  • 小王打开了物理实验网站,顺利登陆并进入实验报告区
  • 小王正确选择了自己正在做的实验,并输入了所有的数据
  • 小王点击生成实验报告,选择了“Markdown”报告生成,报告在几秒内生成完成并提示小王“生成成功”
  • 小王点击查看实验报告按钮,浏览器新打开了一个页面显示了完整的数据报告。

场景测试2:设计性实验复习

  1. 典型用户:小李
  2. 用户的需求/迫切需要解决的问题:
  • 快进入设计性实验考试了,想查找往届的资料复习。
  • 复习pdf太长了,且对着pdf复习效果一般。
  1. 场景描述:
  • 小李从我们的宣传中得知该物理实验网站,很是兴奋,回到宿舍后开启电脑,看到查看设计性实验复习部分不需要注册,便直接进入了该页面。
  • 小李说,今天要从光学实验开始复习了,于是选择了G01号实验,页面显示了G01的复习攻略。
  • 小李在预览报告的过程中依次用鼠标点击虚线部分得到答案,在全部预览一次后小李点击”清空答案”将所有答案隐藏起来。
  • 小李完成了G01的复习,又选择了其他实验开始复习。在外的时候小李打开手机也可以查看实验攻略。

回归测试

本阶段我们新增了Markdown(html)报告生成的功能,这部分是在原有latex报告生成的基础上增加的,而其他新功能/改进并没有对原有接口造成影响(设计性实验新增路由,修改密码和上传头像分别是单独的控制器)。因此主要回测的部分是latex功能是否正常。

Alpha阶段生成报告的接口是/report/create,本阶段我们将原有接口改为/report/createTex/并新增接口/report/createMD,两个接口分别对应原来latex部分的控制器以及新的markdown报告控制器。本阶段我们在开发此功能的同时为本学期新增的4个实验增加了相应的markdown报告模板。

以下是我们针对markdown报告生成以及latex报告生成的测试矩阵

机型 报告生成方式选择 2111 markdown生成 2141 markdown生成 2161 markdown生成 2201 markdown生成 2161 latex生成 2201 latex生成 markdown生成结果显示 缺少markdown模板报错
thinkpad t580 正常 正常 正常 正常 正常 正常 正常 正常 正常
联想小新Air14 正常 正常 正常 正常 正常 正常 正常 正常
Dell Inspiron15 正常 正常 正常 正常 正常 正常 正常 正常,查看不完整,最右边看不到 正常
Dell G3 (chrome) 正常 正常 正常 正常 正常 正常 正常 正常 正常

包括之后在性能测试部分中我们也分别测试了新的markdown报告生成接口和老的latex报告生成接口,原有的接口是正常的。

测试矩阵

PC端测试

机型 报告生成方式选择 2111 markdown生成 2141 markdown生成 2161 markdown生成 2201 markdown生成 2161 latex生成 2201 latex生成 markdown生成结果显示 缺少markdown模板报错 修改密码 头像上传 设计性实验界面 设计性实验查看/隐藏答案 设计性实验清除答案按钮
thinkpad t580 正常 正常 正常 正常 正常 正常显示 正常 正常 正常 正常 正常 正常 正常 正常
联想小新Air14 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常
Dell Inspiron15 正常 正常 正常 正常 正常 正常 正常 正常,查看不完整,最右边看不到 正常 正常 正常 正常 正常 正常
Dell G3 (chrome) 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常

移动端测试

机型 用户注册 用户登陆 主页显示 实验数据输入 报告生成方式选择 latex报告生成 markdown报告生成 查看报告生成结果 实验评论 用户个人信息修改 修改密码 头像上传 设计性实验界面 设计性实验查看/隐藏答案
iPhone 7/Safari(周博闻) 正常 正常 正常 正常 正常 正常 正常 正常 无法评论 正常 正常 正常 正常 显示答案正常,隐藏答案需要等待下一次点击事件
iPhone 6s/Safari(樊子康) 正常 正常 正常 正常 正常 正常 正常 正常 无法评论 正常 正常 失败 正常 显示正常,隐藏有问题
荣耀8x chrome(殷刘霄羽) qq、buaa邮箱和outlook都没收到 正常 正常 正常 正常 正常 正常 无法评论 正常 正常 正常 正常 显示正常,隐藏有问题,没有清空答案
iPhone 6/Safari(何雨峰) 正常 正常 正常 正常 正常 正常 正常 正常 无法评论 更新失败 正常 正常 正常 显示正常,隐藏有问题
荣耀8x (王尖兵) qq、buaa邮箱没收到 正常 正常 正常 正常 正常 正常 正常 无法评论 正常 正常 正常 正常 显示正常,隐藏有问题

Beta 版本的出口条件

与此同时我们也计划在Beta阶段重构网站的部分功能,以提升运行性能,更好地服务于本学期以及将来需要做实验的同学们。初步计划的重构包括:以Markdown/html代替Latex/PDF(或先并存),优化移动端使用体验。

这是Alpha阶段测试报告结尾部分我们对Beta阶段的计划,两大主要功能/改进:Markdown报告生成和移动端体验优化。除此之外考虑到设计性实验考试即将开始以及综合实验部分即将结束,我们也考虑放缓增加新的综合实验内容而新增设计性实验复习模块。

本阶段的出口条件是

Markdown报告生成接口正常可用,本学期新增的实验能够生成两种类型的报告。移动端能够完成普通用户对网站的基本使用:注册登陆、生成实验报告、修改个人信息等。新增设计性实验页面,并尽可能增加其中的内容

目前来看网站基本达到了出口条件:

  1. 本学期新增的四个实验均可以使用Markdown模板生成Html报告,原有实验Latex模板报告生成不受影响。
  2. 移动端可以注册登陆(某些机型不能收到注册邮件),可以生成报告并以合适的方式查看(新开Tab,而不是堆在页面上)。
  3. 新增了设计性实验复习页面,并初步上线了所有的设计性实验(共8个)。
  4. 同时网站还修改了一些问题,目前修改密码和头像上传接口可以使用了。

在软工方面我们本阶段尝试单元测试并有了不小的进展,同时在编码过程中也对已有的一些配置进行了解耦。但仍有部分测试没有完成,部署方式也需要优化,因此下个阶段我们团队目标主要以提升软工质量为主。

单元测试

本阶段我们对上一阶段的控制台接口以及本阶段的设计性实验接口进行了单元测试。撰写测试踩了很多的坑,因此不久后也即将有一篇关于Laravel框架单元测试的技术博客。

测试结果如下:

仍有一些接口没有被测试,因此下个阶段我们将补全剩余接口的单元测试。

性能测试

本阶段新增的Markdown报告生成目的就是为了解决Latex报告生成速度慢,占用资源多的缺陷,为了直观展示两者性能上的差异,我们使用Postman和Jmeter对两个接口分别进行了测试

测试环境:阿里云1c2g云主机

单次报告生成速度

我们使用Postman分别对两个接口进行连续生成100次报告的测试。

测试结果如下:

接口 总用时 平均用时
Markdown 39841ms (39.841s) 398ms
Latex 116035ms (116.035s) 1160ms

Markdown生成一个报告用时约是Latex接口的34%左右。

并发压力测试

由于Postman仅能进行串行的测试,我们使用Jmeter对接口进行并发压力测试。

根据本项目第一届同学们测试的结果(链接),1c2g的服务器约能承受30人同时生成Latex报告。

以下时间单位为ms

1s突发测试

并发线程数:30
Label # Samples Average Median 90% Line 95% Line 99% Line Min Max Error % Throughput Received KB/sec Sent KB/sec
TexTest 30 27298 28891 29771 29781 29832 22887 29832 0.00% 0.97879 12.21 1.11
MDtest 30 10499 11874 12495 12508 12592 6441 12592 0.00% 2.24115 3.01 2.53
并发线程数:50

Latex接口运行本测试失败,生成了12个报告后服务器宕机。

Markdown接口运行正常

Label # Samples Average Median 90% Line 95% Line 99% Line Min Max Error % Throughput Received KB/sec Sent KB/sec
MDtest 50 20086 20982 22123 22135 22209 16458 22209 0.00% 2.16939 2.91 2.45

60s压力测试

Markdown接口:在60s内均匀地产生180个线程发起请求:

Label # Samples Average Median 90% Line 95% Line 99% Line Min Max Error % Throughput Received KB/sec Sent KB/sec
MDtest 180 23846 27389 35322 35542 35861 542 35953 0.00% 2.15543 2.9 2.44

Latex接口:在60s内均匀地产生90个线程发起请求:

Label # Samples Average Median 90% Line 95% Line 99% Line Min Max Error % Throughput Received KB/sec Sent KB/sec
TexTest 90 60618 84905 98235 99235 102162 307 102856 10.00% 0.67097 6.4 0.74

注意虽然Latex接口在Jmeter中返回的错误是10%,但部分返回http 200的接口实际上返回信息是“fail”,统计了服务器上生成的pdf个数为:68,既真实错误率为24.44%。

尝试以测试Markdown接口的参数测试Latex接口,同样导致了服务器宕机。

结论

以上测试可以看出,Markdown接口无论是在单次生成速度还是并发生成的资源占用和速度上,相比Latex接口均有巨大的优势。因此两者的适用范围也不同,在需要生成美观、规范的报告时可以选用Latex模板,而仅仅查看数据结果时可以使用Markdown模板。

【Beta】Phylab 测试报告的更多相关文章

  1. Beta版本测试报告以及Beta版本发布说明

    Beta版本测试报告 请根据团队项目中软件的需求文档.功能说明.系统设计和Beta阶段的计划安排,写出软件的测试过程和测试结果,并回答下述问题. 在测试过程中总共发现了多少bug?每个类别的bug分别 ...

  2. Beta版测试报告

    Beta版测试报告 测试中发现的Bug: Version 2.0 Bug List 1. 在动态监测界面,若随便点击“开始”.“关闭”.“结束”.红叉,会出现不定式崩溃现象. 2. 处理空数据时可能会 ...

  3. Crawling is going on - Beta版本测试报告

    [Crawling is going on - Beta版本] 测试报告 文件状态: [] 草稿 [√] 正式发布 [] 正在修改 报告编号: 当前版本: 2.0.2 编写人: 周萱.刘昊岩.居玉皓 ...

  4. 修咻咻对追光的人、云打印团队的Beta产品测试报告

    修咻咻对追光的人.云打印团队的Beta产品测试报告 作业描述 课程 软件工程1916|W(福州大学) 团队名称 修!咻咻! 作业要求 项目Beta冲刺(团队) 团队目标 切实可行的计算机协会维修预约平 ...

  5. 云打印 对Echo的Beta产品测试报告

    云打印 对Echo的Beta产品测试报告 课程名称:软件工程1916|W(福州大学) 团队名称: 云打印 作业要求: 项目Beta冲刺(团队) 作业目标:作业集合 团队队员 队员学号 队员姓名 个人博 ...

  6. 云打印 对 追光的人 的Beta产品测试报告

    云打印 对追光的人的Beta产品测试报告 课程名称:软件工程1916|W(福州大学) 团队名称: 云打印 作业要求: 项目Beta冲刺(团队) 作业目标:作业集合 团队队员 队员学号 队员姓名 个人博 ...

  7. 追光的人对Echo,SkyReach的Beta产品测试报告

    所属课程 软件工程1916 作业要求 Beta冲刺博客汇总 团队名称 追光的人 作业目标 团队互测 队员学号 队员博客 221600219 小墨 https://www.cnblogs.com/hen ...

  8. “SkyReach”对“待就业六人组”和“葫芦娃”的Beta产品测试报告

    对"待就业六人组"的Beta产品测试报告 安装成功截图 第一次上手体验感觉如何?能否正常运行? 第一次上手体验,界面简洁明了,简约的风格比较迎合个人的口味:能够正常运行: 该产品具 ...

  9. Echo团队 对 待就业六人组 和 SkyReach 的Beta产品测试报告

    班级:软件工程1916|W 作业:Beta阶段团队项目互评 团队名称:Echo 目录 对待就业六人组的Beta产品测试报告 对SkyReach的Beta产品测试报告 对待就业六人组的Beta产品测试报 ...

  10. “为了交项目干杯”对“那周余嘉熊掌将得队”、“男上加男,强人所男”的Beta产品测试报告

    "为了交项目干杯"对"那周余嘉熊掌将得队"."男上加男,强人所男"的Beta产品测试报告 格式描述 课程名称:软件工程1916|W(福州大学 ...

随机推荐

  1. 《JavaScript高级程序设计》笔记:附录A ECMAScript Harmony

    一般性变化 常量 用const关键字声明常量,声明的变量在初始赋值后,就不能进行修改了,如下代码: const MAX_SIZE = 25; MAX_SIZE = 10; //报错 块级作用域及其他作 ...

  2. Vue – 基础学习(5):动态加载和注册组件

    // var myComponent =() => import(`./../../components/custom_panel/${t_url}.vue`);// //var myCompo ...

  3. js中函数的参数为函数的情况即回调函数

    js中函数的参数可以是数组对象也可以是函数,当参数为函数时我们叫做回调函数 //定义回调函数function B() { console.log("函数B")setTimeout( ...

  4. Android 系统自带图片裁剪功能(适配7.0、8.0、对了还有小米手机)

    前段时间写了如何获取相册和拍照之后的照片并且进行显示和上传,这一次是如何进行圆形图像制作,经常看我写的笔记的人会知道,我很懒.那么我就懒的自定义了,目前需求就用原生的就好了,大神的轮子,我会在后面进行 ...

  5. Shell 选择排序

    举例 #!/bin/bash echo "please input a number list:" read -a arrs for((i=0;i<${#arrs[@]};i ...

  6. 数据结构与算法17—B树(B、B+、B*)

    B树 B-树,就是B树,B树的原英文名是B-tree,所以很多翻译为B-树,就会很多人误以为B-树是一种树.B树是另外一种树.其实,B-tree就是B树. B-树的定义 B树(B-tree)是一种树状 ...

  7. SQL注入之Sqlmap使用

    我们都知道,对于网络渗透最重要的一步是要拿到后台数据库管理员的密码与用户名,那么怎么得到这个用户名和密码呢?就要用到今天所说的Sqlmap,它不仅适用于内网环境,在外网环境也是非常受欢迎的,并且在Ka ...

  8. nginx.从路人到入门

    nginx 提供各种各样的服务器功能,本文记录 nginx 最基础的操作: 开启.停止.重载配置 静态文件服务器 反向代理 本文操作系统环境为 ubuntu18 安装 官方安装指导 开启.停止.重载配 ...

  9. 性能测试基础---LR关联

    ·什么时候需要做关联?一般来说,在脚本运行出错的时候,我们就可能需要进行关联处理. ·脚本出错分为两种情况: ·直接回放出错(失败).通常来说,如果录制成功,回放失败,排除数据的唯一性约束之后,那就必 ...

  10. 爬取前程无忧网站上python的招聘信息。

    本文获取的字段有为职位名称,公司名称,公司地点,薪资,发布时间 创建爬虫项目 scrapy startproject qianchengwuyou cd qianchengwuyou scrapy g ...