软件测试01
一、认识软件及测试
1、什么是软件
控制计算机硬件工作的工具
2、软件的基本组成
页面客户端------请求----->代码服务器-------请求------>数据服务器
3、软件产生过程
需求产生------->需求文档------->设计效果图------->产品开发-------->产品测试
把测试结果和需求文档进行对比,看是否符合
4、什么是软件测试
软件测试:使用技术手段验证软件是否满足使用需求
5、软件测试的目的
找出软件的错误bug
减少软件的缺陷,保障软件的质量
二、测试的主流技能
1、功能测试
eg:
| 测试步骤 | 测试数据 | 预期结果 |
|---|---|---|
| 1、输入手机号2、点击发送验证码按钮3、输入验证码4、勾选协议5、点击登录 | 1、手机:已注册手机号2、其他输入正确数据 | 1、手机文本框状态为绿色2、登录成功,跳转到主页 |
说明:功能测试主要验证程序的功能是否满足需求
2、自动化测试
通过工具(代码)来测试功能
说明:使用代码或工具代替手工,对项目进行测试
3、接口测试-代码和工具
说明:使用代码或工具对服务端的接口进行测试
4、性能测试-工具实现和代码实现
说明:模拟多人使用软件,查找服务器缺陷。
高并发
就业方向选择?
方向1:功能测试+接口测试
方向2:功能测试+性能测试
方向3:功能测试+web自动化
三、常见的测试分类
1、按测试阶段分
-
单元测试:针对程序的源代码测试,开发人员交付之前需要先自测
-
集成测试:又称为接口测试,针对模块之间访问地址进行测试,比如登录和注册连接起来测试
-
系统测试:对整个系统进行测试包括功能、兼容、文档等测试
-
验收测试:主要分为内测、公测、使用不同人群来发掘项目缺陷
2、按代码可见度划分
-
黑盒测试:源代码不可见、UI功能可见(User Interface 用户接口---软件界面)
-
灰盒测试:部分源代码可见、功能可见
-
白盒测试:全部代码可见、UI功能可见
四、模型
质量模型
说明:衡量一个优秀软件的维度
需求:
(1)开发一款网络游戏(要求:10个主功能)
(2)游戏支持web(浏览器)端、APP端
(3)游戏上线后预计每日,20w用户玩家在线
八大性能:
-
功能性:明确功能数量,功能正确实现,错误处理情况
-
性能:(在线人数20w)服务器每秒处理的请求数、服务器硬件配置是否满足!
-
兼容性:浏览器(谷歌、IE、火狐、鸥朋、苹果)、操作系统(windows10、7、8、11,Linux)、手机(分辨率、品牌、系统、网络、其他)
-
易用性:简洁、友好、流畅、美观
-
可靠性:无响应、卡顿(响应时间慢)、死机(系统崩溃)
-
安全性:信息传输加密、存储加密
-
可维护性:核心代码都有说明,代码独立
-
可移植性:数据量越来越多,更换服务器
目标:能够说出核心质量模型中重要的五项:功能、性能、兼容、易用、安全
五、软件测试流程
-
需求评审:甲方提出需求、产品经理了解需求,各部门需求理解保持一致,测试人员要了解有几个功能,从而根据项目类型编写测试计划
-
计划编写:测什么、谁来测、怎么测
-
用例设计:验证项目是否符合需求的操作文档
-
用例执行:项目模块开发完成,开始执行用例文档,实施测试
-
缺陷管理:实际结果和测试结果不一样,对缺陷进行管理
-
测试报告:实施测试结果文档
面试题:测试流程
六、测试用例
1、什么是用例
说明:用户使用的案例
例如:
是否能开机:打开手机按下电源键3秒,看是否能开机
验证内存:打开手机设置查看内存是否是64G
验证屏幕:打开手机在白屏背景下检查屏幕是否有黑色点
检查运行速度:打开手机下载吃鸡游戏,是否运行流畅
2、什么是测试用例
说明:为测试项目而设计的执行文档
3、用例的作用
防止漏测
实施测试的标准
4、用例编写格式
-
用例编号 : 项目+模块+编号
-
用例标题 :预期结果
-
项目/模块:所属项目或模块
-
优先级:表示用例的重要程度或者影响力p0~p4(p0最高)
-
前置条件:要执行此条用例,有哪些前置操作
-
测试步骤:描述操作步骤
-
测试数据:操作的数据,没有的话为空
-
预期结果:期望达到的结果
5、用例练习
根据以下测试点编写测试用例
需求:QQ登录(4条测试用例)
1、账号为空
2、账号未注册
3、密码为空
4、密码错误

