团队作业5——测试与发布(Alpha版本)
一、Alpha版本发布说明
1.1 版本名称
TPlanner V2.0
1.2 版本功能
序号 | 模块名 | 具体业务 |
---|---|---|
1 | 用户登录模块 | 用户进入小程序后需要经过登录过程以授权小程序,将用户的部分个人数据保存后台。 |
2 | 个人计划 |
1、用户自定义计划: 及用户制定一个大的计划(包括名称),内部会有很多的子任务(包括名称、预计耗时、开始时间、截至时间); 2、计划的增删查改 ; 3、计划内部子任务的增删查改。 |
3 | 日程表 |
1、通过查看日历并选择对应日期获取计划任务; 2、生成任务清单:对用户在个人计划模块以及团队计划输入的多个大计划内部的子任务,调用用户选择的算法智能生成计划表 ; 3、智能排序算法:仅根据用户填写的时间排序、长/短作业优先、优先级调用算法; |
4 | 团队计划 |
1、用户创建与解散团队; 2、团队创建者可以通过分享团队名片的方式将其他成员拉进该团队,需要团队名片的生成; 3、团队成员自定义计划:用户制定一个大的计划(包括名称),内部会有很多的子任务(包括名称、预计耗时、开始时间、截至时间),团队的其余成员亦可在该大计划内部添加属于自己的子任务; 4、团队大计划的增、查、改; 5、团队大计划内部子任务的增删改属于个人的子计划、支持查看自己与他人的子计划。 |
5 | 设置模块 | 用户修改个人在小程序内部昵称 |
1.3 版本缺陷
序号 | 功能名 | 缺陷说明 |
---|---|---|
1 | 排好序的任务清单生成为图片用于分享。 | 由于时间较紧,未能及时完成 |
2 | 任务推送通知 | 由于时间较紧,未能及时完成 |
3 | 邀请成员进入团队 | 由于时间较紧,未能及时完成 |
4 | 日程表没有原先UI设计的日期拖动效果,改成类似日历选择的样式 | 要实现UI设计的日期拖到,需要一些相应的组件,所以暂时修改成日历选择 |
注:以上缺陷都已更新克服
1.4 安装方法以及运行环境要求
下载微信客户端,要求能够打开微信小程序,适配所有安卓以及苹果手机
1.5 描述系统已知的问题和限制
序号 | 问题或限制 |
---|---|
1 | 由于该小程序的一些功能超出了个人账号限定范围,需要企业账号进行申请才能让小程序正式上线,个人账号只能使用体验版,而体验版需要管理员审核通过每个用户的使用权限才能进行使用 |
2 | 暂未结合轻量级服务器nginx搭建到多台服务器上实现负载均衡,服务器目前能够承受的并发量较低 |
注:以上问题和限制都已克服
1.6 发布方式与地址
用户可以扫描二维码,或者小程序搜索"TPlanner"即可使用。
二、测试过程
2.1 单元测试
测试功能名称 | 测试负责人 |
---|---|
个人计划信息展示 | 洪梓豪、王树干 |
个人计划信息更新 | 洪梓豪、王树干 |
日程表排序算法 | 柴政 |
日程表信息展示 | 郭沛、王树干 |
团队计划信息展示 | 郭沛、洪梓豪、黎其钻 |
团队计划信息更新 | 郭沛、洪梓豪、黎其钻 |
团队成员更新 | 郭沛、黎其钻 |
计划消息推送提醒 | 郭沛、王树干 |
2.2 压力测试
压力测试 | |
---|---|
测试目标 | 使用LR模拟真实用户对服务器施加压力。 |
测试范围 | 项目服务器(阿里云服务器ECS) |
完成标准 | 获取服务器在正常服务情况下的最大并发量 |
需考虑的特殊事项 | 测试机是否满足需求。 |
使用工具 | Jmeter |
2.3 易用性测试
易用性测试 | |
---|---|
测试目标 | 模拟真实用户,无经验用户,测试系统的易用性。 |
测试范围 | 前台 |
完成标准 | 成功地核实出前台各个页面符合可接受易用性标准。 |
需考虑的特殊事项 | 无 |
三、测试结果
3.1 单元测试统计
修复的bug | 不能重现的bug | 产品设计缘由,不是bug | 无能力修复的bug | 下个版本再修复的bug | ||||
---|---|---|---|---|---|---|---|---|
|
服务器有时可能出现请求异常 | 日程表获取当天任务安排时,对于截至时间在这之前且未完成的任务,日程表不会再进行安排 | 暂无 | 暂无 |
3.2 压力测试统计
3.2.1 测试说明
本次压力测试主要通过两个接口:获取用户个人所有计划以及获取多个团队的所有计划,采用这两个接口进行测试主要是返回的数据量相对较大,能更好体现服务器负载能力,且都是分别通过模拟20个用户并发循环300以及500次访问
3.2.2 测试结果
- 获取用户个人所有计划接口测试:
(20*300线程下的聚合报告)
(20*300线程下的响应图)
(20*500线程下的聚合报告)
(20*500线程下的响应图)
- 获取多个团队的所有计划接口测试:1.可以看到在400线程并发访问下,重要参数90%百分位的用户获得响应的时间在3.993s,处于一个可以接受的范围,同时异常率为0,总体说明该并发量处于可接受范围;
(20*300线程下的聚合报告)
(20*300线程下的响应图)
(20*500线程下的响应图)
(20*500线程下的响应图)
- 总结:从上述两个接口可以看到,一共发送了32000次请求,前三次都是异常数为0,最后一次测试时出现很小概率的异常,同时99%的请求响应时间基本上在1s左右,吞吐量上两个接口在并发量达到10000时差异不大,维持在50/SEC,效果不是很好,综合两个接口情况来看,并发请求大概在6000~8000之间是目前服务器依旧能够较好提供服务的范围。
3.3 易用性测试统计
- 直观性:从整个界面上看,风格清新明朗,模块作业区分较为明确,功能转换清晰明了,对于首次操作的用户,还可以到“设置“区的使用说明查看使用教程;
- 灵活性:对于一些计划用户需要输入的内容稍微较多,但是都有默认填写,用户只需要简单修改部分参数即可完成计划安排,同时对日程规划只需一键生成,总体上灵活方便;
- 舒适性:整个小程序的所有功能正常使用流畅顺利,不会出现页面卡顿的情况,同时对于用户输入错误格式或错误数据都会有相应的友情提示;
- 正确性:整个程序的执行流程符合正常人的逻辑思维,同时数据显示的正确性是有保证的;
四、场景测试
4.1 预期用户如何使用我们的软件
-
使用计划功能输入需要完成的任务,方便时时查看,达到监督自己的目的。
-
选择不同排序方式来规划任务的完成顺序(例如我喜欢按照任务的重要程度来进行)。
-
对于合作的任务,使用团队计划功能进行任务的创建、队员的邀请和任务的共享展示,方便所有成员监督查看任务的完成情况。
4.2 用户的需求和软件的目标
-
方便快捷地创建计划。
-
团队计划的共享与查看。
-
列表展示查看当天日程安排。
-
针对多元化完成任务的习惯,程序提供多种选择对一系列任务进行先后排序。
4.3 软件提供的功能如何组合起来满足用户的需求
-
程序共三大模块:个人计划、团队计划、日程表。
-
团队计划功能方便团队成员共享监督查看任务的完成情况。
-
用户可以根据情况选择独立地或交叉地使用个人计划功能或团队计划功能。
-
用户输入到个人计划与团队计划中的内容会一并提取到日程表模块中形成任务列表展示出来,使得用户对当天亟待完成的所有事项一目了然。
4.4 测试矩阵(test matrix)
测试模块 | 检验点 | 预期结果 | 安卓系统 | 苹果系统 | |||||||||||||||||||||||||||||||||||||||||||||
日程表 |
|
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||
个人计划 |
|
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||
团队计划 |
|
|
|
|
|
||||||||||||||||||||||||||||||||||||||||||||
个人设置 |
|
|
|
|
4.5 出口条件(exit criteria)
-
确保没有业务逻辑的bug;
-
保证页面能够正常使用,不会出现长时间的延迟;
-
保证项目所有功能都经过多次严密测试;
-
能够承载20000左右的高并发量;