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

软件测试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用户玩家在线

八大性能:

  1. 功能性:明确功能数量,功能正确实现,错误处理情况

  2. 性能:(在线人数20w)服务器每秒处理的请求数、服务器硬件配置是否满足!

  3. 兼容性:浏览器(谷歌、IE、火狐、鸥朋、苹果)、操作系统(windows10、7、8、11,Linux)、手机(分辨率、品牌、系统、网络、其他)

  4. 易用性:简洁、友好、流畅、美观

  5. 可靠性:无响应、卡顿(响应时间慢)、死机(系统崩溃)

  6. 安全性:信息传输加密、存储加密

  7. 可维护性:核心代码都有说明,代码独立

  8. 可移植性:数据量越来越多,更换服务器

目标:能够说出核心质量模型中重要的五项:功能、性能、兼容、易用、安全

五、软件测试流程


  1. 需求评审:甲方提出需求、产品经理了解需求,各部门需求理解保持一致,测试人员要了解有几个功能,从而根据项目类型编写测试计划

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

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

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

  5. 缺陷管理:实际结果和测试结果不一样,对缺陷进行管理

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

面试题:测试流程

六、测试用例


1、什么是用例

说明:用户使用的案例

例如:

是否能开机:打开手机按下电源键3秒,看是否能开机

验证内存:打开手机设置查看内存是否是64G

验证屏幕:打开手机在白屏背景下检查屏幕是否有黑色点

检查运行速度:打开手机下载吃鸡游戏,是否运行流畅

2、什么是测试用例

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

3、用例的作用

  1. 防止漏测

  2. 实施测试的标准

4、用例编写格式

  1. 用例编号 : 项目+模块+编号

  2. 用例标题 :预期结果

  3. 项目/模块:所属项目或模块

  4. 优先级:表示用例的重要程度或者影响力p0~p4(p0最高)

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

  6. 测试步骤:描述操作步骤

  7. 测试数据:操作的数据,没有的话为空

  8. 预期结果:期望达到的结果

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的特性

特性四&#xff1a;父传子组件传参【defineProps】&#xff1a; 父组件&#xff08;传递数据&#xff09;&#xff1a;利用自定义属性传递数据。 <template><h3>我是父组件</h3><hr /><Child :name"info.name" :age"info.age"…...

Peter算法小课堂—正整数拆分

大家可能会想&#xff1a;正整数拆分谁不会啊&#xff0c;2年级就会了&#xff0c;为啥要学啊 例题 正整数拆分有好几种&#xff0c;这里我们列举两种讲。 关系 我们看着第一幅图&#xff0c;头向左转90&#xff0c;记住你看到的图&#xff0c;再来看第二幅图&#xff0c;你…...

EDUSRC--简单打穿某985之旅

免责声明&#xff1a; 文章中涉及的漏洞均已修复&#xff0c;敏感信息均已做打码处理&#xff0c;文章仅做经验分享用途&#xff0c;切勿当真&#xff0c;未授权的攻击属于非法行为&#xff01;文章中敏感信息均已做多层打马处理。传播、利用本文章所提供的信息而造成的任何直…...

vue2升级到vue2.7

vue2升级到vue2.7 小小的改进,大大的提升 只需要简单修改,开发体验得到大大提升. 为什么要升级Vue2.7 不能拒绝的理由: 组合式 API(解决mixins问题:命名冲突,隐式依赖)单文件组件内的 <script setup>语法模板表达式中支持 ESNext 语法(可选链:?.、空值合并:??)单文…...

ESP32 I2S音频总线学习笔记(四): INMP441采集音频并实时播放

简介 前面两期文章我们介绍了I2S的读取和写入&#xff0c;一个是通过INMP441麦克风模块采集音频&#xff0c;一个是通过PCM5102A模块播放音频&#xff0c;那如果我们将两者结合起来&#xff0c;将麦克风采集到的音频通过PCM5102A播放&#xff0c;是不是就可以做一个扩音器了呢…...

华为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 中实现超时重新请求可以通过以下几种方式&#xff1a; 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日构建) 问题现象 在项目开发过程中&#xff0c;提示一个依赖外部头文件的cpp源文件需要同步&#xff0c;点…...

Device Mapper 机制

Device Mapper 机制详解 Device Mapper&#xff08;简称 DM&#xff09;是 Linux 内核中的一套通用块设备映射框架&#xff0c;为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程&#xff0c;并配以详细的…...

Springboot社区养老保险系统小程序

一、前言 随着我国经济迅速发展&#xff0c;人们对手机的需求越来越大&#xff0c;各种手机软件也都在被广泛应用&#xff0c;但是对于手机进行数据信息管理&#xff0c;对于手机的各种软件也是备受用户的喜爱&#xff0c;社区养老保险系统小程序被用户普遍使用&#xff0c;为方…...

音视频——I2S 协议详解

I2S 协议详解 I2S (Inter-IC Sound) 协议是一种串行总线协议&#xff0c;专门用于在数字音频设备之间传输数字音频数据。它由飞利浦&#xff08;Philips&#xff09;公司开发&#xff0c;以其简单、高效和广泛的兼容性而闻名。 1. 信号线 I2S 协议通常使用三根或四根信号线&a…...

Go 并发编程基础:通道(Channel)的使用

在 Go 中&#xff0c;Channel 是 Goroutine 之间通信的核心机制。它提供了一个线程安全的通信方式&#xff0c;用于在多个 Goroutine 之间传递数据&#xff0c;从而实现高效的并发编程。 本章将介绍 Channel 的基本概念、用法、缓冲、关闭机制以及 select 的使用。 一、Channel…...

【堆垛策略】设计方法

堆垛策略的设计是积木堆叠系统的核心&#xff0c;直接影响堆叠的稳定性、效率和容错能力。以下是分层次的堆垛策略设计方法&#xff0c;涵盖基础规则、优化算法和容错机制&#xff1a; 1. 基础堆垛规则 (1) 物理稳定性优先 重心原则&#xff1a; 大尺寸/重量积木在下&#xf…...