一篇文章学会功能测试(手工测试)

news/2024/11/26 5:47:19/

目录

    • **幕布思维导图链接:https://www.mubu.com/doc/48eF6fpTR9s**
    • 面试项目介绍
      • 项目的作用
      • 项目的用户群体
      • 项目的业务,模块
      • 项目中使用到的技术
    • 项目测试流程
      • 测试流程
      • 何时开始执行
      • 用例执行方式
      • 执行结果记录
    • 测试方法
      • 业务测试
        • 测试方法
        • 测试用例编写流程
        • 为什么要测试业务流程
        • 业务流程的来源
      • 单模块测试
        • 测试方法
        • 常见组件的测试
        • 提取测试点生成测试用例流程
        • 测试用例编写的一些注意事项
    • 工作流程图
    • 提交Bug流程(缺陷管理工具)
      • 严重程度
      • 优先级
      • 重现步骤
      • 流程
      • 登记缺陷
      • 跟进缺陷
      • 回归缺陷(回归测试)
      • 报表
    • 常见面试题
    • 测试报告
      • 报告详情
    • 缺陷报告


👍 点赞,你的认可是我创作的动力!

⭐️ 收藏,你的青睐是我努力的方向!

✏️ 评论,你的意见是我进步的财富!


幕布思维导图链接:https://www.mubu.com/doc/48eF6fpTR9s

面试项目介绍

项目的作用

  • 简要描述项目的主要功能和目的。

项目的用户群体

  • 目标用户是谁,例如企业客户、个人用户等。

项目的业务,模块

  • 介绍项目包含的主要业务和模块。

项目中使用到的技术

  • 列举项目中使用的技术栈、工具和框架。

项目测试流程

测试流程

  1. 需求分析评审
  2. 编写测试计划
  3. 设计测试用例
    • 测试策略
      • 先执行业务测试,后执行单模块测试(冒烟测试)
      • 用例的优先级:
        • 业务的正向P0
        • 业务的逆向P1
        • 模块的正向P2
        • 模块的逆向P3
    • 业务测试
    • 单模块测试
  4. 执行测试用例
  5. 缺陷跟踪管理
  6. 编写测试报告

何时开始执行

  • 冒烟测试通过后:
    • 按照测试计划约定的时间
    • 测试环境已经准备就绪

用例执行方式

  • 逐条执行,最好按优先级执行。
  • 按照模块重要性逐一执行。

执行结果记录

  • 测试失败: fall
  • 测试通过: pass
  • 测试阻塞: block(前置条件无,不能执行测试用例)
  • 功能缺少: N/A

测试方法

业务测试

测试方法
  • 流程图法(场景法)
    • 椭圆形: 开始和结束
    • 长方形: 过程
    • 菱形: 判断条件
    • 单箭头线
测试用例编写流程
  1. 根据流程图找出业务路径(从开始到结束的每一条线路)
  2. 设计测试用例覆盖业务路径(用例数量=路径数量)
为什么要测试业务流程
  • 优先验证核心业务,证明开发提测版本具备可测性(冒烟测试)
业务流程的来源
  • 正常情况: 产品的需求文档提供
  • 特殊情况: 测试人员基于业务操作绘制流程图

单模块测试

测试方法
  • 等价类

    • 有效等价类(满足需求)
    • 无效等价类(不满足需求:长度,类型,空,规则)
  • 边界值

    • 结合等价类进行用例设计,例如长度取值范围为6-16位:
      • 上点:6位、16位
      • 内点:10位
      • 离点:5位,7位,15位,17位
  • 判定表

    • 针对条件组合进行测试:
      • 条件桩:所有条件
      • 动作桩:所有结果
      • 条件项:每个条件取值(是/否,y/n)
      • 动作项:基于每种条件组合确定对应结果
常见组件的测试
  • 下拉列表测试点

    • 枚举型(可以在管理员端进行设置)
    • 正向: 第一个选项,中间任意一个选项,最后一个选项
    • 逆向: 空
  • 输入框

    • 等价类
    • 边界值
  • 验证码

    • 正向: 与图片/短信内容一致
    • 逆向: 与图片/短信内容不一致,空,过期
  • 图片上传

    • 支持图片格式:png, jpg, jpeg
    • 图片大小限制,图片数量限制
    • 上传方式:拖拽,点击上传
  • 单选框测试点

    • 前置条件有默认选项,测试点只有正向
    • 前置条件无默认选项,正向和逆向都需要覆盖
  • 选择城市

    • 正向: 选择省和城市
    • 逆向: 只选择省,选择城市,不选择
  • 充值与提现

    • 搜索:显示用户名关键字对应的借款申请(如用户名搜索)
  • 列表

    • 列表头:打开编辑页面,打开审核页面
    • 列表数据:数据为空,不超过1页,多页
    • 翻页:首页,末页,具体页码,上一页,下一页
提取测试点生成测试用例流程
  1. 根据需求提取测试点,划分为正向和逆向,列出数据。

  2. 合并原则:

    • 一条测试用例尽可能覆盖多个正向
    • 一条测试用例只能覆盖一个逆向
  3. 列出关于正向和逆向的测试用例。

