01_软件测试

01_软件测试

学习目标

1、能复述软件测试的定义

2、能说出7种测试分类的区别

3、能说出质量模型的重点5项

4、能说出测试流程的6个步骤

5、能说出测试模板8个要素

认识软件及测试

什么是软件

image-20231227115758545

软件:控制计算机硬件工作的工具

软件的基本组成

image-20231227120139135

软件生产过程

image-20231227120413951

什么是软件测试

软件测试:使用技术手段验证软件是否满足使用需求

image-20231227120827719

软件测试的目的

减少软件缺陷(bug)保障软件质量!

测试主流技能

1、功能测试

image-20231227122825264

2、自动化测试

使用代码或工具代替手工,对项目进行测试

image-20231227122954176

3、接口测试

image-20231227123337086

4、性能测试-工具实现

模拟多人使用软件,查找服务器缺陷

image-20231227124021040

5、性能测试-代码实现

image-20231227124140318

总结

功能测试:测试主要验证程序的功能是否满足需求

自动化测试:使用代码或工具代替手工,对项目进行测试

接口测试:使用代码或工具验证程序中的接口是否访问正常

性能测试:模拟多人使用软件,查找服务器缺陷

常见的测试分类

1、按测试阶段划分

image-20231227125411783

2、按代码可见度划分

image-20231227125603508

总结

1、按阶段划分

  1. 单元测试:针对程序源代码进行测试
  2. 集成测试:真对程序接口进行测试
  3. 系统测试:针对程序功能、非功能进行测试
  4. 验收测试:使用不同用户(内测、公测)进行测试

2、按代码可见度划分

  1. 黑盒测试:不关注代码,针对程序UI(User Ineterface)功能进行测试
  2. 灰盒测试:针对程序部分代码进行测试(接口)
  3. 白盒测试:针对程序源代码进行测试

测试模型

质量模型

衡量一个优秀软件的维度

在这里插入图片描述

案例

需求

1、开发一款网络游戏(要求:10个主功能)

2、游戏支持web(浏览器)端、App端

3、游戏上线后预计每日,20W用户玩家在线

功能性

需求测试
10个功能功能数量为10个
功能详情功能正确实现
错误处理情况

性能

需求测试
预估每日在线人数20w服务器每秒处理请求数
服务器硬件配置是否满足

兼容性

浏览器操作系统手机
谷歌Windows 7分辨率
IEWindows 10品牌
火狐Windows 11系统
欧朋Linux网络
苹果

易用性

  1. 简洁
  2. 友好
  3. 流畅
  4. 美观

可靠性

  1. 无响应:出现无响应
  2. 卡顿:响应时间慢
  3. 死机:系统崩溃

安全

  1. 传输加密
  2. 存储加密

在这里插入图片描述

可移植性

  • 网站数据迁移

可维护性

代码分模块开发、核心代码要有相关说明

总结

质量模型:

功能、性能、兼容、易用、安全、可靠性、移植性、维护性

软件测试流程

测试流程

  1. 计划编写:测什么、谁来测、怎么测
  2. 用例设计:验证项目是否符合需求的操作文档
  3. 用例执行:项目模块开发完成开始执行用例文档实施测试
  4. 缺陷管理:对缺陷进行管理的过程
  5. 测试报告:实施测试结果文档
  6. 需求审批:确保各个部门需求理解一致

image-20231227150049627

总结

如何开展软件的测试工作

  1. 需求评审
  2. 编写测试计划
  3. 用例设计
  4. 用例执行
  5. 缺陷管理
  6. 测试报告

测试用例

用例

用例:用户使用的案例

  1. 是否能开机:打开手机按下电源键3秒钟,看是否能开机。
  2. 验证内存:打开手机设置查看内存是否为64G
  3. 验证屏幕:打开手机在白屏背景下检查屏幕是否黑色点。
  4. 检查运行速度:打开手机下载吃鸡游戏,是否运行流畅。

测试用例

测试用例:是为测试项目而设计的执行文档

测试用例的作用

  • 防止漏测
  • 实施测试标准

用例编写格式

  • 用例编号:项目_模块_编号
  • 用例标题:预期结果(测试点)
  • 模块/项目:所属项目或模块
  • 优先级:表示用例的重要程度或者影响力P0~P4(P0最高)
  • 前置条件:要执行此条用例,有哪些前置操作
  • 测试步骤:描述操作步骤
  • 测试数据:操作的数据,没有的话可以为空
  • 预期结果:期望达到的结果

