本软件测试报告的编写目的是为了对Three Online Music系统进行全面的测试,以确保该系统能够稳定运行,并且满足用户的需求。通过对系统的各个功能模块进行测试,发现问题并且提出改进建议,为系统的进一步优化和升级提供参考。同时,本报告也为系统的使用者提供了详细的操作指南和建议,帮助他们更好地使用和管理Three Online Music系统。
随着互联网的普及和移动设备的发展,音乐已经成为人们日常生活中不可或缺的一部分。在线音乐平台作为一种新型的音乐服务模式,已经逐渐取代传统的音乐播放方式,成为人们获取音乐的主要途径。因此,开发一款稳定、安全、易用的在线音乐管理系统,对于提供高质量的音乐服务和用户体验,具有非常重要的意义。
Three Online Music系统是在这样的背景下开发的一款在线音乐管理系统。该系统主要面向音乐平台的管理人员和用户,提供音乐、歌手信息的管理和查询,以及试听、下载等基本功能。为了保证系统的稳定性和安全性,Three Online Music系统进行了全面的测试和优化,发现并解决问题,为用户提供更好的服务。
《Three Online Music系统需求分析》
《Three Online Music系统设计规格说明书》
《Three Online Music系统测试计划》
《Three Online Music系统用户手册》
服务器配置:需要2-4台PC机,主频2.6G以上及其他电脑配置等。
数据平台的搭建:使用SQL Server
系统平台的选择:使用Windows 10作为操作系统,使用Visual Studio 2019作为开发环境,使用ASP.NET/C++/Java以上作为编程语言和框架。
整个系统可分为注册子系统、组成,其结构如图 2‑1所示:
图 2‑1 在线音乐后台管理系统系统结构
试听音乐:用户能在线听取音乐。
下载音乐:用户在线下载音乐。
音乐类型:用户能知道歌曲的分类
共享音乐:用户通过友情链接共享音乐。
图 2‑2 系统流程图
音乐管理流程为:登陆→进入后台管理→进行对歌曲后台操作
由流程图可以得出:管理员登陆到管理界面当中,能对歌曲进行信息修改,包括上存歌曲,歌手信息修改,变更歌曲类型。同时能在安全管理模块添加和删除管理员,修改密码
用户流程为:浏览网站→在线听歌/歌曲下载
由流程图可以得出:网站是由主页,试听页面,下载页面,等组成的。用户能在线听取歌曲,同时能将所需歌曲下载到本地电脑当中。
根据上面的分析可知,本系统主要运用了HTTP的协议和SQL Server协议。
测试工具:使用自动化测试工具,如QTP、LoadRunner等,进行功能测试、性能测试、安全测试等。
测试数据:准备不同类型的数据,如正常数据、异常数据、边界数据等,以测试系统的各种场景和边界条件。
测试环境:搭建与生产环境相似的测试环境,包括服务器、数据库、网络环境等,以保证测试结果的准确性和可靠性。
功能测试:测试系统的各项功能是否能够正常运行,包括管理员添加、删除、编辑、更新音乐信息、歌手信息等功能,以及用户试听、下载音乐等功能。
性能测试:测试系统的性能表现,如响应时间、并发能力、稳定性等。
安全性测试:测试系统的安全性,如防止SQL注入、防止跨站脚本攻击、密码加密存储等。
兼容性测试:测试系统在不同浏览器和操作系统下的兼容性,如Windows、Mac、Linux等。
异常测试:测试系统在异常情况下的表现,如服务器故障、网络中断等情况下的系统恢复能力。
系统前台模块测试用例设计如表 2‑1所示。
表 2‑1 网站前台管理模块测试用例设计
模块名 | 网站前台管理模块 | |||||
---|---|---|---|---|---|---|
测试类型 | 功能测试 | 测试工具 | 无 | |||
用例ID | 用例名称 | 测试目的 | 输入描述 | 预期结果 | 实际结果 | 测试数据 |
1 | 歌曲试听 | 测试歌曲能否试听成功 | 点击试听按钮 2. 进入试听界面 | 播放音乐 | P | |
2 | 歌曲下载 | 测试用户下载歌曲是否成功 | 客户进入下载界面 点击“下载”按钮 | 提示“音乐下载成功” 显示下载歌曲信息 | P | |
3 | 爵士音乐界面 | 测试显示是否成功 | 1.客户点击爵士音乐按钮 | 1.显示爵士音乐界面 | P | |
4. | 流行音乐界面 | 测试显示是否成功 | 1.客户点击流行音乐按钮 | 1.显示流行音乐界面 | P | |
5. | 怀旧音乐界面 | 测试显示是否成功 | 1.客户点击怀旧音乐按钮 | 1.显示怀旧音乐界面 | P | |
6. | 摇滚音乐界面 | 测试显示是否成功 | 1.客户点击摇滚音乐按钮 | 1.显示摇滚音乐界面 | P |
系统后台模块和管理菜单模块测试用例设计如表 2‑2和表 2‑3所示。
表 2‑2 后台模块测试用例设计
模块名 | 后台管理系统首页模块 | |||||
---|---|---|---|---|---|---|
测试类型 | 功能测试 | 测试工具 | 无 | |||
用例ID | 用例名称 | 测试目的 | 输入描述 | 预期结果 | 实际结果 | 测试数据 |
1 | 管理员登录 | 测试管理员登录是否成功 | 输入用户名和密码 点击“登录”按钮 | 跳转到下一个页面 | P | |
2 | 取消登录 | 测试会员能否成功取消登录 | 输入用户名与密码 点击“取消”按钮 | 填写空白处为空白 | P |
表 2‑3 管理菜单模块用例设计
模块名 | 管理菜单模块 | ||||||
---|---|---|---|---|---|---|---|
测试类型 | 功能测试 | 测试工具 | 无 | ||||
用例ID | 用例名称 | 测试目的 | 输入描述 | 预期结果 | 实际结果 | 测试数据 | |
1 | 后台管理说明 | 测试管理员能否查看管理说明 | 毋需填写 | 显示成功 | P | ||
2 | 音乐管理 | 测试管理员能否成功进行音乐管理 | 1.输入需要上传的歌曲和歌词 2.选择歌手姓名和歌曲类型 3.点击“上传”按钮 | 上传成功,跳转到下一页面 | P | ||
3 | 歌手管理 | 测试管理员能否成功进行歌手管理 | 1.输入歌手姓名和选择输入性别,点击“插入”按钮 2.点击“删除”按钮 3.点击“修改”按钮,对歌手姓名和性别进行编辑,编辑完毕点击“更新”按钮 | 1.插入成功,显示新插入的歌手及其性别 2.删除成功,页面没有了被删除的内容 3.修改成功,最新更新的信息显示在页面上 | P | ||
4 | 类型管理 | 测试管理员能否成功进行类型管理 | 1.输入歌曲类型,点击“增加”按钮 2. 点击“修改”按钮,对歌曲类型进行编辑,编辑完毕点击“更新”按钮 3. 点击“删除”按钮 | 1.增加成功,显示新增加的歌曲类型 2.删除成功,页面没有了被删除的内容 3.修改成功,最新更新的信息显示在页面上 | P | ||
5 | 安全管理 | 测试管理员能否成功对管理员进行安全管理 | 1.输入新用户名和新密码(并确认新密码),点击“添加管理员”按钮 2.点击“修改密码”按钮,输入新密码(并确认新密码) 3.点击“删除”按钮 | 1.添加成功,页面显示新添加的管理员信息 2.修改成功,最新更新的信息显示在页面上 3. 删除成功,页面没有了该管理员信息 | P | ||
功能测试是指对系统各个功能进行测试,以确保系统能够正确地实现用户需求的功能。在音乐系统中,功能测试包括以下方面:
前台测试:导航栏测试、首页测试、下载测试和试听测试。
后台测试:首页登陆测试、后台管理说明、音乐管理模块、歌手管理模块、类型管理模块和安全管理模块。
测试导航栏是否能够正常显示和链接,包括菜单项、子菜单、页面跳转等。测试用例如表 2‑4所示,界面如图 2‑3所示。
表 2‑4 导航栏测试用例
测试过程 | |||||
---|---|---|---|---|---|
测试模块与数据输入描述 | 预期结果 | 实际结果 | P/F | ||
序号 | 场景 | 测试操作描述 | 导航栏中没有流行音乐分类 | 导航栏中有流行音乐分类 | F |
1.1 | 前台导航栏 | 将后台“歌曲分类”中的流行音乐分类设为禁用,前台导航栏当中就会没有此导航分类。 |
图 2‑3 导航栏界面
测试首页的布局、样式、图片、文字等内容是否符合设计要求,同时测试首页的各种功能是否能够正常工作,如搜索、推荐、广告等。测试用例如表 2‑5所示,界面如图 2‑4和图 2‑5所示。
表 2‑5 导航栏测试用例
测试过程 | ||||||
---|---|---|---|---|---|---|
测试模块与数据输入描述 | 预期结果 | 实际结果 | P/F | |||
序号 | 场景 | 测试操作描述 | 正常试听下载 | 正常试听下载 | P | |
1.2 | 前台网站首页 | 首页当中歌曲是否为正常下载试听状态 | ||||
1.3 | 前台歌曲分类页面 | 点击导航栏中分类,是否正常跳转到相关页面,例如:点击流行音乐,进入流行音乐界面 | 就正确进入相关页面 | 正确进入相关页面 | P | |
图 2‑4 前台网站首页界面
图 2‑5 前台歌曲分类页面
测试音乐下载功能是否能够正常工作,包括下载速度、文件大小、文件格式等方面。测试用例如表 2‑6所示,界面如图 2‑6所示。
表 2‑6 下载测试用例设计
测试过程 | |||||
---|---|---|---|---|---|
测试模块与数据输入描述 | 预期结果 | 实际结果 | P/F | ||
序号 | 场景 | 测试操作描述 | 显示下载界面并有下载歌曲提示 | 显示下载界面并有下载歌曲提示 | P |
1.4 | 下载页面 | 点击下载按钮进行下载 |
图 2‑6 下载页面界面
测试音乐试听功能是否能够正常工作,包括音质、播放器界面、播放进度、暂停、停止等。测试用例如表 2‑7所示,界面如图 2‑7所示。
表 2‑7 试听测试用例设计
测试过程 | |||||
---|---|---|---|---|---|
测试模块与数据输入描述 | 预期结果 | 实际结果 | P/F | ||
序号 | 场景 | 测试操作描述 | 显示试听页面并歌曲正常播放 | 显示试听页面并歌曲正常播放 | P |
1.5 | 试听页面 | 点击试听按钮进行试听 |
图 2‑7 试听界面
测试后台管理员是否能够正常登陆后台,并验证登陆验证码、权限等是否正确。测试用例如表 2‑8所示,界面如图 2‑8到图 2‑10所示。
表 2‑8 首页登录测试用例设计
测试过程 | |||||||||
---|---|---|---|---|---|---|---|---|---|
测试步骤与数据输入描述(见图3) | 预期结果 | 实际结果 | P/F | 错误描述 | |||||
序号 | 场景 | 测试操作描述 | 输入数据 | ||||||
名称 | 数据 | ||||||||
2.1 | 登录 | 在“用户名”中输入“51aspx”,在密码中输入“51aspx ”。 | 用户名 | 51aspx | 输入成功或提示数据非法 | 输入成功 | P | 难以辨别非法字符,严重问题,黑客随时可能通过这种方式入侵系统。 | |
密码 | 51aspx | ||||||||
2.2 | 登录 | 在“用户名”中输入“51aspx ”,在密码中输入“51aspx ”,再按“登录”按钮。 | 用户名 | 51aspx | 登录成功(跳转到下一界面)或登录失败(无法跳转) | 登录失败 | F | 在同一级中,已经存在该相同用户名,应该提示该用户名已经存在,一般问题,逻辑错误 | |
密码 | 51aspx | ||||||||
2.3 | 取消 | 在“用户名”中输入“51aspx ”,在密码中输入“51aspx ”,再按“取消”按钮。 | 用户名 | 51aspx | 取消成功(用户名和密码填写处为空白处) | 取消成功 | P | 难以辨别非法字符,严重问题,黑客随时可能通过这种方式入侵系统。 | |
密码 | 51aspx |
正常登录界面如图 2‑8所示。
图 2‑8 登录界面
密码输入错误时,如图 2‑9所示。
图 2‑9 登录界面(密码错误)
没输入密码时,如图 2‑10所示。
图 2‑10 登录界面(无密码)
测试后台管理页面是否能够正常显示和操作,同时测试各种管理功能是否能够正常工作,如音乐管理、歌手管理、类型管理、安全管理等。测试用例如表 2‑9所示,界面如图 2‑11所示。
表 2‑9 后台管理说明模块用例设计
测试过程 | |||||||
---|---|---|---|---|---|---|---|
测试步骤与数据输入描述(见图2) | 预期结果 | 实际结果 | P/F | ||||
序号 | 场景 | 测试操作描述 | 输入数据 | ||||
名称 | 数据 | ||||||
2.4 | 后台管理说明 | 查看后台管理说明 | 无 | 无 | 显示正常 | 显示正常 | P |
图 2‑11 后台管理说明模块界面
音乐管理模块:测试音乐管理模块是否能够正常工作,包括音乐信息的添加、修改、删除、查询等操作。测试用例如表 2‑10所示,界面如图 2‑12和图 2‑13所示。
表 2‑10 音乐管理模块测试用例设计
测试过程 | |||||||
---|---|---|---|---|---|---|---|
测试步骤与数据输入描述(见图2) | 预期结果 | 实际结果 | P/F | ||||
序号 | 场景 | 测试操作描述 | 输入数据 | ||||
名称 | 数据 | ||||||
2.5 | 音乐上传 | 在“上传音乐”中单击“浏览”按钮选择mp3格式的歌曲,在“上传歌词”中单击“浏览”按钮选择.lrc格式的歌词,下拉列表选择歌手姓名和歌曲类型,最后单击“上传”。 | 上传歌曲 | *.mp3 | 音乐上传成功 | 上传成功 | P |
上传歌词 | *.lrc | ||||||
歌手姓名 | 筷子男孩 | ||||||
歌曲类型 | 流行音乐 | ||||||
2.6 | 音乐上传 | 在“上传音乐”中单击“浏览”按钮选择任意格式的歌曲,在“上传歌词”中单击“浏览”按钮选择任意格式的歌词,下拉列表选择歌手姓名和歌曲类型,最后单击“上传”。 | 上传歌曲 | 弹出对话框:歌曲或歌词类型不正确,上传失败 | 弹出对话框:歌曲或歌词类型不正确 | P | |
上传歌词 | |||||||
歌手姓名 | 筷子男孩 | ||||||
歌曲类型 | 流行音乐 | ||||||
2.7 | 音乐上传 | 在“上传音乐”、“上传歌词”中无任何选择,下拉列表选择歌手姓名和歌曲类型,最后单击“上传”。 | 上传歌曲 | 无 | 无法上传 | 无法上传 | P |
上传歌词 | 无 | ||||||
歌手姓名 | 筷子男孩 | ||||||
歌曲类型 | 流行音乐 |
图 2‑12 上传音乐界面
图 2‑13 上传成功提示
测试歌手管理模块是否能够正常工作,包括歌手信息的添加、修改、删除、查询等操作。测试用例如表 2‑11所示,界面如图 2‑14到图 2‑16所示。
表 2‑11 歌手管理模块测试用例设计
测试过程 | ||||||||
---|---|---|---|---|---|---|---|---|
测试步骤与数据输入描述(见图2) | 预期结果 | 实际结果 | P/F | 错误描述 | ||||
序号 | 场景 | 测试操作描述 | 输入数据 | |||||
名称 | 数据 | |||||||
2.8 | 添加歌手 | 在“歌手姓名”中输入文字,下拉列表选择歌手性别,最后单击“插入”。 | 歌手姓名 | 添加成功 | 添加成功 | P | ||
歌手性别 | ||||||||
2.9 | 添加歌手 | 按序号3.1的操作,在“歌手姓名”中输入,用于危险字符测试。 | 添加成功或提示数据非法 | 致命错误 | F | 抛出异常,用户体验差;严重问题,黑客随时可能通过这种方式入侵系统。 | ||
2.10 | 添加歌手 | 在“歌手姓名”中输入任意字符,下拉列表选择歌手性别,最后单击“插入”。 | 歌手姓名 | #%% | 添加失败 | 添加成功 | F | 输入文字无非法字符限制 |
歌手性别 | ||||||||
2.11 | 歌手修改 | 在“歌手姓名”中输入姓名,下拉列表选择歌手性别,最后单击“更新”。 | 歌手姓名 | 更新成功 | 更新成功 | P | ||
歌手性别 | ||||||||
2.12 | 歌手修改 | 在“歌手姓名”中输入相同的姓名,下拉列表选择相同歌手性别,最后单击“更新”。 | 歌手姓名 | 更新失败,无变化 | 无变化 | P | ||
歌手性别 | ||||||||
2.13 | 歌手删除 | 单击“删除”按钮,删除所选歌手信息 | 歌手姓名 | 删除成功 | 删除成功 | P | ||
歌手性别 |
图 2‑14 添加歌手界面
图 2‑15 添加歌手后异常信息
图 2‑16 添加歌手界面(异常输入姓名)
测试类型管理模块是否能够正常工作,包括音乐类型、歌手类型、文件类型等信息的添加、修改、删除、查询等操作。测试用例如表 2‑12所示,界面如图 2‑17到图 2‑19所示。
表 2‑12 类型管理模块测试用例设计
测试过程 | ||||||||
---|---|---|---|---|---|---|---|---|
测试步骤与数据输入描述(见图2) | 预期结果 | 实际结果 | P/F | 错误描述 | ||||
序号 | 场景 | 测试操作描述 | 输入数据 | |||||
名称 | 数据 | |||||||
3.1 | 添加歌手 | 在“歌手类型”中输入文字,单击“增加”。 | 歌曲类型 | 小清新 | 添加成功 | 添加成功 | P | |
3.2 | 添加歌曲类型 | 按序号4.1的操作,在“歌曲类型”中输入,用于危险字符测试。 | 歌曲类型 | 添加成功或提示数据非法 | 致命错误 | F | 抛出异常,用户体验差;严重问题,黑客随时可能通过这种方式入侵系统。 | |
3.3 | 歌曲类型修改 | 在“歌手姓名”中输入姓名,下拉列表选择歌手性别,最后单击“更新”。 | 歌曲类型 | 更新成功 | 更新成功 | P | ||
3.4 | 添加歌曲类型 | 在“歌手姓名”中输入任意字符,下拉列表选择歌手性别,最后单击“插入”。 | 歌曲类型 | #%% | 添加失败 | 添加成功 | F | 输入文字无非法字符限制 |
图 2‑17 添加歌曲类型界面
图 2‑18 添加歌曲类型界面(异常字符输入)
图 2‑19 添加歌曲类型后异常信息
测试安全管理模块是否能够正常工作,包括用户权限管理、数据备份、日志记录等操作。同时测试系统安全性和防范攻击措施是否有效,如防病毒、防篡改、防恶意攻击等。测试用例如表 2‑13所示,界面如图 2‑20所示。
表 2‑13 安全管理模块测试用例设计
测试过程 | ||||||||
---|---|---|---|---|---|---|---|---|
测试步骤与数据输入描述(见图2) | 预期结果 | 实际结果 | P/F | 错误描述 | ||||
序号 | 场景 | 测试操作描述 | 输入数据 | |||||
名称 | 数据 | |||||||
5.1 | 添加管理员 | 在“安全管理”中再次输入 “ee”用户名,输入新密码“ee”,单击“添加管理员”按钮。 | 用户名 | ee | 提示“ee”管理员已经存在 | 添加成功 | F | 在同一级中,已经存在该同名称管理员(且密码一样),无限制添加次数。应该提示该管理员已经存在一般问题,逻辑错误 |
新密码 | ee | |||||||
新密码 | ee | |||||||
5.2 | 删除管理员信息 | 单击“删除用户”按钮,删除所选管理员信息 | 用户删除 | 删除成功 | 删除成功 | P | ||
5.3 | 修改管理员信息 | 单击“修改密码”,输入旧密码新密码。 | 用户名 | 11 | 修改成功 | 修改成功 | P | 单元功能不完善,无显示成功信息,管理员不清楚是否修改成功 |
旧密码 | 11 | |||||||
新密码 | 222 | |||||||
新密码 | 222 |
图 2‑20 修改密码界面
完成了前面的功能测试之后,就可以进入集成测试阶段。将所有模块按照设计要求(如根据机构图)组装为子系统或系统。进行集成测试。实践表明,一些模块虽然能够单独地工作,并不能保证在系统中也能正常工作。程序局部反映不出来的问题,很可能在全局上暴露出来,甚至影响整体功能的实现。
可以试着对以下专题进行集成测试,测试的方法如前述所示。
l 用户与歌曲的关系;
l 歌曲与音乐管理的关系;
l 歌曲与歌曲类型的关系;
l 管理员与后台管理的关系;
l 前台与后台的关系;
l 性能压力测试。
在把各个模块连接起来的时候,要确保穿越模块接口的数据不会丢失,也不会因为数据更新不及时而出现问题。同时,要确保模块与模块之间不会相互影响,一个模块的功能不会对另一个模块的功能产生不利的影响。要特别注意各个子功能组合起来后是否能够达到预期要求的父功能,以及全局数据结构是否没有问题,以保证系统的正确性。另外,要测试单个模块的误差是否不大且不会放大,以及单个模块的编辑是否对数据库有影响。
对数据库进行测试是集成测试中的重要环节,需要确认数据库能否完成网站的后台工作。具体来说,需要对数据库的数据进行修改、删除数据项、添加数据项、添加表记录、删除表记录、修改表记录等操作,并对存储过程当中的接口进行测试。同时,结合表的关联进行测试,对接口采用等价类、边界值等方法进行测试。
回归测试是针对进行了修复或改进的软件系统进行的一次系统性测试,旨在验证修复后的系统是否仍然符合原始需求和预期行为,并确保系统在修改后没有引入新的缺陷或问题。在回归测试中,重点关注系统的正确性、稳定性和可靠性等方面是否有所提高和改善。
在本次回归测试中,我们将对之前发现的错误进行修改后的系统进行测试,主要考察系统是否更加兼容、安全和可用。我们将对修改后的系统进行全面的测试,包括以下几个方面:
l 系统的功能是否正确,是否满足原始需求和预期行为;
l 系统在不同场景下的表现,特别是针对修改后的功能或模块进行更详细的测试;
l 系统在修改后是否产生了新的缺陷或问题,并对这些问题进行修复和改进;
l 系统的性能和响应时间是否有所提高和改善,特别是针对高负载情况下的系统表现;
l 系统的安全性和可靠性是否得到加强,防止非管理人员对系统进行非法操作和数据改动。
在本次回归测试中,我们使用了LoadRunner测试工具进行测试。具体测试步骤如下:
利用LoadRunner录制脚本,对系统的各个功能模块进行录制和测试。
l 在测试脚本中插入事务,以考察系统在处理事务时的表现和性能;
l 手动场景测试,模拟不同场景下的用户操作和负载情况,以考察系统的性能和响应时间;
l 对测试结果进行分析和比较,生成测试报告,以便开发人员和项目组其他成员了解测试结果和改进方向。
在测试过程中,我们记录了详细的测试记录和测试结果,包括测试的时间、环境、数据等信息,以及测试结果的分析和总结。这些记录将为后续的测试和开发工作提供有价值的参考和依据。
在性能测试中,选用LoadRunner作为工具。LoadRunner是一种常用的性能测试工具,它能够模拟实际用户行为和负载,以评估系统的性能和稳定性。
录制和编写脚本是LoadRunner性能测试中的重要环节,它是指将实际用户操作和数据流通过录制方式转化为测试脚本的过程。具体代码如图 2‑21所示。
图 2‑21 录制和编写脚本
设计与创建场景是LoadRunner性能测试中的重要环节,它是指根据实际测试需求和目标,制定合理的测试方案和负载方案,以模拟实际用户的行为和负载,从而评估系统的性能和稳定性。具体场景如图 2‑22所示。
图 2‑22 设计与创建场景
随着网络技术的发展,很多用户会上网浏览,听歌等,这一系统不但容易掌握,而且用户使用方便,利用用户上网听音乐,下载音乐,同时可以分享自己喜欢的音乐。以下是音乐系统的测试范围和要求。
(1)注册功能
用户可以通过注册账号并登录系统,以便使用各种功能。注册功能应该包含以下要素:
l 用户名:用户输入用户名,系统应该检查用户名是否已存在,如果不存在,则允许用户继续注册。
l 密码:用户输入密码,系统应该对密码的长度和安全性进行验证,并要求用户再次输入密码进行确认。
l 邮箱:用户可以输入一个邮箱地址,系统会向该邮箱发送一封验证邮件,用户需要在邮件中点击验证链接来完成注册。
(2)音乐播放功能
系统应该提供音乐播放器,允许用户在线听取音乐。音乐播放器应该具有以下功能:
l 支持多种音乐格式:系统应该支持多种常见的音乐格式,如MP3、FLAC等。
l 音乐控制:用户应该能够控制音乐的播放进度、音量、暂停和播放等操作。
l 歌词显示:系统应该能够显示歌词,并在播放时同步更新。
(3)音乐下载功能
系统应该允许用户下载音乐到本地电脑中。音乐下载功能应该具有以下要素:
l 多种音乐格式:系统应该支持多种音乐格式的下载,如MP3、FLAC等。
l 高质量:系统应该提供高音质的音乐下载,如果低质量的音乐下载,会影响用户的听感。
(4)音乐分享功能
系统应该提供音乐分享功能,允许用户将自己喜欢的音乐分享到社交媒体上。音乐分享功能应该具有以下要素:
l 社交媒体链接:系统应该支持多种社交媒体平台,如微信、QQ、微博等。
l 分享内容:用户可以自定义分享内容的标题、描述和图片等,以便更好地展示音乐。
(5)搜索功能
系统应该提供搜索功能,允许用户通过关键词搜索自己喜欢的音乐。搜索功能应该具有以下要素:
l 关键词搜索:用户可以输入关键词搜索音乐,系统应该返回相关的音乐结果。
l 高级搜索:用户可以设置多个条件进行高级搜索,如按歌手、按音乐类型等。
(6)后台管理功能
系统应该提供后台管理功能,以便管理员对系统进行管理和维护。后台管理功能应该具有以下要素:
l 音乐管理:管理员可以添加、编辑和删除音乐,同时可以修改音乐的属性,如歌手、类型等。
l 歌手管理:管理员可以添加、编辑和删除歌手,同时可以修改歌手的属性,如国籍、流派等。
l 类型管理:管理员可以添加、编辑和删除音乐类型,同时可以修改类型的属性,如名称、描述等。
l 安全管理:管理员可以添加、编辑和删除管理员账号,同时可以修改密码等安全设置。
以上是针对音乐系统的功能需求,能够帮助开发人员更好地了解系统的功能和用户需求,及时发现和修复问题,提高系统的用户体验和稳定性。
以下是针对音乐系统重新整理的功能模块说明。
网站前台管理模块
l 歌曲下载
该模块允许用户下载音乐到本地电脑中。用户可以在歌曲页面找到下载链接,并通过下载页面进行下载。系统应该支持多种音乐格式,如MP3、FLAC等,并提供高音质的音乐下载。
l 歌曲在线听取
该模块允许用户在线听取音乐。用户可以在歌曲页面找到播放链接,并通过播放器进行播放。系统应该支持多种音乐格式,如MP3、FLAC等,并提供歌词显示功能。
网站后台管理模块
l 安全管理
该模块允许管理员进行安全设置和管理。管理员可以通过该模块进行管理员账号的添加、编辑和删除,并可以修改密码等安全设置。
l 音乐管理
该模块允许管理员进行音乐的管理。管理员可以通过该模块进行音乐的添加、编辑和删除,并可以修改音乐的属性,如歌手、类型等。
l 歌手管理
该模块允许管理员进行歌手的管理。管理员可以通过该模块进行歌手的添加、编辑和删除,并可以修改歌手的属性,如国籍、流派等。
l 类型管理
该模块允许管理员进行音乐类型的添加、编辑和删除,同时可以修改类型的属性,如名称、描述等。
由系统的需求分析报告可知,该系统的性能需求如下:
(1)网站响应时间为1秒。
(2)可以满足1000个用户在线下载。
(3)可以满足1000个用户同时试听。
(4)下载确定时间不能超过1秒。
(5)可以满足1000个用户下载歌曲。
(6)可以满足1000个用户同时听取歌曲。
根据用户性能需求,其性能指标如表 3‑1所示。
表 3‑1 性能指标
序号 | 测试场景的描述 | 监控范围 | 备注 |
---|---|---|---|
1 | 100个客户浏览网站 5个用户启动,每隔30秒增加5个用户,持续5分钟,立即结束负载。 | 浏览响应时间,网络延迟,吞吐量 | 系统容量:1个评论板块,共50条评论及50客户 |
2 | 1000个客户同时下载歌曲 10个用户启动,每隔30秒增加10个用户,持续5分钟,立即结束负载。 | 网站的运行是否正常 | 同上 |
3 | 1000个注册管理员 10个用户启动,每隔60秒增加30个用户,持续5分钟,立即结束负载。 | 网站的运行是否正常 | 同上 |
4 | 1000个客户下载音乐 5个用户启动,每隔30秒增加5个用户,持续5分钟,立即结束负载 | 下载确定响应时间,网络延迟,吞吐量 | 同上 |
5 | 100个管理员进行上传音乐 5个用户启动,每隔30秒增加5个用户,持续5分钟,立即结束负载 | 上传响应时间,网络延迟,吞吐量 | 同上 |
6 | 1000个用户同时试听音乐 10个用户启动,没个30秒增加5个用户,持续十分钟,立即结束负载。 | 网站运行是是否正常 | 同上 |
根据上面的分析,系统的整体测试策略如下:
(1)第一轮测试
进行功能测试,确定功能模块是否符合用户要求。其功能模块如下:
1.网站前台管理模块
l 歌曲下载:测试音乐下载是否成功
l 歌曲试听:测试音乐下载是否成功
2.网站后台管理模块
l 歌曲上存,测试歌曲是否能正确上存。
l 音乐管理,测试歌曲是否能正确修改。
l 安全管理,测试用户登录与修改是否成功。
l 类型管理,测试用户歌曲类型分类是否有错。
l 歌手管理,测试歌手与歌曲匹配是否与现实不符。
(2)第二轮测试
对数据库进行测试,确认数据库是否可以完成网站的业务操作。
(3)第三轮测试
进行性能测试,确定性能是否符合用户的性能需求。
l 单用户试听与下载
l 单用户在线浏览歌曲
单用户下载
l 下载事务响应时间、下载完成数、吞吐量、资源利用率。
l 浏览歌曲事务响应时间、浏览歌曲完成数、吞吐量、资源利用率。
l 试听歌曲响应时间、查询歌曲完成数、吞吐量、资源利用率。
(4)第四轮测试
进行压力测试,确认系统能够在12小时内稳定运行。
(5)第五轮测试
在获得网站平台架构数据后,针对该架构采取调整硬件配置的策略,进一步分析网站的处理能力、容量扩展空间、性能瓶颈等对系统进行改良,完成对该系统的回归测试。
开始/中断/完成标准如表 3‑2所示。
表 3‑2 开始/中断/完成标准
开始/中断/完成标准 | 标准说明 |
---|---|
开始测试标准 | 硬件环境可用且软件正确安装完成 |
中断测试标准 | 安装无法正确完成或程序的文档有相当多的失误或系统服务器异常或发现Block Bug |
完成测试标准 | 完成测试计划中的测试规划并达到程序和测试质量目标,并由Test Lead/R&D Manager确认 |
测试人员如表 3‑3所示。
表 3‑3 测试人员
姓名 | 职称 | 负责范围 |
---|---|---|
软件工程师 | 负责测试系统的开发和修复。 | |
测试工程师 | 负责测试用例的设计和执行。 | |
质量保证工程师 | 负责对测试结果进行分析和评估。 |
测试时间如表 3‑4所示。
表 3‑4 测试时间
日期 | 时间 | 测试内容 |
---|---|---|
2023年6月12日 | 上午9:00-10:00 | 试听音乐测试 |
下午2:00-3:00 | 下载音乐测试 | |
下午3:30-4:30 | 音乐类型测试 | |
晚上7:00-8:00 | 共享音乐测试 | |
2023年6月13日 | 上午10:00-12:00 | 后台管理模块测试(信息修改、添加和删除管理员、修改密码等操作) |
下午2:00-4:00 | 性能测试(单用户试听、下载、在线浏览等) | |
2023年6月14日 | 上午9:00-11:00 | 压力测试(模拟多用户操作、高并发等) |
下午2:00-4:00 | 安全测试(漏洞扫描、防火墙等) | |
2023年6月15日-16日 | 全天候 | 回归测试,针对修复后的版本进行全面测试 |
2023年6月17日 | 上午9:00-11:00 | 测试总结及报告编写 |
经过对音乐系统的测试,发现存在以下问题:
l 难以辨别非法字符,可能导致黑客通过这种方式入侵系统。
l 在同一级中存在相同用户名时,没有提示用户名已经存在,存在逻辑错误。
l 输入文字无非法字符限制,可能导致黑客通过这种方式入侵系统。
l 在添加管理员时,存在无限制添加次数的情况,应该限制管理员的重复添加。
l 单元功能不完善,导致管理员在修改信息时无法确定是否修改成功。
\1. 后台管理与前台无法相互链接:这个问题可能会导致用户在前端页面无法访问后台管理页面,或者在后台管理页面无法访问前端页面,影响系统的整体功能。需要检查后台管理模块和前台模块之间的接口是否正确实现,并修复相应的代码缺陷。
\2. 申请管理员时出现重复用户名:这个问题可能会导致系统中出现多个相同用户名的管理员,影响系统的管理和运营。需要检查用户注册和登录模块中的代码是否正确实现了用户名的唯一性验证,并修复相应的代码缺陷。
\3. 数据更新不及时:这个问题可能会导致系统的数据与实际数据不一致,影响系统的准确性和可靠性。需要检查数据更新模块中的代码是否正确实现了数据更新的逻辑,并修复相应的代码缺陷。
在解决这些问题时,需要结合具体的代码实现和系统架构,进行深入的分析和调试。同时,要进行充分的测试用例设计,覆盖不同的情况和场景,以确保系统功能的完整性和稳定性。最终,需要对测试结果进行详细的记录和分析,以便为后续的测试和开发工作提供参考和依据。
经过全面的回归测试,我们得出以下结论:
系统已经能够正常运行,大部分之前发现的错误已经得到修复,没有出现严重错误。系统在修改后没有引入新的缺陷或问题,用户在使用时能够相应地完成指令。系统的安全性和可靠性得到了一定的提高和改善,防止非管理人员对系统进行非法操作和数据改动。仍然存在一些小缺陷和问题需要进一步改进和完善,例如系统在处理大量数据时可能会影响反应速度等。
总体而言,本次回归测试取得了较好的效果,系统的兼容性、安全性和可用性等方面得到了一定的提高和改善。但是,我们仍然需要继续进行测试和改进工作,以发现和解决潜在的问题和缺陷,确保系统的稳定性和可靠性。
根据下图数据结果可以得出网站的运行符合测试用例的各项指标,通过量以及吞吐量都符合以上的寻求量,在测试过程当中出现不通过情况,但对网站运行用户使用,管理员进行操作不构成影响,根据数据图,可以得到本网站能在多个用户进行浏览下载试听下,网站能稳定运行。具体图标如图 4‑1到图 4‑7所示。
图 4‑1 事务摘要
图 4‑3 页面下载时间细分
图 4‑4 吞吐量
图 4‑5 在用户负载下事务响应时间
图 4‑6 每秒连接数
图 4‑7 页面组件细分(随时间变化)
经过测试,共发现了14个问题。其中,单元测试发现了8个问题,集成测试发现了4个问题,回归测试未发现新的问题。
在所有发现的问题中,有4个问题未得到解决。这些问题可能会对系统的稳定性和可靠性产生一定的影响,需要在后续的测试和开发工作中继续关注和改进。具体问题如表 4‑1所示。
表 4‑1 未解决问题
模块名称 | 缺陷编号 | 性质 | 简要描述 | 原因分析 |
---|---|---|---|---|
前台用户模块 | 001 | Bug | 难以辨别非法字符,可能导致黑客通过这种方式入侵系统。 | 未对输入的文字进行非法字符限制 |
前台用户模块 | 002 | Bug | 在同一级中存在相同用户名时,没有提示用户名已经存在,存在逻辑错误。 | 未对用户名进行唯一性验证 |
后台管理模块 | 003 | Bug | 添加管理员时,存在无限制添加次数的情况,应该限制管理员的重复添加。 | 未对管理员添加次数进行限制 |
后台管理模块 | 004 | Bug | 单元功能不完善,导致管理员在修改信息时无法确定是否修改成功。 | 未对修改信息操作进行反馈和记录 |
针对上述未解决问题,进行问题分析如表 4‑2所示。
表 4‑2 问题分析
序号 | 问题描述 | 问题分析 |
---|---|---|
1 | 难以辨别非法字符,可能导致黑客通过这种方式入侵系统。 | 系统没有对用户输入的文字进行充分的非法字符检查和限制,从而导致黑客可以通过输入非法字符来入侵系统。需要加强对用户输入的文字进行合法性检查和限制,并加入相应的逻辑判断和提示。 |
2 | 在同一级中存在相同用户名时,没有提示用户名已经存在,存在逻辑错误。 | 系统没有对用户输入的用户名进行唯一性验证,从而导致用户可以输入已经存在的用户名,而系统没有相应的提示。需要对用户名进行唯一性验证,并加入相应的逻辑判断和提示。 |
3 | 输入文字无非法字符限制,可能导致黑客通过这种方式入侵系统。 | 系统没有对用户输入的文字进行充分的非法字符检查和限制,从而导致黑客可以通过输入非法字符来入侵系统。需要对用户输入的文字进行合法性检查和限制,并加入相应的逻辑判断和提示。 |
4 | 在添加管理员时,存在无限制添加次数的情况,应该限制管理员的重复添加。 | 系统没有对管理员的添加次数进行限制,从而导致可以重复添加相同的管理员,影响系统的可靠性和安全性。需要对管理员的添加次数进行限制,并加入计数器来记录管理员的添加次数,当达到一定的限制时,禁止再次添加。 |
5 | 单元功能不完善,导致管理员在修改信息时无法确定是否修改成功。 | 系统没有对管理员修改信息的操作进行充分的反馈和记录,从而导致管理员无法确定是否修改成功。需要对管理员修改信息的操作进行反馈和记录,并加入相应的提示或者在修改成功后刷新页面。 |
· 针对未解决的问题,需要进一步分析其产生的原因和影响,并制定相应的解决方案和改进措施。同时,需要加强对系统安全性的评估和保护,避免系统受到黑客攻击。
· 对于已经解决的问题,需要对其产生的原因和解决方案进行总结和归纳,以便为后续的测试和开发工作提供参考和依据。
综上所述,本次测试工作取得了一定的成果和进展,但仍需要继续进行改进和完善。对于存在的问题和缺陷,需要制定相应的解决方案和改进措施,并加强测试和开发的协作,确保系统的稳定性和可靠性。同时,需要加强对系统安全性的评估和保护,避免系统受到黑客攻击。
根据对整个音乐系统的测试,我们得出以下结论。
本网站的主要功能为下载试听音乐,通过网站对歌曲的分类,可以让用户更快的清楚歌曲的类型。后台管理为管理员所运行,主要为前台提供歌曲的更新,添加歌曲修改歌曲等。
本网站的易用性在于在前台当中用户无需注册会员就能下载试听歌曲,了解歌曲的信息,二在后台管理当中,管理员对歌曲的管理也较为方便,申请管理员后能在里面进行对歌曲的管理,简单的操作时网站管理十分方便。用户下载与试听也提供了快捷性。
能在多个浏览器中浏览网页,例如360、火狐、Edge等同时用户在系统中能完成主要的操作,下载,试听,在用户执行操作当中的响应时间都能达到预期测试时间。管理员在实行上存,修改,删除,操作当中也能顺畅进行,系统的错误几率较低,通过测试能达到预期效果。
本网站兼容性较强,能在360浏览器,火狐浏览器,猎豹浏览器等浏览器中打开,同时在不同系统的电脑当中能正常使用,无论是用户或者是管理员都能在以上所说环境当中浏览使用网站,完成所需工作。
对于本网站的安全性,在测试当中主要对后台管理的测试,由管理员的添加删除都经过控制数据库进行,同时输入错误是能提示管理员,防止非管理员进入到管理系统当中。
系统在音乐播放和下载方面功能正常,用户界面友好,能够满足用户的需求;系统在安全管理方面存在一些问题,例如难以辨别非法字符和无限制添加管理员等情况,需要进一步加强安全性和防范措施;系统在音乐管理和类型管理方面存在一些逻辑错误和不足,需要修改相应的代码和逻辑;系统在数据更新方面存在不及时的情况,需要加强数据更新和同步的机制。
综上所述,同意开发该系统。
基于以上测试结果,我们建议以下措施:
加强系统安全性的保护,增加对非法字符和恶意攻击的防范措施,限制重复添加管理员等操作;对音乐管理和类型管理方面的逻辑错误和不足进行修改和优化,提高系统的稳定性和可靠性;加强数据更新和同步的机制,确保数据的准确性和及时性;对系统进行不断的优化和改进,提高系统的性能和用户体验。
在开发过程中,加强测试和开发的协作,确保测试工作的全面性和有效性;对系统存在问题的进行深入分析和诊断,制定相应的解决方案和改进措施;对软件实施和运行可能带来的影响进行评估和预测,提前预防和解决潜在的问题和缺陷;加强软件设计和开发的规范化、标准化和专业化,提高软件质量和开发效率。
测试报告审批表如表 6‑1所示。
表 6‑1 测试报告审批表
编号 | 测试项目 | 测试内容 | 测试结果 | 是否通过 | 审批意见 |
---|---|---|---|---|---|
001 | 音乐系统前台管理模块测试 | 1.歌曲下载 2.歌曲在线听取 | 通过 | 同意发布 | |
002 | 音乐系统后台管理模块测试 | 1.安全管理 2.音乐管理 3.歌手管理 4.类型管理 | 部分通过,存在逻辑错误和安全性问题 | 建议修复后再发布 | |
003 | 功能测试 | 1.非法字符辨别功能测试 2.输入文字限制测试 3.管理员添加次数限制测试 4.单元功能测试 | 部分通过,存在缺陷和不足 | 建议修复后再发布 | |
004 | 集成测试 | 1.后台管理与前台链接测试 2.申请管理员时重复用户名测试3.数据更新及时性测试 | 部分通过,存在缺陷和不足 | 建议修复后再发布 | |
005 | 回归测试 | 对所有已修复问题进行再次测试,确保问题得到解决,系统稳定可靠 | 通过,未发现新问题 | 建议发布 |
根据以上测试报告,音乐系统在部分测试中存在逻辑错误和安全性问题,建议在修复这些问题后再发布。同时,在部分测试中存在缺陷和不足,也需要进行修复和改进。在回归测试中未发现新问题,说明之前的修复和改进工作已经得到了有效的实施。因此,建议在修复上述问题后再次进行测试和审批,确保系统能够稳定可靠地运行。
术语和缩略语如表 7‑1所示。
表 7‑1 术语和缩略语
术语 | 描述 |
---|---|
QTP | 一种自动测试工具,用于测试 Web 应用程序和桌面应用程序 |
LoadRunner | 一种性能测试工具,用于模拟大规模并发用户,测试 Web 应用程序的性能 |
HTTP | 用于传输 Web 页面和 Web 服务的协议 |
SQL Server | 一种关系型数据库管理系统,是由微软开发的 |
Windows | 微软公司开发的操作系统 |
Linux | 一种自由和开放源代码的操作系统 |
FLAC | 无损音频编码格式,可以保存音频文件的质量而不会损失任何信息 |
Bug | 程序中的错误或缺陷,通常指导致程序无法正确运行的错误 |
Test Lead/R&D Manager | 负责管理和领导研发团队,并负责产品的开发和测试 |
本报告中未解决问题的分析是基于当前已有的知识和经验,对问题进行初步的判断和推理。在实际操作中,还需要对问题进行更深入的研究和探讨,以得到更准确和全面的结论。
本次测试报告设计是我参与的一个大型项目中的一部分。在这个项目中,我承担了测试用例设计和执行的工作。在测试用例设计方面,我采用了黑盒测试和灰盒测试相结合的方法,以充分覆盖软件功能和性能的要求。在测试执行方面,我使用了自动化测试工具,以高效地完成测试工作。
在这个过程中,我获得了很多宝贵的经验。首先,我深刻认识到了软件测试的重要性和复杂性。测试不仅仅是找出程序中的错误,更是需要对整个软件生命周期进行全面的管理和控制。其次,我学会了如何使用各种测试工具和方法,快速高效地找出程序中的问题。同时,我也学会了如何与开发人员和其他团队成员进行有效的沟通和协作,以共同推动项目的进展。
在这个过程中,我也遇到了一些挑战。例如,在测试用例设计时,我需要仔细研究软件的需求和功能,以确定测试场景和测试数据。同时,在测试执行时,我也需要解决一些技术问题,如自动化测试脚本编写和调试等。这些问题不仅需要我具备一定的技术能力,更需要我具备解决问题的能力和良好的工作态度。
通过这次测试报告设计,我不仅提高了自己的技能和能力,更深刻地认识到了软件测试的重要性和自己的职业发展方向。我将继续努力学习和实践,以不断提高自己的专业水平和职业素养。同时,我也将把这次测试报告设计的经验和教训应用到未来的工作中,以更好地为团队和公司做出贡献。