测试基础05:软件测试的分类

课程大纲

1、两种架构(Architecture)

1.1B/S(Browser/Server)

        浏览器服务器架构(大体3步):用户通过浏览器向服务器发出请求,服务器处理请求,将结果通过网络返回到用户浏览器展示

        服务器内部,会有应用层处理请求,操作数据库(增删改查),返回用户请求的数据。

通信方式

        标准的 Web 协议:http/https。

举例

        各种网站、管理系统、云平台、办公协作平台(蓝湖、即时设计……)。

1.2C/S(Client/Server)

        客户端服务器架构:用户在电脑手机等设备上安装客户端,通过客户端将请求发送给服务器端进行处理,服务器端进行计算和处理后将结果返回给客户端。

        服务器内部,会有应用层处理请求,操作数据库(增删改查),返回用户请求的数据。

通信方式

        socket协议或其他协议。

举例

        电脑:QQ、微信、大型游戏。

        手机:各种app。

2软件测试工程师大方向

1.业务测试

        web端、移动端(app、小程序、h5)

2.测试开发

        服务端测试开发、UI自动化测试、接口自动化测试、性能测试、渗透测试(安全测试)……

        大数据测试、AI算法测试、自动驾驶……

3、测试类型

3.1、按开发阶段分

1.单元测试

        代码模块(程序的最小单位)的测试,一般由开发完成。

        从程序内部结构出发设计用例,验证是否实现设计说明书中的功能、性能、接口、约束条件等。

        各模块可平行独立进行。

