IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> 软件测试常见的问题概略 -> 正文阅读

[开发测试]软件测试常见的问题概略

什么是软件测试?

  • 测试软件是否满足用户的需求

软件测试和调试的区别?

  1. 目的不同
    • 调试是开发人员查看自己写的代码是否实现自己想让代码实现的功能
    • 软件测试是测试人员查看软件是否实现用户的需求
  2. 角色不同
    • 软件测试:黑盒测试工程师,白盒测试工程师,开发人员
    • 软件调试:开发人员
  3. 阶段不同
    • 软件调试:开发阶段
    • 软件测试:整个软件开发的生命周期

软件开发的生命周期

  • 需求
  • 计划
  • 设计
  • 编码
  • 测试
  • 运行维护

你为什么选择软件测试这个职业?

  • 兴趣
  • 技能:代码能力
  • 抗压力和责任感(讲故事)

你学习了软件开发方面的知识,为什么选择软件测试?

  • (讲故事)

    测试发生在整个软件的生命周期

软件开发的过程

  • 用户需求
  • 软件需求
  • 开发编码
  • 测试
  • 运行上线

什么是BUG?

  • 当软件需求规格说明存在并且合理,软件功能和软件需求不相符,就说明软件错误

什么是测试用例?

  • 测试环境
  • 测试步骤
  • 测试数据
  • 预期结果
  • 标题
  • 重要性
  • 功能模块
  • 优先级
  • 执行方式

设计测试用例的模块

  1. 功能
  2. 界面
  3. 易用性
  4. 兼容性
  5. 性能
  6. 安全性
  7. 震动测试

开发模型

  • 敏捷开发:轻文档,轻流程,重目标,重产出(周期短,团队人员少,交付高质量可用的软件)
    • 角色:
      • PO,客户的代表方,整理客户需求,形成user story
      • SM,项目经理,管理整个开发流程,保证敏捷开发流程的顺利实施
      • ST,研发团队,各种技能人员组成,开发,测试,目标高质量可用的软件
    • 流程:
      • 产品发布会议
      • 迭代计划会议
      • 每日站会
      • 产品演示会议
      • 回顾会议

测试模型

  • V模型
    1. 用户需求
    2. 需求分析与系统
    3. 概要设计
    4. 详细设计
    5. 编码
    6. 单元测试
    7. 集成测试
    8. 系统测试
    9. 验收测试
  • W模型
    1. 用户需求 验收测试准备
    2. 需求分析与系统设计 系统测试准备
    3. 概要设计 集成测试准备
    4. 详细设计 单元测试准备
    5. 编码 单元测试
    6. 集成 集成测试
    7. 实施 系统测试
    8. 交付 验收测试

软件测试的生命周期(软件测试的流程是什么)

  1. 需求分析

    验证需求的合理性,分析需求,细化需求

  2. 测试计划

    需要的人员,时间,测试目的,测试范围

  3. 测试设计/开发

    根据需求提炼出来的功能点开发测试用例

  4. 测试执行

    执行测试用例,BUG,提BUG,回归测试

  5. 测试评估

    评估本次测试情况,BUG情况(遗留的BUG)测试用例执行情况

如何描述一个BUG(禅道)

  • 测试版本

  • 测试环境

    web系统 Windows,Mac,浏览器及其版本号

    app 手机品牌型号,系统(Android,iOS)

  • 测试步骤(具体数据)

  • 实际结果

  • 预期结果(和需求一致)

  • 其他附件(错误截图,错误日志等)

BUG的级别

  • 崩溃
  • 严重
  • 一般
  • 次要

当开发人员因为一个BUG和测试人员产生冲突时怎么办?

  • 先检查自己的描述是否有误
  • 站在用户的角度劝说开发
  • BUG的定级要有理有据
  • 开三方会议(产品经理、测试人员、开发人员一起讨论BUG解决方案)
  • 不断提高自己的业务水平和技术能力

具体设计用例的方法

  1. 等价类:把输入划分若干个等价类,任意取出一个,若可以通过测试用例,则这个测试用例代表的等价类测试用例通过(适用于用例无法穷举,不能一一进行测试)

    • 有效等价类
    • 无效等价类
  2. 边界值:针对输入和输出的边界进行测试用例的设计

  3. 因果图法:输入很多,且有不同的输入嘴和对应不同的输出,这时使用因果图法分析不同输入组合和输出之间的对应关系

    • 因果图设计测试用例的步骤:

      1. 分析出所有的输入和输出
      2. 找出输入和输出之间的关系
      3. 画出因果图
      4. 把判定表转换成测试用例
    • 恒等

      image-20210929001446020
    • [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Yder6vVc-1633252697808)(/Users/cola/Library/Application Support/typora-user-images/image-20210929001257780.png)]

    • image-20210929001320806
    • image-20210929001401254
  4. 场景设计法

    • 找出功能点设计
  5. 错误猜测法

    • 根据测试人员的直觉、知识、经验、判断软件的哪一块有问题,专门针对性的设计测试用例。适合作为一种补充设计测试用例的方法。
  6. 正交法

    • 正交法设计测试用例的步骤:

      1. 找出所有输入变量,确定因素数
      2. 确定变量的取值,确定水平数
      3. 确定正交表的行和列
      4. 根据正交表的性质填写正交表
      5. 把正交表的每一行对应写成一个测试用例
      6. 补充认为重要的但没有体现在正交表中的测试用例
    • 根据正交性选出最优的水平组合进行实验,用实验的结果来分析这个测试用例的结果

    • 正交表的性质:

      • 每一列不同数据出现的次数一样多
      • 任意两列各数据组合出现的次数一样多

按照开发阶段划分

  • 单元测试(模块)
  • 集成测试(接口)
  • 系统测试(相当于黑盒测试)
    • 对功能,性能,易用性,安全性,兼容性,可靠性,可移植性等
    • 回归测试:属于系统测试,当系统引入新代码的时候,进行回归测试
    • 回归测试的策略:自动化测试
    • 冒烟测试:对系统主要功能和核心流程进行测试
  • 验收测试

按照实施组织区分

  • α测试
  • β测试
  • 第三方测试

按照是否运行划分

  • 静态测试(看代码)

什么是黑盒测试和白盒测试?

  • 黑盒测试:把软件当成一个黑色的盒子,不关心其内部结构,逻辑,功能的实现,只关心它的输入和输出

    • 测试方法:
      1. 等价类划分
      2. 因果图
      3. 错误猜测
      4. 边界值
      5. 场景法
    • 按照开发阶段划分:
      1. 集成测试
      2. 系统测试
      3. 验收测试
  • 白盒测试:把软件当成一个白色透明的盒子,测试软件内部代码的结构、逻辑、功能是否满足用户需求

    • 测试方法:

      1. 语句覆盖
      2. 循环覆盖
      3. 逻辑覆盖
        • 路径覆盖
        • 条件覆盖
        • 判定覆盖
        • 条件组合
        • 判定组合
  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2021-10-06 12:32:02  更:2021-10-06 12:32:45 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/18 2:31:45-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码