软件测试基础

目录

软件测试基础

软件测试的生命周期

[如何描述一个 bug](#如何描述一个 bug)

[bug 的级别](#bug 的级别)

[bug 的生命周期](#bug 的生命周期)

产生争执怎么办

如何开始第一次测试

[测试的执行和 bug 的管理](#测试的执行和 bug 的管理)

[如何发现更多的 bug](#如何发现更多的 bug)


软件测试基础

本节内容:

  • 软件测试的生命周期

  • 如何描述一个 bug

  • 如何定义 bug 级别

  • bug 的生命周期

  • 如何开始第一次测试

  • 测试的执行和 bug 管理

  • 产生争执怎么办

软件测试的生命周期

软件的生命周期: 需求分析 -> 计划 -> 设计 -> 编码 -> 测试 -> 运行维护

软件测试的生命周期: 需求分析 -> 测试计划 -> 测试设计、测试开发 -> 测试执行 -> 测试评估

需求分析:需求是否完整、是否正确 测试计划:确定软件由谁测试,什么时候结束测试,测试哪些模块 测试设计:编写测试用例(手工测试、自动化测试用例),编写测试工具 执行测试用例:执行测试用例 测试评估:测试人员产生一个测试报告

测试报告: 测试人员 测试时间:开始时间~结束时间 开发人员 开发时间 测试用例 bug 文档:需求文档、测试文档

如何描述一个 bug

  1. 发现问题的版本 开发人员需要知道出现问题的版本,才能获取到对应版本的代码来重现故障,并且版本的表示有利于统计和分析每个版本的质量。

  2. 问题出现的环境 环境分为硬件环境和软件环境,如果是 web 项目,需要描述浏览器版本,客户机操作系统,如果是 app 项目,需要描述机型,分辨率,操作系统版本等。详细的环境有利于故障的定位。

  3. 错误重现的步骤 描述问题重现的最短步骤

  4. 预期行为的描述 要让开发人员指导怎么样子=才是正确的,尤其要以用户的角度来描述符程序的行为是怎么样的。如果是一句需求提出的故障,能写明需求的来源是最好的。

  5. 错误行为的描述 描述错误的现象。crash等上产log,ui问题可以截图

  6. 其他 某些公司会有一些其他的要求,例如故障的分类:功能故障,界面故障,兼容性故障等。有些由优先级的分类,严重影响测试需要开发人员优先修改,可以设计优先级为高。

  7. 不要把多个 bug 放在一起 在无法确定是同一段代码造成的故障时,不要把 bug 放在一起提交。

bug 的级别

bug 的级别一般的定义会是有:p0, p1, p2, ...

  • 奔溃

  • 严重

  • 一般

  • 次要

奔溃:这个bug会导致程序运行失败等... 严重:这个bug不会导致程序奔溃,但是也是需要马上处理的 一般:这个bug并不是特别严重,可以先不处理 次要:次要的bug就是基本不会影响使用

bug 的生命周期

New:发现问题,还没有指派给谁处理 Open:将 bug 指派给开发 Fixed:开发人员将 bug 修复结束了 Reopen:将 bug 打回 Closed:关闭 Rejected:不是 bug 拒绝 Delay:延迟处理

产生争执怎么办

  1. 确保操作没有问题,确保自己对需求饿理解没有问题

  2. 好好的沟通

  3. 站在用户度考虑问题

  4. 不光要发现问题,还要提出解决方案

  5. 开第三方会议 开会之前:一定要明确问题产生的原因,问题是什么,解决方案是什么 开会之后:问题要不要解决,什么时候解决,谁解决

如何开始第一次测试

  1. 充分理解需求 文档(产品文档+技术文档) 项目的功能问题找产品,模块底层如何实现找开发

  2. 确定测试计划

  3. 执行测试 bug 开发修复之后一定要进行验收

  4. 项目上线+维护

测试的执行和 bug 的管理

会有一个系统用于 bug 的管理,当测试发现 bug 后提交到 bug 管理系统,然后由开发在这个系统中将 bug 处理。

如何发现更多的 bug

  1. 一般情况下 80% 的 bug 发生在 20% 的模块

  2. 同样 80% 的bug 出现在 20% 的开发人员

  3. 多进行逆向思维和发散性思维

  4. 不要局限于用例和文档

  5. 尽早介入项目

相关推荐
帅得不敢出门1 天前
安卓使用memtester进行内存压力测试
android·压力测试·测试·硬件测试
每周都想吃火锅7 天前
如何在postman中传入文件参数
postman·测试
HinsCoder9 天前
【测试】——Selenium API (万字详解)
自动化测试·笔记·学习·selenium·测试工具·web·测试
大柏怎么被偷了11 天前
【测试】什么是需求?
测试
郝同学的测开笔记12 天前
PyQt6 中的布局管理
后端·python·测试
南风与鱼13 天前
软件测试 BUG 篇
bug·测试
四格13 天前
如何使用 Bittly 进行基于串口的自动化测试
嵌入式·测试
Lossya15 天前
【自动化测试】常见的自动化遍历工具以及如何选择合适的自动化遍历工具
自动化测试·功能测试·测试工具·自动化·测试
HinsCoder15 天前
【渗透测试】——Upload靶场实战(1-5关)
笔记·学习·安全·web安全·渗透测试·测试·upload靶场
大柏怎么被偷了16 天前
【软件测试】测试的岗位有哪些?
软件测试·测试