在这里插入图片描述

用例练习

学习目标

  1. 能对穷举场景设计测试点
  2. 能对限定边界规则设计测试点
  3. 能对多条件依赖关系进行设计测试点
  4. 能对于项目业务进行设计测试点

等价类划分

  • 说明:在所有测试数据中,具有某种共同特征的数据集合进行划分
  • 分类:
    • 有效等价类:满足需求的数据集合
    • 无效等价类:不满足需求的数据集合
  • 步骤:
    • 明确需求
    • 明确有效和无效等价类,有效等价取1个值,每个无效集合取1个
    • 提取数据编写测试用例

案例-1

需求:验证QQ账号的合法性

要求:6~10位自然数

1、明确需求

  • 长度:6-10位
  • 类型:自然数

2、划分有效等价和无效等价

  • 有效:8位自然数
  • 无效:3位自然数、12位自然数、8位非自然数、为空

3、提取数据编写用例

  • 有效:12345678
  • 无效:123、123456789012、1234567a、null

image-20231228181211243

案例-2

需求:验证某城市电话号码正确性

要求:

  1. 区号:空或者是三位数字
  2. 前缀码:非“0”且非“1”开头的三位数字
  3. 后缀码:四位数字

分析

image-20231228191155717

用例

image-20231228191240624

适用场景

  • 针对:需要有大量数据测试输入,但是没有办法穷举测试的方法
    • 输入框
    • 下拉列表
    • 单选复选框
  • 典型代表:页面的输入框类测试

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/2660234.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

力扣算法-Day14

第202题. 快乐数 编写一个算法来判断一个数 n 是不是快乐数。 「快乐数」 定义为: 对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和。然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变不到 1。如果这个过程 结…

Rocky9 1.28安装kubernetes

1.环境准备 二进制安装比较复杂,但是也比较稳定,适用于线上环境使用。   本笔记参考自:https://github.com/cby-chen/Kubernetes ,针对文中内容,有部分镜像无法拉取等,还有一部分有点小问题,…

2024-软件测试工程师面试题,面试前一天刷效果更佳。

bug的定义,bug的周期 软件bug是指软件程序的漏洞和缺陷,测试工程师或用户所发现和提出的软件可改进的细节、或与需求文档存在差异的功能实现等生命周期中缺陷状态:新建-->指派-->已解决-->待验-->关闭 发现BUG-->提交BUG--&g…

如何本地部署Nextcloud结合cpolar搭建专属私有云盘远程访问(内网穿透)

文章目录 摘要1. 环境搭建2. 测试局域网访问3. 内网穿透3.1 ubuntu本地安装cpolar3.2 创建隧道3.3 测试公网访问 4 配置固定http公网地址4.1 保留一个二级子域名4.1 配置固定二级子域名4.3 测试访问公网固定二级子域名 摘要 Nextcloud,它是ownCloud的一个分支,是一个文件共享服…

高智能氛围感知兼具运动与豪华质感 EMEYA开启百万纯电新时代

在纯电动汽车成为刚需的时代,售价百万的纯电轿车应该拥有怎样的体验? 最近,路特斯推出一款百万纯电四门超跑轿车——EMEYA,这款车11月广州车展亮相并开启预定后,3小时内便订单即破300辆。一款百万级的电动汽车为何受到…

51单片机(STC8)-- GPIO输入输出

文章目录 I/O口相关寄存器端口数据寄存器端口模式配置寄存器(PxM0,PxM1)端口上拉电阻控制寄存器(PxPU)关于I/O的注意事项 配置I/O口I/O设置demoI/O端口模式LED控制(I/O输出)按键检测(I/O输入) S…

openGauss学习笔记-175 openGauss 数据库运维-备份与恢复-导入数据-管理并发写入操作示例

文章目录 openGauss学习笔记-175 openGauss 数据库运维-备份与恢复-导入数据-管理并发写入操作示例175.1 相同表的INSERT和DELETE并发175.2 相同表的并发INSERT175.3 相同表的并发UPDATE175.4 数据导入和查询的并发 openGauss学习笔记-175 openGauss 数据库运维-备份与恢复-导入…

vue3+vite组件中使用Cesium粒子系统

一、注意事项 1.图片的引用路径必须从根目录(即index.html所在的目录)开始,如果使用相对路径,也要返回到根目录再转到对应的目录。 //第一种,直接从根目录开始 image: src/assets/particles/Blowing Snow.png//第二种…

