新发现的问题&战略调整:
这里的问题主要包含两种:
- 优化问题和不影响整体使用的bug,主要针对即时聊天以及UI交互部分;
- 我们安排六位同学两两组队,在一周时间内分别对产品进行覆盖性的体验测试,提出了以下问题,并且在正式发布之前已全部修改
功能 | 测试结果 | 是否修复 |
---|---|---|
通讯录 | 管理员可以被删除 | 是 |
聊天 | @功能需要去掉 | 是 |
聊天 | 好友栏上方搜索栏没有删除 | 是 |
前端代码部分 | console.log太多,影响性能 | 是 |
聊天 | 快速切换聊天会使聊天消息错位 | 是 |
聊天框 | 需要显示聊天具体名字 | 是 |
注册 | 相同邮箱注册,会重复发送验证码 | 是 |
注册 | 未对域名有效性进行限制检查(至少匹配一下.com) | 是 |
路由 | 如果强制进入home路由,没有token应当强制返回登录,而不能让其进入 | 是 |
无法修改用户信息 | 是 | |
聊天点击头像显示基本信息 | 是 | |
群成员显示bug | 在TimeShaft群里打开群成员,显示不全 | 是 |
是 | ||
邀请好友显示bug | 在群里邀请好友会显示不全 | 是 |
加好友的打招呼消息方向错误 | 接收好友请求的人发了打招呼消息 | 是 |
根据关键词查找消息bug | 用x清空关键词,再搜索会报错 | 是 |
群公告修改bug | 群公告修改之后,点击取消内容会保留,需要刷新一下 | 是 |
界面 | 去除无用的按钮? |
综合测试
脚本测试
助firebug工具,在Script Tab上,在$(“#nextButton”).attr(“disabled”, “disabled”);这行脚本设置disable, 点击nextButton,检查运行到断点处停止,按钮无法再次点击。运行断点后, disable解除。
JS:Ajax 应用程序通常涉及JavaScript、XML和按需信息检索。它们的规模常常超过正常应用程序,并且运行起来很像是桌面应用程序。因为大量使用 JavaScript,所以您将发现标准漏洞估计程序将无法覆盖所有可能的攻击方式。就像二进制程序测试一样,我们需要使用调试器来跟踪代码、分析程序结 构和调查潜在的问题,Firebug为我们提供了所有这些功能
DOM:DOM是存放Web 应用程序的内容的地方。DOM结构提供了动态编辑页面的所有必要功能,比如去除和插入html 元素、初始化计时器、创建和删除Cookie等等。DOM 是所有的Web 应用程序最为复杂的组件,所以对它的检查也是最难的。然而,Firebug 能够提供有用的DOM 视图,它的使用跟DOM Inspector一样
压力测试
使用webbench,Webbench能测试处在相同硬件上,不同服务的性能以及不同硬件上同一个服务的运行状况。webbench的标准测试可以向我们展示服务器的两项内容:每秒钟相应请求数和每秒钟传输数据量。webbench不但能具有便准静态页面的测试能力,还能对动态页面(ASP,PHP,JAVA,CGI)进 行测试的能力。还有就是他支持对含有SSL的安全网站例如电子商务网站进行静态或动态的性能测试。Webbench最多可以模拟3万个并发连接去测试网站的负载能力
当并发300时:
向http://182.92.163.68:8081/login发起300个线程请求,持续时间60秒
\# **webbench -c 300 -t 60 http://59.110.153.238/#
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking:Post http://59.110.153.238/#
300 clients, running 60 sec.
Speed=16875 pages/min, 184921 bytes/sec.
Requests: 18657 susceed, 0 failed.
速度:每秒钟响应请求数:16875pages/min,每秒钟传输数据量184921bytes/sec.
返回数:18657次返回成功,0次返回失败
当并发1000时:
\# **webbench -c 1000 -t 60 http://59.110.153.238/#
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: Post http://59.110.153.238/#/
1000 clients, running 60 sec.
Speed=15689 pages/min, 21037312 bytes/sec.
Requests: 16251 susceed, 59 failed.
当并发1000时,已经显示有59个连接failed了,说明超负荷了
接口集中测试
场景测试
典型场景 | 好友间交互 |
---|---|
用户 | 周自赢、紫睿智、颜王爷、黄上 |
职业 | 学生 |
收入 | 无 |
知识层次和能力 | 大三计算机系学生,使用手机电脑频繁 |
生活情况 | 上学 |
动机、目的、困难 | 写大作业合作项目时候需要频繁交流,发送文件不便,没有团队日程管理 |
用户偏好 | 团队项目沟通需要 |
典型场景 | 对刚发布的大作业项目进行初步讨论 |
典型描述 | 用于便捷交流 |
典型场景 | 群组会议记录 |
---|---|
用户 | 徐假乐,戴笑甜 |
职业 | 公司员工 |
收入 | 工资 |
知识层次和能力 | 大学毕业,某个合作项目领导者 |
生活情况 | 工作 |
动机、目的、困难 | 对于每次会议记录查找不便,文件需要自己每次分类 |
用户偏好 | 合作项目沟通需要 |
典型场景 | 需要根据上一次会议的内容制定进一步详细的计划;团队中其他成员能够在任意时候快速找到此前某次会议的文件 |
典型描述 | 用于文件快速分类查找,能够用会议来管理团队日程;同时希望与团队成员进行交流沟通 |
场景测试1:
-
典型用户:周自硬
-
用户的需求/迫切需要解决的问题:
- 自硬同学要开始和团队成员进行软工项目,厌烦于微信冗杂的聊天内容,不能对小组进度有很好的管理
- 自硬同学知道作业周期很长,需要和小伙伴们开很多次会议讨论,但是由于自硬同学有一些恶习,导致其经常遗忘上次会议的任务
-
场景描述:
- 自硬同学在他同为计算机专业的表哥,黄上的推荐下输入了“时间轴·Time Shaft”这款软件的网址:timeshaft.top
- 自硬同学用自己的邮箱注册了一个账号并且给自己起了一个响亮的名字:擎天柱
- 自硬同学邀请团队所有成员在TimeShaft上注册了账号,它们分别是紫睿智、颜王爷等人
- 接下来自硬同学进入到用户搜索当中,逐一搜索了团队成员的名字,并添加他们为好友
- 自硬同学点击了“建立团队”按钮,并将团队命名为“汽车人出击”,随后邀请所有队员加入团队当中
- 随后大家便在团队中讨论项目内容,在聊天框中输入自己的想法,时不时点击“开启会议”组织小组交流,并将内容保留在时间轴上
- 每次作业没有头绪大家就看看团队时间轴梳理路线
- 如果大家忘记了上周三开会发的一篇文档,大家可以打开时间轴找到这次会议并查询相关记录
- 最后大家完成了小组合作作业,罗老师给大家每人99分,自硬感觉美滋滋
番外:自硬同学靠着在Time Shaft当中高效的组织管理吸引了不少同学粉丝,并且经常私聊女同学,语言幽默,回复即时。自硬同学已脱单,是一个学妹,很幸福。
场景测试2:
-
典型用户:徐假乐
-
用户的需求/迫切需要解决的问题:
- 徐假乐已经学有所成,并且创立了一家小型互联网公司,并且需要迭代开发公司的平台和网站,急需一款适合小型团队管理的软件来帮助自己管理团队,推进项目开发,能够有效管理团队会议。
-
场景描述:
- boss假乐在他同为计算机专业的表哥黄上的推荐下输入了“时间轴·Time Shaft”这款软件的网址:timeshaft.top
- boss假乐用自己的邮箱注册了一个账号并且给自己起了一个响亮的名字:真乐
- boss假乐建立了一个团队:“霸天虎归来”
- 入职的员工都被boss拉进了团队当中,有些人在团队的职务被boss设置显示为“首席架构师”,有些人是“运维”,还有“后端工程师”,“前端工程师”,“老板秘书”等
- boss给首席架构师团队管理员的职能,于是首席架构师就可以召开团队会议
- 点击召开会议,弹出会议卡片;输入会议标题和描述,点击开启会议
- 所有参会成员在会议阶段的讨论和文档等都会被系统记录并保存在时间轴节点当中
- 在alpha阶段boss开了7次会议,beta阶段开了8次会议,时间轴来看整个项目的生命周期非常明显
- 整个项目推进非常顺利,员工们在团队群聊中交流的非常顺畅,于是项目成功上线了,并在天使首轮当中融资到了800w
番外:假乐走上了人生巅峰,于是改名为真乐
场景测试3:
-
典型用户:戴笑甜
-
用户的需求/迫切需要解决的问题:
- 甜甜已经毕业,要参加工作,需要使用公司的团队软件来进行团队管理。
-
场景描述:
- 甜甜在他同为计算机专业的表哥黄上的推荐下输入了“时间轴·Time Shaft”这款软件的网址:timeshaft.top
- 甜甜乐用自己的邮箱注册了一个账号并且给自己起了一个响亮的名字:啸天
- 甜甜在团队的整体氛围中成长了不少,在每次会议中积极发言,在时间轴上留下自己展现业绩的机会
- 通过时间轴上的日程安排,甜甜的工作完成的井井有条
- 而甜甜自己的隐私也得到了保障,因为不会像微信那样,自己朋友圈的照片天天被自硬点赞偷看,自己的生活和工作不能完全分开;可以专心工作
- 甜甜可以开开心心的工作,闲暇时间还可以加同事和同事摸鱼聊天,项目出的非常融侨
- 甜甜也不会因为男同事的头像很帅就觉得它是个帅哥,因为Time Shaft的头像都是统一生成的,在alpha阶段删除了上传头像的功能,通过一套脚本根据名称自动生成用户头像,没有被照骗渣男欺骗的可能。
番外:甜甜成功升职加薪
测试矩阵:
Beta版本出口条件
如何界定我们的项目是否能够出口其实是一件很难的事情,因为距离达到我们心中的完美还差了很远很远,不同的用户对产品的需求也是不一样的,甚至开发团队不同的成员对产品的期待也是不一样的。我们只能够尽可能地客观并且尽全力是我们的产品达到更好。
以下几项为必须条件:
- 完整的功能,正确的逻辑
- 美观流畅的UI
- 用户友好性较强
- 用户使用愉悦感强(能解决问题;探索新功能)
- 适配主流的浏览器,降低设备和环境依赖
- 满足用户的基本功能需求
- 有少量的“意外”功能,提升用户的喜悦感
- 经过了团队的整体测试