软件测试基础理论(2)

一, 为什么要进行软件测试

为了通过软件测试,尽可能减少bug,保证软件质量

二, 软件测试的定义

为了发现软件中的缺陷而执行程序或系统的过程

三, 软件测试的目的

以最少的人力物力发现软件中的缺陷和潜在的问题,满足客户的需求

四, 软件测试的原则

  • 测试应该追溯到需求
  • 尽早测试,不断测试
  • 穷尽测试不可能,需要及时终止
  • 80%的bug来源于20%的模块
  • 程序员避免检查自己的程序(不代表不用自测)
  • 要有计划的,有目的的进行测试
  • 测试用例既要正向用例,也需要反向用例
  • 要彻底检查用例的执行结果(查看相关联的模块结果)
  • 保存测试过程中的相关文档和数据,为项目管理提供依据

五, 软件测试的对象

程序,文档,数据(不同阶段,测试对象也会不同, eg: 需求阶段测试, 测试对象就是需求文档)

六, 软件测试分类的划分标准

  • 按阶段:单元测试, 集成测试, 系统测试, 验收测试
  • 程序是否运行: 动态测试, 静态测试
  • 是否查看代码: 白盒测试, 黑盒测试, 灰盒测试
  • 其他: 兼容测试, 安全测试, 回归测试, 冒烟测试, 随机测试, app测试, 接口测试

七, 单元测试UT(Unit Testing)

  • 对软件的最小组成单元(方法,模块,类) 进行的测试, 主要测试单元内部的数据结构,逻辑控制,异常处理
  • 驱动模块:调用其他模块的模块
  • 桩模块:被其他模块调用的模块

八, 集成测试IT(Integration Testing) 系统集成测试SIT(System Integration Testing)

  • 集成测试也叫组装测试,是属于灰盒测试一种,一般通过接口测试来进行系统集成,包括系统内部接口和外部接口
  • 集成测试的方式:非增量式,增量式
  • 非增量式:一次性集成所有模块
  • 增量式:

九, 系统测试ST(System Testing)

是对整个系统的测试,将硬件、软件、操作人员看作一个整体,检验它是否有不符合系统说明书的地方。这种测试可以发现系统分析和设计中的错误。如安全测试是测试安全措施是否完善,能不能保证系统不受非法侵入。再例如,压力测试是测试系统在正常数据量以及超负荷量(如多个用户同时存取) 等情况下是否还能正常地工作。

Original: https://www.cnblogs.com/cn-zhouchao/p/16555523.html
Author: 小胖子学编程
Title: 软件测试基础理论(2)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/581719/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 19-TCP、UDP的区别和应用场景

    可靠性TCP 提供交付保证,这意味着一个使用TCP协议发送的消息是保证交付给客户端的,如果消息在传输过程中丢失,那么它将重发。UDP是不可靠的,它不提供任何交付的保证,一个数据包在…

    Linux 2023年6月7日
    085
  • JuiceFS 在多云存储架构中的应用| 深势科技分享

    2020 年末,谷歌旗下 DeepMind 研发的 AI 程序 AlphaFold2 在国际蛋白质结构预测竞赛上取得惊人的准确度,使得” AI 预测蛋白质结构&#822…

    Linux 2023年6月14日
    071
  • 阿里云-docker上安装redis

    1、取最新版的 Redis 镜像 这里我们拉取官方的最新版本的镜像: $ docker pull redis:latest 2、查看本地镜像 使用以下命令来查看是否已安装了 red…

    Linux 2023年5月28日
    089
  • 设计模式之模板方法模式(TemplateMethod)

    代码是用java写的 看了本java书发现他的思想确实是先进!!! 主要还是继承和抽象方法的一些应用看代码吧,我不喜欢扯淡,是干啥的百度都有。 意图:定义一个操作中的算法的骨架,而…

    Linux 2023年6月7日
    099
  • MySQL 批量修改库、表、列的排序规则

    1.表字段修复 SELECT TABLE_SCHEMA ‘数据库’, TABLE_NAME ‘表’, COLUMN_NAME ‘字段’, CHARACTER_SET_NAME ‘原…

    Linux 2023年6月7日
    085
  • 【Linux】【专项突破】CentOS下软件安装

    rpm yum软件仓库 配置文件 缓存处理 清理缓存 重构缓存 查询包的依赖关系 rpm 普通下载安装 rpm -ivh 包名 更新 rpm -Uvh 包全名 查询 rpm -q …

    Linux 2023年6月14日
    0122
  • 初识MySQL数据库

    一 、引言 假设现在你已经是某大型互联网公司的高级程序员,让你写一个火车票购票系统,来hold住双十一期间全国的购票需求,你怎么写? 由于在同一时段抢票的人数太多,所以你的程序不可…

    Linux 2023年6月14日
    0123
  • 代码中的软件工程复习

    编写高质量代码的基本方法 通过控制结构简化代码 通过数据结构简化代码 一定要有错误处理 注意性能优先的代价 拒绝修修补补不断重构代码 性能优先策略带来的隐藏代价 软件工程师的人力成…

    Linux 2023年6月8日
    0102
  • 【证券从业】金融基础知识-第五章 债券01

    注1:后续学习并整理到第八章,全书完结后再合并成一个笔记进行源文件分享 注2:本章内容巨多,大约分为两篇文章记录消化 posted @2022-06-08 01:30 陈景中 阅读…

    Linux 2023年6月13日
    081
  • 自动化集成:Pipeline整合Docker容器

    前言:该系列文章,围绕持续集成:Jenkins+Docker+K8S相关组件,实现自动化管理源码编译、打包、镜像构建、部署等操作; 本篇文章主要描述流水线集成Docker用法。 一…

    Linux 2023年5月27日
    0116
  • sed命令

    对文件的操作无非就是”增删改查”,怎样用sed 命令实现对文件的”增删改查”,玩转sed 是写自动化脚本必须的基础之一 sed遵循简…

    Linux 2023年6月13日
    095
  • Windows Server 新增磁盘处于脱机状态解决办法

    解决方案: Cmd命令行操作如下: 1,进入diskpart模式 2、列出磁盘情况 3、选择脱机的磁盘 4、联机磁盘 5、清除磁盘属性 6、进入磁盘管理,提示初始化 每天记录一点,…

    Linux 2023年6月8日
    0113
  • 音视频技术入门课-02 音频从采集到输出涉及哪些关键参数?

    我们平常听到的自然界的声音,比如说鸟鸣、水流,其实是一种模拟信号,声音是振动产生的一种声波,通过气态、液态、固态的物理介质传播并能被人或动物感知的波动现象。声音的频率一般会以赫兹(…

    Linux 2023年6月7日
    0101
  • mysql基本操作

    mysql常用命令: 1查询数据库 show database; 2切换库 use test; 3查看库里的表 show tables; 4查看表里的字段 desc tb_name…

    Linux 2023年6月6日
    0104
  • UWP 自定义密码框控件

    1. 概述 微软官方有提供自己的密码控件,但是控件默认的行为是输入密码,会立即显示掩码,比如 *。如果像查看真实的文本,需要按查看按钮。 而我现在自定义的密码控件是先显示你输入的字…

    Linux 2023年6月13日
    093
  • django Middleware

    Middleware简介 Middleware是一个轻量级的,全局性质的Django请求/响应处理钩子框架。所谓钩子框架是指在request请求到达Django之后,views视图…

    Linux 2023年6月7日
    0106
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球