相关文章:
软件测试01
一、认识软件及测试 1、什么是软件 控制计算机硬件工作的工具 2、软件的基本组成 页面客户端------请求----->代码服务器-------请求------>数据服务器 3、软件产生过程 需求产生------->需求文档------->设计效果图------->产品开发-------->产品测试 …...
【IBIS 模型与仿真 - IBISWriter and Write_IBIS】
本文将介绍如何从用户设计中编写自定义IBIS模型。 本文是 SelectIO 解决方案中心(Xilinx 答复 50924)的设计助手部分(Xilinx 答复 50926)的一部分。 原文链接:https://support.xilinx.com/s/article/50957?languagee…...
[题] 筛质数 #质数(素数)
题目 AcWing 868. 筛质数 题解 方法一:朴素筛法 及其优化:埃氏筛 从2~n枚举 i,再从小到大枚举所有已知的质数 primes[j],筛掉合数 i*primes[j],遇到新的质数就入队 枚举所有小于n的数i,将i的所有倍数筛掉。 筛完后剩下的数就是质数。 朴素做法 void ge…...
C进阶-语言文件操作
本章重点: 什么是文件 文件名 文件类型 文件缓冲区 文件指针 文件的打开和关闭文件的顺序读写文件的随机读写文件结束的判定 1. 什么是文件 磁盘上的文件是文件。 但是在程序设计中,我们一般谈的文件有两种:程序文件、数据文件 1.1 程序文件…...
17-spring aop调用过程概述
文章目录 1.源码2. debug过程1.源码 public class TestAop {public static void main(String[] args) throws Exception {saveGeneratedCGlibProxyFiles(System.getProperty("user.dir") + "/proxy");ApplicationContext ac = new ClassPathXmlApplicatio…...
微信小程序------框架
目录 视图层 WXML 数据绑定 列表渲染 条件渲染 模板 wsx事件 逻辑层 生命周期 跳转 视图层 WXML WXML(WeiXin Markup Language)是框架设计的一套标签语言,结合基础组件、事件系统,可以构建出页面的结构。 先在我们的项目中…...
Cross-Modal Joint Embedding with Diverse Semantics
计算两个嵌入之间的相似度得分,然后利用损失函数进行联合嵌入损失最小化优化并更新参数 辅助信息 作者未提供代码...
工具 | macOS 最简方式安装 adb 工具 | Mac
工具 | macOS 最简方式安装 adb 工具 | Mac 介绍 ADB(Android Debug Bridge)是 Android开发工具包(SDK)中的一项实用工具,用于与 Android 设备进行通信和调试。 在 macOS 操作系统上安装 ADB 环境可以帮助开发人员与…...
linux进阶(脚本编程/软件安装/进程进阶/系统相关)
一般市第二种,以bash进程执行 shelle脚本编程 env环境变量 set查看所有变量 read设置变量值 echo用于控制台输出 类似java中的sout declear/typeset声明类型 范例 test用于测试表达式 if/else case while for 函数 脚本示例 软件安装及进阶 fork函数(复制一个进程(开启一个进…...
谷歌云:下一代开发者和企业解决方案的强力竞争者
自从2018年Oracle前研发总裁Thomas Kurian加入谷歌云(Google Cloud)并出任谷歌云CEO以来,业界对于谷歌云的发展就十分好奇。而谷歌云的前任CEO Diane Greene曾是VMware的创始人之一,那么两任企业级技术和解决方案出身的CEO&#x…...
任务分配问题(回溯法)
算法设计 问题描述 有n(n≥1)个任务需要分配给n个人执行,每个任务只能分配给一个人,每个人只能执行一个任务。 第i个人执行第j个任务的成本是c[i][j](1≤i,j≤n)。求出总成本最小的分配方案 …...
华为OD 字符串消除(100分)【java】A卷+B卷
华为OD统一考试A卷+B卷 新题库说明 你收到的链接上面会标注A卷还是B卷。目前大部分收到的都是B卷。 B卷对应20022部分考题以及新出的题目,A卷对应的是新出的题目。 我将持续更新最新题目 获取更多免费题目可前往夸克网盘下载,请点击以下链接进入: 我用夸克网盘分享了「华为O…...
索引背后的数据结构——B+树
为什么要使用B树? 可以进行数据查询的数据结构有二叉搜索树、哈希表等。对于前者来说,树的高度越高,进行查询比较的时候访问磁盘的次数就越多。而后者只有在数据等于key值的时候才能进行查询,不能进行模糊匹配。所以出现了B树来解…...
面试用-常用注解
Configuration 注意由ConfigurationClassPostProcessor来处理ConfigurationClassPostProcessor执行这个后置处理 ConfigurationClassParser.parse执行这个方法里面会解析很多注解。1、Component 对于Component也是一样递归调用parse方法,一层层解析…...
【c++】跟webrtc学std array 4: H264PacketBuffer 包缓存
H264PacketBuffer m98代码:H264PacketBuffer 类似于PacketBuffer ,但仅用于H264// The H264PacketBuffer does the same job as the PacketBuffer but for H264 // only. To make it fit in with surronding code the PacketBuffer input/output // classes are used. 因此,…...
Nodejs Web数据库应用演示实例
Nodejs Web应用基础演示实例 Web数据库应用 一、服务器端 var express require(express); var app express(); var mysql require(mysql);//设置静态资源目录public app.use(express.static(__dirname /public));//创建mysql数据库访问连接(数据库主机地址&a…...
Vue 中setup的特性
特性四:父传子组件传参【defineProps】: 父组件(传递数据):利用自定义属性传递数据。 <template><h3>我是父组件</h3><hr /><Child :name"info.name" :age"info.age"…...
Peter算法小课堂—正整数拆分
大家可能会想:正整数拆分谁不会啊,2年级就会了,为啥要学啊 例题 正整数拆分有好几种,这里我们列举两种讲。 关系 我们看着第一幅图,头向左转90,记住你看到的图,再来看第二幅图,你…...
EDUSRC--简单打穿某985之旅
免责声明: 文章中涉及的漏洞均已修复,敏感信息均已做打码处理,文章仅做经验分享用途,切勿当真,未授权的攻击属于非法行为!文章中敏感信息均已做多层打马处理。传播、利用本文章所提供的信息而造成的任何直…...
vue2升级到vue2.7
vue2升级到vue2.7 小小的改进,大大的提升 只需要简单修改,开发体验得到大大提升. 为什么要升级Vue2.7 不能拒绝的理由: 组合式 API(解决mixins问题:命名冲突,隐式依赖)单文件组件内的 <script setup>语法模板表达式中支持 ESNext 语法(可选链:?.、空值合并:??)单文…...
ESP32 I2S音频总线学习笔记(四): INMP441采集音频并实时播放
简介 前面两期文章我们介绍了I2S的读取和写入,一个是通过INMP441麦克风模块采集音频,一个是通过PCM5102A模块播放音频,那如果我们将两者结合起来,将麦克风采集到的音频通过PCM5102A播放,是不是就可以做一个扩音器了呢…...
华为OD机试-食堂供餐-二分法
import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...
Axios请求超时重发机制
Axios 超时重新请求实现方案 在 Axios 中实现超时重新请求可以通过以下几种方式: 1. 使用拦截器实现自动重试 import axios from axios;// 创建axios实例 const instance axios.create();// 设置超时时间 instance.defaults.timeout 5000;// 最大重试次数 cons…...
大模型多显卡多服务器并行计算方法与实践指南
一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...
Mac下Android Studio扫描根目录卡死问题记录
环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中,提示一个依赖外部头文件的cpp源文件需要同步,点…...
Device Mapper 机制
Device Mapper 机制详解 Device Mapper(简称 DM)是 Linux 内核中的一套通用块设备映射框架,为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程,并配以详细的…...
Springboot社区养老保险系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,社区养老保险系统小程序被用户普遍使用,为方…...
音视频——I2S 协议详解
I2S 协议详解 I2S (Inter-IC Sound) 协议是一种串行总线协议,专门用于在数字音频设备之间传输数字音频数据。它由飞利浦(Philips)公司开发,以其简单、高效和广泛的兼容性而闻名。 1. 信号线 I2S 协议通常使用三根或四根信号线&a…...
Go 并发编程基础:通道(Channel)的使用
在 Go 中,Channel 是 Goroutine 之间通信的核心机制。它提供了一个线程安全的通信方式,用于在多个 Goroutine 之间传递数据,从而实现高效的并发编程。 本章将介绍 Channel 的基本概念、用法、缓冲、关闭机制以及 select 的使用。 一、Channel…...
【堆垛策略】设计方法
堆垛策略的设计是积木堆叠系统的核心,直接影响堆叠的稳定性、效率和容错能力。以下是分层次的堆垛策略设计方法,涵盖基础规则、优化算法和容错机制: 1. 基础堆垛规则 (1) 物理稳定性优先 重心原则: 大尺寸/重量积木在下…...