测试用例编写的一些注意事项
  • 除了操作测试,还要验证显示信息和实际结果是否一致。
  • 正向测试用例应覆盖多个有效等价类。
  • 标题尽量不重复。
  • 如果测试步骤需要操作特定用户数据,前置条件应描述所使用的用户信息。
  • 测试数据主要是输入内容,避免添加不必要的内容。
  • 错误数据应标红。

工作流程图

提交Bug流程(缺陷管理工具)

严重程度

  • 1: 主业务或主功能问题(如电商APP下单走不通)
  • 2: 次要业务或功能问题(如评论功能bug)
  • 3: 兼容性和易用性问题(如输入框没提示文字,浏览器兼容问题)
  • 4: 建议性bug

优先级

  • P0: 必须立刻修改优化(24小时内)
  • P1: 在上线版本前修复
  • P2: 后续版本修复

重现步骤

  • 前置条件
  • 测试步骤
  • 实际结果(有图有真相)
  • 预期结果

流程

  • 禅道:点击测试→点击Bug→进入Bug中心
  • Jira:点击新建→创建问题

登记缺陷

  • 确保缺陷可复现。
  • 一个缺陷报告只描述一个bug。

跟进缺陷

  • 每日根据Jira上的缺陷情况,驱动开发修复。
  • 目标:缺陷修复不影响测试进度和上线时间。

回归缺陷(回归测试)

  • 对已解决的问题进行再次测试,确保修复代码有效。

报表

  • 在禅道中点击报表生成报告。

常见面试题

  1. 缺陷组成的要素
  2. 缺陷怎么定级
  3. 介绍一下你们公司的缺陷跟踪流程
  4. 提交的Bug开发不认可怎么处理
  5. 偶发性Bug怎么处理
  6. 线上环境出Bug后怎么处理
  7. 你印象深刻的Bug?
  8. 如何定位前后端Bug?

测试报告

报告详情

  • 报告目录
    1. 测试过程的回顾
    2. 测试统计分析
    3. 测试结果确认
    4. 测试总结与改进

缺陷报告

  • 描述缺陷的详细信息,包括复现步骤、实际结果、预期结果等。

http://www.ppmy.cn/news/1549991.html

相关文章

Oracle 数据库 IDENTITY 列

IDENTITY列是Oracle数据库12c推出的新特性。之所以叫IDENTITY列,是由于其支持ANSI SQL 关键字 IDENTITY,其内部实现还是使用SEQUENCE。 不过推出这个新语法也是应该的,毕竟MyQL已经有 AUTO_INCREMENT列,而SQL Server也已经有IDENT…

autogen框架中使用chatglm4模型实现react

本文将介绍如何使用使用chatglm4实现react,利用环境变量、Tavily API和ReAct代理模式来回答用户提出的问题。 环境变量 首先,我们需要加载环境变量。这可以通过使用dotenv库来实现。 from dotenv import load_dotenv_ load_dotenv()注意.env文件处于…

C语言-数学基础问题

一.奇数、偶数问题 1.从键盘上输入一个整数,判断并输出它是奇数还是偶数。 //从键盘上输入一个整数,判断并输出它是奇数还是偶数。 main() {int i;printf("输入一个整数:\n");scanf("%d",&i);if(i%20)printf("它是偶数\n…

使用 OpenCV 进行视频中的行人检测

在计算机视觉领域,行人检测是一个重要的研究方向,它在视频监控、自动驾驶、人机交互等领域都有着广泛的应用。本文将介绍如何使用 OpenCV 库来实现视频中的行人检测。 环境准备 首先,我们需要安装 OpenCV 库。可以通过以下命令来安装&#…

MySQL数据库的算法

MySQL数据库中使用的算法主要包括以下几种: • 联接算法: • Nested-Loop Join(NLJ):这是一种基本的连接实现算法,通过双层循环比较数据来获取结果。MySQL数据库根据不同的使用场合,支持两种N…

神经网络12-Time-Series Transformer (TST)模型

Time-Series Transformer (TST) 是一种基于 Transformer 架构的深度学习模型,专门用于时序数据的建模和预测。TST 是 Transformer 模型的一个变种,针对传统时序模型(如 RNN、LSTM)在处理长时间依赖、复杂数据关系时的限制而提出的…

C#之WPF的C1FlexGrid空间的行加载事件和列事件变更处理动态加载的枚举值

列变更,EnumDataItemStackClassTypeList数据源是枚举配置,实时查询到VM缓存的,如果是定义的枚举就不用这个麻烦了,直接在对象里面获取枚举值匹配,即 public string ApplyStatusName { get { retur…

selinux及防火墙

selinux说明 SELinux 是 Security-Enhanced Linux 的缩写,意思是安全强化的 linux 。 SELinux 主要由美国国家安全局( NSA )开发,当初开发的目的是为了避免资源的误用。 httpd进程标签(/usr/share/nginx/html &#…