基于黑马24年AI软件测试03~04视频内容制作
软件测试是一个系统性的过程,通过执行软件来发现软件中的缺陷(bug),验证软件是否满足需求规格说明,并评估软件的质量。
缺陷小到影响使用体验,中到使用功能不能用,大到影响财产和生命。 缺陷实例: 小缺陷:页面加载较慢,卡了几秒,影响用户体验 中缺陷:某个功能出现异常 大缺陷:出现严重的问题,如电商平台被薅羊毛,损失百万
软件测试主要按照软件产生的阶段划分、按照代码可见度划分、其他测试进行划分。
按生产阶段划分:
按照软件生成过程划分:单元测试、集成测试、系统测试、验收测试 单元测试:针对
程序源代码进行测试,一般开发自测 集成测试:针对模块之间功能交互进行测试,即组装测试,一般测试人员 系统测试:对整个系统进行全面测试,一般测试人员 验收测试:以用户代表为主,验证项目是否符合预期,一般用户测试
按代码可见度划分:
根据程序的源代码可见程度划分:黑盒测试、灰盒测试、白盒测试 黑盒测试:源代码不可见,UI功能可见,主要关注
数据输入结果输出灰盒测试:部分源代码可见,UI功能不可见,主要关注输入输出、数据访问通道白盒测试:全部源代码可见,UI功能不可见,主要关注代码本身语法逻辑
其他测试:
冒烟测试:对
核心功能的测试,保障提测内容具备可测性 回归测试:对已修复bug\更新后对已测内容再次测试,保证bug修复、确保新功能对旧功能无影响
质量模型是衡量一个软件质量的维度,分为功能性、性能、兼容性、易用性、可靠性、安全、可维护性、可移植性。
功能性:软件是否具备某方面的能力 主要目标:数量是否正确,功能正确性是否实现 示例:
某游戏软件功能需求: 功能数量:3个 功能详解: 1.每种角色具备不同的攻击能力值 2.地图上需要有车辆 3.玩家从高楼跳下需要扣血 测试功能: 功能数量为3个 功能能否正确实现 1.角色有攻击能力 2.出现xxx车辆 3.高处跳下掉血
性能:多用户同时使用能否满足需求(时间、资源) 主要目标:响应快、资源占比少 示例:
性能需求: 1.需支撑每日在线人数20W 2.同时支持200人同时操作 测试设计: 1.服务器支持20W在线玩家 2.支持200人并发操作
兼容性:在不同的设备/平台上能否正常使用 主要目标:正常使用、不受影响 示例:
常见兼容:浏览器、分辨率、品牌、其他软件、网络、操作系统 兼容性需求: 1.兼容所有Windows系统 2.支持不同分辨率手机 3.和其他游戏软件不冲突 …
易用性:易学、易用、用户粘性好 主要目标:用户体验好 示例:
易用性需求: 1.支持不同年龄用户 2.符合大众审美要求 3.核心操作不超3步 易用性测试: 1.数据统计 2.调查问卷
安全性:敏感数据存储/传输安全
主要目标:加密传输存储有保障
示例:敏感数据<–>数据有加密
可靠性:长时间运行稳定,不出现异常 主要目标:持久运行无异常 示例:死机、卡顿、无响应
可移植性:应用系统升级/数据迁移方便 主要目标:迁移方便 示例:手机数据迁移
可维护性:运行过程出现问题维护操作是否方便 主要目标:出现异常,易恢复
以微信为例
功能性:与需求数量一致,功能正确 性能:响应快、占用资源少 兼容性:不同设备平台正常使用 易用性:用户体验好 安全性:敏感信息无泄密存储有保障 可靠性:持久运行无异常 可移植性:升级迁移数据不丢失 可维护性:出现异常恢复简单、可拓展功能、升级更新便捷
按照阶段划分软件测试
①单元测试:针对程序源代码的测试【开发】 ②集成测试:针对功能模块组装的测试 ③系统测试:针对整个系统(功能、非功能)进行测试 ④验收测试:以用户身份验证系统是否满足需求【用户】
按代码可见度划分
①黑盒测试:针对有UI界面软件系统输入输出类测试 ②灰盒测试:针对无UI界面软件系统输入输出和内部逻辑结构的测试(能看到部分源代码) ③白盒测试:针对程序源代码及内部逻辑本身进行测试
其他测试
冒烟测试:保障提测内容具备可测性 回归测试:对已修复功能\更新后对已测内容再次测
质量模型目的
衡量(测试)软件质量的维度
质量模型
功能、性能、兼容、易用、安全、可靠性、移植性、维护性,其中加红为必须项。
本文为软件测试学习笔记,持续更新中…
如果我的内容对你有帮助,希望可以收获你的点赞、评论、收藏。