Flink Kafka[输入/输出] Connector

本章重点介绍生产环境中最常用到的Flink kafka connector。使用Flink的同学,一定会很熟悉kafka,它是一个分布式的、分区的、多副本的、 支持高吞吐的、发布订阅消息系统。生产环境环境中也经常会跟kafka进行一些数据的交换,比如利用kafka con…

贝叶斯算法的故事丨机器学习一文解读

今天分享的内容是贝叶斯算法的核心原理与应用,接下来,通过一个小故事让你快速理解贝叶斯。 杰克是一位聪明的探险寻宝家,有一天,他得到了一张藏宝图,上面标记了宝藏可能埋藏的几个地点:一个古老的城堡、一个…

《深入理解C++11:C++11新特性解析与应用》笔记四

第四章 新手易学,老兵易用 4.1 右尖括号>的改进 在 C98 中,有一条需要程序员规避的规则:如果在实例化模板的时候出现了连续的两个右尖括号 >,那么它们之间需要一个空格来进行分隔,以避免发生编译时的错误。C98 会将>&g…

什么是番茄时钟?如何利用番茄时钟提升工作/学习效率?

番茄时钟的由来“传说” ​ 弗朗西斯科西里洛在上大学期间,一度苦于学习效率的低下,一直不能专注于学习,或学习一会就会分心,于是他找了一个定时器,每次学习时他都设定一个时间进行倒计时,如此反复&#x…

25、Qt设备识别(简单的密钥生成器)

一、说明 在很多商业软件中,需要提供一些可以试运行的版本,这样就需要配套密钥机制来控制,纵观大部分的试用版软件,基本上采用以下几种机制来控制。 1、远程联网激活,每次启动都联网查看使用时间等,这种方…

获取b站合集视频时长最新可用代码(2023.12.28)小白也能用

在网上搜索获取b站分集视频时长的代码,发现大部分都过时了 原链接:已过时代码链接 我对原代码做出了部分修改,以下代码于2023.12.28测试(Edge浏览器) javascript: (function() {var hour 0;var minute 0;var secon…

labuladong日常刷题-双指针 | LeetCode 83删除排序链表中的重复元素 5最长回文子串

双指针操作链表与字符串 LeetCode 83 删除排序链表中的重复元素 2023.12.28 题目链接labuladong讲解[链接] ListNode* deleteDuplicates(ListNode* head) {/*暴力求解ListNode* cur new ListNode();ListNode* prenode cur;cur->next head;cur cur->next;while(cu…

从Java 8到Java 17:Spring Boot项目升级的终极指南

Java的世界一直在进步,随着Java 17的发布,众多开发者面临着将他们的Spring Boot应用从Java 8迁移到最新版本的任务。在这篇博客中,我将详细介绍如何平滑、高效地完成这一升级过程。从梳理可能的挑战到实际操作步骤,我将为你的升级…

Vue ThreeJs实现银河系行星运动

预览 可通过右上角调整参数&#xff0c;进行光影练习 代码 <template><div id"body"></div> </template> <script>import * as THREE from three import { OrbitControls } from three/examples/jsm/controls/OrbitControls import …

网络编程『简易TCP网络程序』

&#x1f52d;个人主页&#xff1a; 北 海 &#x1f6dc;所属专栏&#xff1a; Linux学习之旅、神奇的网络世界 &#x1f4bb;操作环境&#xff1a; CentOS 7.6 阿里云远程服务器 文章目录 &#x1f324;️前言&#x1f326;️正文TCP网络程序1.字符串回响1.1.核心功能1.2.程序…

【解决方案】智能语音模块,东胜物联远场语音解决方案让控制更简单,应用于智能家居等场景

现在的天气真是冷得不想多动一下&#xff0c;又想打开取暖器&#xff1f;有了它&#xff0c;用声音就能遥控&#xff0c;今天我们就来聊聊智能语音模块。 技术概述 远场语音技术&#xff0c;采用了麦克风阵列、信号处理技术以及先进的语音识别引擎&#xff0c;使得设备能够在距…

k8s快速搭建

VMware16Pro虚拟机安装教程VMware16.1.2安装及各版本密钥CentOS7.4的安装包:提取码&#xff1a;lp6qVMware搭建Centos7虚拟机教程 搭建完一个镜像 关机 拍摄一个快照,克隆两个作为子节点 0. 环境准备 在开始之前&#xff0c;部署Kubernetes集群机器需要满足以下几个条件&#…