当前位置: 首页 > news >正文

软件测试相关问题

什么是软件测试

软件测试是检查软件是否按预期运行的过程

软件测试的作用

保证质量

降低成本

提升体验

测试哪些方面

质量模型:是确保软件在功能、性能、安全性、兼容性、易用性、可维护性、可迁移性、可靠性方面达到预期质量水平

  • 功能性:能不能用

  • 性能:快不快

  • 安全性:数据安全否

  • 兼容性:其他能用否

  • 易用性:好不好用

如何开展测试

软件产生过程

需求分析:收集需求,分析可行性,撰写需求规格说明书

设计阶段:架构设计,详细设计

编码阶段:根据设计文档编写代码

测试阶段:单元测试、集成测试、系统测试、验收测试

部署阶段:部署环境

维护阶段:修复缺陷、功能扩展、性能优化

软件测试流程

需求评审:确保各部门需求理解一致

计划编写:测什么、谁来测、怎么测

用例设计:验证项目是否符合需求的操作文档

用例执行:项目模块开发完成开始执行用例文档实施测试

缺陷管理:对缺陷进行管理的过程

测试报告:实施测试结果文档

常见测试分类

按测试阶段划分

单元测试:针对程序源代码进行测试

集成测试:又称接口测试,针对模块之间访问地址进行测试

系统测试:对整个系统进行测试包括功能、兼容、文档等测试

验收测试:主要分为内测、公测,使用不同人群来发掘项目缺陷

按代码可见度进行划分

黑盒测试:源代码不可见,UI功能可见

灰盒测试:部分源代码可见,功能不可见

白盒测试:全部代码可见,UI功能不可见

测试用例

什么是测试用例

为测试项目而设计的执行文档

测试用例作用

  • 防止漏测

  • 实施测试的标准

用例设计编写格式

  • 用例编号:项目-模块-编号

  • 用例标题:预期结果(测试点)

  • 项目/模块:所属项目或模块

  • 优先级:用例的重要程度或影响力P0-P4(P0最高)

  • 前置条件:要执行此条用例,有哪些前置操作

  • 测试步骤:描述操作步骤

  • 测试数据:操作的数据,没有可以为空

  • 预期结果:期望达到的结果

等价类划分

在所有测试数据中,具有某种共同特征的数据集合进行划分

有效等价类:满足需求的数据集合

无效等价类:不满足需求的数据集合

适用场景

需要有大量数据测试输入,但没法穷举的地方

  • 输入框

  • 下拉列表

  • 单选复选框

边界值分析法

边界范围节点

  • 上点:边界上的点

  • 离点:距离上点最近的点(刚好大于、刚好小于)

  • 内点:范围内的点(区间范围内数据)

选择上开内闭外,开区间选择内部离点,闭区间选择外部离点

适用场景

典型:有边界范围的输入框类测试

判定表法

一种以表格形式表达多条件逻辑判断的工具

判定表中贯穿条件项和动作项的一列就是一条规则

  • 条件桩:列出问题中所有条件

  • 动作桩:列出问题中可能采取的操作

  • 条件项:列出条件对应的取值

  • 动作项:列出条件项的、各种取值下应采取的动作结果

适用场景

  • 有多个输入条件,多个输出结果。输入条件之间有组合关系,输入输出间有制约关系

  • 一般适用于条件组合数量较少的情况,如果条件超过四个,就不适合覆盖所有条件,应采用正交法来解决

场景法

业务测试覆盖

使用流程图

先测试业务再测试单页面

业务用例是根据流程图来梳理的,需要先了解流程图

缺陷

软件在使用过程中存在的任何问题都叫软件的缺陷,简称bug

缺陷判定标准

  • 少功能

  • 功能错误

  • 多功能

  • 隐形功能错误

  • 不易使用

缺陷产生原因

  • 需求阶段:需求描述不易理解,有歧义、错误等

  • 设计阶段:设计文档存在错误或者缺陷

  • 编码阶段:代码出现错误

  • 运行阶段:软硬件系统本身故障导致软件缺陷

软件缺陷的核心内容

  • 缺陷的标题:描述缺陷的核心问题

  • 缺陷的预置条件:缺陷产生的前提

  • 缺陷的复现步骤:复现缺陷的过程

  • 缺陷的预期结果:希望得到的结果

  • 缺陷的实际结果:实际得到的结果

  • 缺陷的必要附件:图片、日志等信息

缺陷提交要素

  • 缺陷报告编号:缺陷的唯一性标志

  • 严重程度

    • 严重:主功能

    • 一般:次要功能

    • 微小:易用性、界面

    • 建议:建议性问题

  • 缺陷优先级

    • priority0:24小时内解决

    • priority1:发布前修复

    • priority2:下一个版本中修复

  • BUG类型:代码错误、兼容性问题、设计缺陷、性能问题

  • 缺陷状态

    • NEW:新建

    • OPEN:打开

    • CLOSE:关闭

    • POSTPONED:延期

相关文章:

  • 蓝牙无线串口入门使用教程(以大夏龙雀 WF24 和 BT36 为例)
  • PCI总线概述
  • 【开源工具】:基于PyQt5的智能网络驱动器映射工具开发全流程(附源码)
  • Java 大视界——Java大数据在智能安防视频监控中的异常事件快速响应与处理机制
  • 动态规划2——路径动态规划
  • 【消息队列】——如何实现消息保序
  • 科技文明的奇妙锻造之旅
  • 实时监控、秒级决策:镜舟科技如何重塑融资融券业务数据处理模式
  • Appium+python自动化(二十一)- Monkey指令操作手机
  • 智能云打印机EN 18031申请认证流程
  • Python—turtle绘图库使用方法
  • flutter 的lottie执行一次动画后关闭
  • 体育赛事直播平台的数据架构:从实时统计到深度洞察
  • MAC-苹果电脑专业卸载工具AppCleaner
  • 用MATLAB打造智能温度监测系统:从实时绘图到预测分析
  • 「pandas 与 numpy」数据分析与处理全流程【数据分析全栈攻略:爬虫+处理+可视化+报告】
  • 从0到1构建高并发秒杀系统:实战 RocketMQ 异步削峰与Redis预减库存
  • Spring MVC 入门案例:从代码到原理的深度剖析
  • Kafka问题排查笔记
  • 技术专栏|LLaMA家族——模型架构
  • 网站一年多少钱?/深圳关键词推广优化
  • 营销网站制作比较好的/网络营销第三版课本
  • 搜索推广方案/网站排名优化外包
  • 通过云主机建设网站/友链互换平台推荐
  • 宁波外贸网站建设/免费舆情监测平台
  • ae模板素材网站/求个没封的网站2022