软件测试基础理论(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/622397/

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

(0)

大家都在看

  • IDEA springboot “spring-boot-maven-plugin“报红问题的解决方法

    使用环境 项目环境:Idea 2020.2.3、 Maven 3.6.3 、springboot 2.1.4 本人在创建springboot项目时spring-boot-maven…

    数据库 2023年6月14日
    078
  • mysql-事务

    1.事务(transaction)事务是业务逻辑的基本单元。 [En] A transaction is a basic unit of business logic.每一个事务由…

    数据库 2023年5月24日
    072
  • 数据类型拓展

    public class Demo03 { public static void main(String[] args) { //整数拓展 :进制 二进制0b 十进制 八进制0 十…

    数据库 2023年6月11日
    060
  • typora最后的免费版本

    需要的阿里云盘自取 「typora最后的免费版本」https://www.aliyundrive.com/s/p3Ci2gbgwYh点击链接保存,或者复制本段内容,打开「阿里云盘」…

    数据库 2023年6月6日
    074
  • mysql数据库 Window下安装

    关系数据库,是建立在关系数据库模型基础上的数据库,借助于集合代数等概念和方法来处理数据 库中的数据,同时也是一个被组织成一组拥有正式描述性的表格,该形式的表格作用的实质是装载着数 …

    数据库 2023年6月9日
    083
  • MySQL 基础

    MySQL 基础 SQL 介绍 SQL (Structured Query Language:结构化查询语言) 是用于管理关系数据库管理系统(RDBMS)。 SQL 的范围包括数据…

    数据库 2023年5月24日
    078
  • 数据库

    建库操作 #创建数据库(默认字符集编码) create database test20210420 #创建数据库的时候指定字符集编码以及字符校验规则 create database…

    数据库 2023年6月16日
    0108
  • Host-Only模式下虚拟机无法联网问题

    环境: 镜像:Linux CentOS7——————————…

    数据库 2023年6月11日
    080
  • mysql @rownum := @rownum+1 方式获取行号

    MySQL: mysql中没有获取行号的函数,因此需要通过一些自定义语句来进行获取。通常做法是,通过定义用户变量@rownum来保存表中的数据。通过赋值语句@rownum:=@ro…

    数据库 2023年6月16日
    073
  • CentOS7安装配置Tomcat

    1.安装jdk jdk 安装有两种方式,本文只介绍rpm格式的安装包 安装jdk:在安装包所在的目录下执行如下语句 安装完成后,默认安装在/usr/java下。 配置环境变量,执行…

    数据库 2023年6月11日
    062
  • Windows10 下使用 telnet 命令

    正常情况下 windows 是使用不了 telnet 命令的: 打开控制面板-》程序和功能-》启用或关闭 Windows 功能 勾选 “Telnet客户端”…

    数据库 2023年6月14日
    072
  • JUC部分并发类使用方式

    下面介绍的是JUC包下一些线程安全类的一些简单使用和一些小demo。 信号量,即可以同时使用的线程数,tryrequire就是将信号量减一,release就是信号量+1,当等于0就…

    数据库 2023年6月11日
    055
  • mysql索引

    MySQL索引: MySQL索引的建立对于MySQL的高效运行是很重要的,索引可以大大提高MySQL的检索速度。 1.创建索引1.1单独创建索引 1.2修改表结构创建索引 1.3创…

    数据库 2023年6月11日
    082
  • 用Python做一个中秋抢购月饼的脚本

    ; 序言 每逢佳节倍思亲,想买个东西给家里,结果发现手速不够,网速不够快,没有时间下单等等各种原因导致最后想买的东西售罄了… 甚至跟你一起抢购的可能是脚本,太真实了! …

    数据库 2023年6月14日
    092
  • Maven项目POM文件设置依赖

    https://www.cnblogs.com/stars-one/p/10958796.html 可以参考这个链接 这里个添加依赖 如果在如上界面找不到 请设置一下本地仓库 Or…

    数据库 2023年6月9日
    0106
  • 界面酷炫,功能强大!这款 Linux 性能实时监控工具超好用!

    对于维护、管理Linux系统来说,它的性能监控非常重要,特别是实时监控数据,这个数据有利于我们判断服务器的负载压力,及时调整资源调配,也有助于更好的服务于业务。所以,今天民工哥给大…

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