2.集成测试

        模块组装到一起后,测试模块之间、子系统之间是否互相影响功能,即测试系统内部接口。

        (再想具体了解,就百度吧!

3.系统测试

        整个系统开发、集成完毕后进行测试,也就是常见的功能测试阶段。

4.验收测试

        交付用户前,与客户一起进行,向用户演示、验证软件与需求一致(功能、性能、安全性等)。

3.2、按是否运行程序分

1.静态测试(static test)

        不运行程序,不对软件进行输入输出对比预期的验证,只静态地检查程序代码、界面或文档中可能存在的错误。

        常见方法

        a.文档测试,验证用户手册和需求说明是否符合用户的实际需求。

        b.代码测试,验证代码是否符合相应的标准和规范。

        c.界面测试,验证软件的实际界面与需求中的说明是否相符。

2.动态测试(dynamic test)

        运行程序,输入数据后查看输出数据是否与预期一致。

        常见方法功能测试性能测试……

3.3、按是否看代码分

1.黑盒测试

        不看代码,直接根据输入输出判断软件是否有错误。

        测试方法:功能测试UI测试(界面测试)兼容性测试……

2.白盒测试

        又称结构测试,透明盒测试、逻辑驱动测试或基于代码的测试。

        测试方法语句覆盖判定覆盖路径覆盖条件覆盖判定条件覆盖条件组合覆盖

        注意:白盒测试可能静态或动态,黑盒也是; 反之亦然。

        (想看更多,去百度吧。

3.灰盒测试

        介于白盒测试与黑盒测试之间,多用于集成测试阶段,不仅关注输出、输入的正确性,同时也关注程序内部的情况。

3.4、按是否手工执行分

1.手工测试

        人工执行测试用例来识别软件中的错误、问题和缺陷。

2.自动化测试

        编写脚本自动执行测试用例来保证产品主体功能正确和完整。

3.5、其他

1.文档测试(Documentation Testing)

        主要指对软件文档进行审核、验证,确保文档的质量和准确性(完整性正确性一致性易理解性易浏览性

        找了一篇关于文档测试的文章:https://blog.csdn.net/2301_76387166/article/details/134643883

2.冒烟测试(Smoke testing)

        又叫“版本验证测试”、“高压线测试”。

        来源:硬件开发完成后,通电看机器是否冒烟,初步验证是否有问题。

        开发与测试共同进行。

        新版本开发完成后 ,验证基本/核心的功能和流程能否走通、是否有致命性和阻塞流程bug。通过冒烟,则正式转测,否则打回到开发流程。

        (可以通过自动化测试提效。)

3.回归测试(Regression test)

        重复执行以前(版本)的全部或部分的相同测试用例,验证软件修改后未影响原有功能。

        回归策略有2种:

        ① 完全回归运行所有测试用例。最保险成本最高用例库不断变大,成本难以控制

        ② 部分回归运行最重要的、关键的、最频繁使用的和可疑的测试用例有改动的模块或接口,功能未改动部分的测试用例。回归效率更高

4.交叉测试

        测试人员相互交换测试的模块。

        优点:防止漏测避免思维固化,保持测试新鲜感

        注意项:用例管理明确任务分配测试人员熟悉系统测试结果留存,体现在用例中

5.随机测试(Ad-hoc testing)

        根据测试者的经验对软件进行功能和性能抽查。

        是执行测试用例的重要补充手段,是保证测试覆盖完整性的有效方式和过程。

        对被测软件的一些重要功能进行复测,对于软件更新和新增加的功能要重点测试。重点对一些特殊点情况点、特殊的使用环境、并发性、进行检查。尤其对以前测试发现的重大Bug,进行再次测试。

        可以结合回归测试(Regressive testing)一起进行。

        随机测试的文章:https://blog.csdn.net/xiao1542/article/details/132718631

6.探索性测试(Exploratory Testing)

        基于敏捷模型的软件测试风格,不是一种具体的软件测试技术。

        找了一篇文章,大家自由探索:https://www.cnblogs.com/klb561/p/11997890.html

7.安全测试(Security Testing)

        验证系统安全性。3种方法

        ① 代码漏扫扫描代码安全漏洞

        ② 渗透测试使用自动化工具或者人工的方法模拟黑客的输入,对应用系统进行攻击性测试,从中找出运行时刻所存在的安全漏洞。真实有效,一般找出来的问题都是正确的,也是较为严重的。

        一个致命的缺点:模拟的测试数据只能到达有限的测试点,覆盖率很低。

        ③ 程序数据扫描

        一篇文章:https://blog.csdn.net/hlsxjh/article/details/131313986

8.alpha测试(开发者内测)

        非正式验收测试,类似于用户验收测试,是另一种质量控制。

        软件开发完成初期到测试完成之间均可。

        由熟悉产品预期功能的产品开发人员和工程师执行。

        使用白盒测试和黑盒测试技术来执行。

        通过发现和修复在开发初始阶段未解决的故障来微调软件产品,尤其注重界面和特色。

9.beta测试(用户内测)

        软件、产品或服务在正式发布之前进行的最后一轮测试。

        内部测试和产品发布之间进行。

        目标受众抽样试用产品。

        发现和修复潜在的问题和Bug。

        缩小产品与用户需求之间的差距:获取用户反馈,从而改进和优化产品。

10.兼容性测试(Compatibility testing)

        电脑系统:LinuxWindowsMac……

        移动端系统:iOSandroidwindows……

        手机品牌、型号:按照市场份额选购测试机、三方测试平台

        分辨率:按照市场份额测试。

        web不同浏览器:chromeFirefoxie……

        手机不同浏览器

        ……

附:课程完整思维导图

参考文章:

  1. 《软件测试的定义及如何进行分类》https://m.elecfans.com/article/998116.html
  2. 《软件测试的定义以及分类》https://www.cnblogs.com/liyongmei/p/10633744.html
  3. 《白盒测试基本方法》https://testerhome.com/topics/14755

B站:【土小帽软件测试(行入门到高级)-哔哩哔哩】 https://b23.tv/1c2U5fN
测试资源(百度网盘):https://pan.baidu.com/s/1Ypm8-VKuPurLtu0bCJovnA?pwd=5eji 提取码: 5eji
【腾讯文档】(流程图)https://docs.qq.com/s/FQZsGpzsiYH9wj26JvSaFW

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【数据挖掘】四分位数识别数据中的异常值(附代码)

写在前面: 首先感谢兄弟们的订阅,让我有创作的动力,在创作过程我会尽最大能力,保证作品的质量,如果有问题,可以私信我,让我们携手共进,共创辉煌。 路虽远,行则将至&#…

口碑比较好的相亲交友平台有哪些?正规靠谱的相亲软件排行榜测评

在网络时代,越来越多的人热衷于使用相亲交友软件来寻找生命中的另一半。这些软件确实为许多用户提供了真实可靠的交友平台。然而,市面上的相亲软件种类繁多,质量良莠不齐,让人难以选择。今天,我将介绍几款我使用过且认…

【ARM 裸机】按键输入

本节学习按键输入,先拷贝上一节工程文件, 1、驱动编写 新建 key 的 .h 和 .c 文件; 再查看一下硬件原理图如下; 由此可知,KEY0 按键接在 UART1_CTS 引脚上,默认情况下为高电平,按键按下为…

【LeetCode】30.串联所有单词的子串

串联所有单词的子串 题目描述: 给定一个字符串 s 和一个字符串数组 words。 words 中所有字符串 长度相同。 s 中的 串联子串 是指一个包含 words 中所有字符串以任意顺序排列连接起来的子串。 例如,如果 words ["ab","cd",&qu…

超值分享50个DFM模型格式的素人直播资源,适用于DeepFaceLive的DFM合集

50直播模型:点击下载 作为直播达人,我在网上购买了大量直播用的模型资源,包含男模女模、明星脸、大众脸、网红脸及各种稀缺的路人素人模型。现在,我将这些宝贵的资源整理成合集分享给大家,需要的朋友们可以直接点击下…

工业路由器在工厂数字化的应用及价值

随着科技的飞速发展,数字化转型已成为工厂提高效率、降低成本、实现智能化管理的关键途径。在这个过程中,工业路由器凭借其独特的优势,正逐渐成为工厂数字化建设不可或缺的核心组件。本文将深入探讨工业路由器在工厂数字化中的应用及价值&…

c# 画一个正弦函数

1.概要 c# 画一个正弦函数 2.代码 using System; using System.Drawing; using System.Windows.Forms;public class SineWaveForm : Form {private const int Width 800;private const int Height 600;private const double Amplitude 100.0;private const double Period…

光电直读抄表技术详细说明

1.技术简述 光电直读抄表是一种智能化智能计量技术,主要是通过成像原理立即载入电度表里的标值,不用人工干预,大大提升了抄表效率数据可靠性。此项技术是智慧能源不可或缺的一部分,为电力公司的经营管理提供了有力的适用。 2.原…

2024年5月26日 十二生肖 今日运势

小运播报:2024年5月26日,星期日,农历四月十九 (甲辰年己巳月庚寅日),法定节假日。 红榜生肖:马、猪、狗 需要注意:牛、蛇、猴 喜神方位:西北方 财神方位:…

基于open3d加载kitti数据集bin文件

前言 在自动驾驶领域,Kitti数据集是一个非常流行的点云数据集,广泛用于3D目标检测、跟踪和其他相关研究。Open3D是一个强大的开源库,专门用于处理和可视化三维数据。本文将介绍如何使用Open3D来加载和可视化Kitti数据集中的.bin文件。 准备…

marimo,Python notebook 的未来

你好,我是坚持分享干货的 EarlGrey,翻译出版过《Python编程无师自通》、《Python并行计算手册》等技术书籍。 如果我的分享对你有帮助,请关注我,一起向上进击。 marimo,号称是下一代 Jupyter Notebook,是 P…

长文处理更高效:一键章节拆分,批量操作轻松搞定,飞速提升工作效率!

在当今信息爆炸的时代,我们时常需要处理大量的文本内容。无论是阅读长篇小说、整理专业资料还是编辑大型文档,TXT文本文件的普遍性不言而喻。然而,当TXT文本内容过于庞大时,阅读、编辑和管理都变得异常繁琐。此时,一款…

echarts-树图、关系图、桑基图、日历图

树图 树图主要用来表达关系结构。 树图的端点也收symbol的调节 树图的特有属性: 树图的方向: layout、orient子节点收起展开:initialTreeDepth、expandAndCollapse叶子节点设置: leaves操作设置:roam线条&#xff1a…

eNSP学习——OSPF单区域配置

目录 相关命令 实验背景 实验目的 实验步骤 实验拓扑 实验编址 实验步骤 1、基础配置 2、部署单区域OSPF网络 3、检查OSPF单区域的配置结果 OSPF——开放式最短路径优先 基于链路状态的协议,具有收敛快、路由无环、扩展性好等优点; 相关命令 […

电信光猫的USB存储对外网开放访问

前提条件当然是要有公网IP地址了,没有的话去找电信索要,然后可以使用动态域名正常访问。 我的电信光猫发现共享访问速度还可以,会有31M/s左右的写入速度 但是有一个不方便的是,无法从外网提供访问,SMB协议所用的445端…

军队仓库管理系统|DW-S301系统特点

部队仓库管理系统DW-S301系统通过数据采集、互联网和物联网技术,实现数字化智能管控,以提高军用物资的仓储准确率和流转率,缩短周转时间,降低库存成本,也有助于消除生产过程中的不确定性。 系统功能:通过部…

WebService的wsdl详解

webservice服务的wsdl内容详解,以及如何根据其内容编写调用代码 wsdl示例 展示一个webservice的wsdl,及调用这个接口的Axis客户端 wsdl This XML file does not appear to have any style information associated with it. The document tree is shown…

DSVPN综合实验

DSVPN综合实验 一.实验拓扑 二.实验要求 1,R5为ISP,,只能进行IP地址配置;其所有地址均配为公有IP地址 2,R1和R5间使用ppp的PAP认证,R5为主认证方; R2于R5之间使用ppp的chap认证,R5为主认证方,…

python web自动化(Allure报告)

Allure详细安装请看之前的博客 1.Allure配置与⼊⻔ 运⾏⽤例,⽣成allure报告 pip install allure-pytest -i https://mirrors.aliyun.com/pypi/simple/ 运⾏⽤例,⽣成allure报告 # main.py import os import pytest if __name__ __m…

Softing工业推出新品edgeGate:一款用于工业边缘和云应用的硬件网关

2024年4月17日(哈尔),Softing工业自动化在2024年汉诺威工业博览会上首次展示了新品edgeGate。该产品是一个无需维护的硬件物联网网关解决方案,可将生产数据从PLC和数控机床控制器传输至工业边缘及物联网云平台。 (edge…