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

软件测试:质量保障的基石与未来趋势

软件测试作为软件开发生命周期中的关键环节,不仅是发现和修复缺陷的手段,更是确保产品质量、提升用户体验和降低开发成本的重要保障。在当今快速迭代的互联网时代,测试已从单纯的验证活动演变为贯穿整个开发过程的质量管理体系。本文将系统阐述测试的定义、必要性、模型方法、分类体系及实施流程,为读者提供一个全面的测试知识框架。

一、为什么要测试:质量与效率的平衡

软件测试的首要目的是确保软件质量,通过系统化的方法验证软件是否符合需求规格说明和用户期望。在复杂软件系统中,人工开发难以保证零缺陷,测试能够及早发现潜在问题,避免这些缺陷在后期阶段造成更大损失。据统计,软件缺陷在开发阶段修复的成本是测试阶段的5倍,而在生产环境中修复则高达20倍。因此,测试不仅是质量保障,更是成本控制的有效手段。

测试对用户体验的提升同样至关重要。一个经过充分测试的软件产品能够提供稳定可靠的功能,减少用户在使用过程中遇到的挫折和困惑。特别是在金融、医疗等关键领域,软件故障可能导致严重后果,测试成为保障用户安全的必要防线。同时,随着法规要求的日益严格,测试也是确保软件符合行业标准和法规的必要途径,例如医疗软件需符合HIPAA标准,金融软件需满足PCI-DSS要求等。

在当今的快速迭代开发模式下,测试的重要性更加凸显。传统瀑布模型中,测试通常在开发完成后进行,而在敏捷和DevOps模式中,测试需要"左移"到需求和设计阶段,并"右移"到生产环境监控阶段。这种全方位的测试策略能够确保在快速交付的同时,维持软件质量,满足用户期望。

二、什么是测试:从质量控制到质量保证

软件测试是一种通过人工或自动化手段评估和验证软件质量、可靠性和功能是否符合预期的系统化活动。它属于质量控制(QC)的范畴,专注于检测和修复产品中的缺陷。然而,测试不应仅被视为简单的"找bug"活动,而应理解为一种全面的质量保障措施。

测试与质量保证(QA)有着密切但不同的关系。QA是过程导向的预防性措施,关注于流程的实施和改进,确保遵循良好流程能够产出优质产品;而QC则是产品导向的检测性措施,通过测试活动来保证产品质量。两者共同构成了软件质量管理体系,但测试主要属于QC的范畴。

测试的核心价值在于提供客观证据,证明软件满足特定的质量要求。这种证据不仅包括功能正确性的验证,还涵盖性能、安全性、兼容性等多方面的评估。随着软件复杂度的增加和用户期望的提高,测试的范围和深度也在不断扩展,从简单的功能验证发展到全面的质量评估。

三、测试模型:从传统到现代的演进

软件测试模型是指导测试活动与开发过程协同的框架,旨在提升测试效率和软件质量。根据搜索结果,常见的软件测试模型主要包括以下四种:

V模型是最广为人知的模型,由Paul Rook在20世纪80年代提出,是瀑布模型的变种。它将开发与测试阶段严格对应,左侧是自上而下的开发流程(需求分析、设计、编码),右侧是自下而上的测试流程(单元测试、集成测试、系统测试、验收测试)。V模型的优点是结构清晰,适合需求稳定的项目;缺点是测试介入较晚,无法早期验证需求和设计缺陷,缺乏灵活性。

W模型是V模型的升级,由Evolutif公司提出,形成开发与测试并行的双V结构。测试活动早期介入,例如需求分析完成后,测试人员就应该参与需求评审和测试设计。W模型的优点是测试与开发同步进行,可尽早发现缺陷;缺点是仍依赖串行开发流程,无法支持迭代或敏捷项目,对测试技术要求较高。

H模型将测试活动完全独立为一个完整流程,与其他开发活动并行。测试准备(如用例设计)与测试执行分离,强调"测试就绪点"(如文档、环境就绪后触发测试)。H模型的优点是灵活适应需求变化,适合迭代开发;缺点是缺乏对开发流程的明确指导,需与其他模型结合使用。

X模型提出针对单独的程序片段进行相互分离的编码和测试,此后通过频繁的交接,通过集成最终合成为可执行的程序。X模型还定位了探索性测试,这是不进行事先计划的特殊类型的测试,依赖测试人员经验发现隐藏缺陷。X模型的优点是适合复杂系统深度测试;缺点是对测试人员经验要求高,缺乏标准化流程。

测试模型核心特点适用场景主要局限
V模型测试阶段与开发阶段一一对应,自下而上测试传统瀑布开发、需求稳定的项目测试介入晚,缺陷发现滞后
W模型双V结构,测试与开发并行,早期介入复杂系统、需早期验证需求的项目依赖串行流程,不支持迭代开发
H模型测试完全独立,与其他流程并发执行敏捷开发、DevOps环境缺乏开发流程指导,需结合其他模型
X模型模块化测试+探索性测试,支持反复迭代复杂系统、成熟产品深度测试依赖测试人员经验,管理难度大

这些模型各有优缺点,实际应用中常需结合多种模型。例如,以V/W模型指导测试范围,以H模型管理测试节奏,结合X模型进行深度测试。随着DevOps理念的普及,H模型因其灵活性和独立性,正成为现代测试管理的主流选择。

四、测试术语:专业领域的语言体系

软件测试领域拥有丰富的专业术语,这些术语不仅反映了测试的不同维度和方法,也为测试人员之间的沟通提供了标准化语言。根据资料整理,软件测试术语可归纳为以下几个主要类别:

测试类型与阶段术语:包括单元测试(UT)、集成测试(IT)、系统测试(ST)、用户验收测试(UAT)、构建验证测试(BVT)、回归测试(Regression Testing)、冒烟测试(Smoke Testing)、性能测试(Performance Testing)等,这些术语描述了测试在不同开发阶段和不同粒度上的活动。

质量模型与标准术语:如ISO(国际标准化组织)、CMM(能力成熟度模型)、QA(质量保证)、QC(质量控制)、SRS(软件需求规格说明书)等,这些术语构成了软件质量评估的理论基础和标准体系。

测试技术与方法术语:包括TDD(测试驱动开发)、BDD(行为驱动开发)、白盒测试(White-Box Testing)、黑盒测试(Black-Box Testing)、灰盒测试(Gray-Box Testing)等,这些术语描述了测试的设计和执行方法。

缺陷与流程管理术语:如DTS(缺陷跟踪系统)、RCA(根本原因分析)、CCB(变更控制委员会)、CRF(变更申请表)、SDLC(软件开发生命周期)、STLC(软件测试生命周期)等,这些术语支持测试过程的规范化管理和缺陷的系统化处理。

其他常见术语:如GUI(图形用户界面测试)、API(应用程序接口测试)、CI/CD(持续集成/持续部署)、EULA(终端用户许可协议)等,这些术语涵盖了测试的不同方面和应用场景。

值得注意的是,测试术语也在随着技术发展不断更新。例如,近年来出现了混沌测试(Chaos Testing)、A/B测试等新兴测试类型,这些术语反映了测试领域的创新和发展。测试人员需要不断学习和掌握这些新术语,以保持专业竞争力。

五、测试分类:多维度的质量验证体系

软件测试可以根据不同维度进行分类,形成多层次的质量验证体系。按测试阶段划分,测试可分为单元测试、集成测试、系统测试和验收测试,这一分类与测试金字塔模型高度一致,强调测试应从微观到宏观逐步验证软件质量。

按测试方法划分,测试可分为黑盒测试(仅关注输入输出,不涉及内部实现)、白盒测试(基于代码内部结构设计测试用例)和灰盒测试(结合黑盒与白盒方法)。这些方法各有优势,黑盒测试更贴近用户视角,白盒测试能更深入验证代码逻辑,灰盒测试则在两者之间取得平衡。

按测试目标划分,测试可分为功能测试(验证软件是否符合功能需求)和非功能测试(验证软件的性能、安全性、兼容性等特性)。非功能测试又可细分为性能测试(包括负载测试和压力测试)、安全测试(漏洞扫描、渗透测试等)、兼容性测试(跨浏览器、设备适配测试)和用户体验测试(界面易用性、无障碍访问测试)等。

按执行方式划分,测试可分为手动测试(依赖测试人员经验,适合探索性测试和复杂业务流程)和自动化测试(使用工具自动执行测试用例,适合高频执行的回归测试)。随着自动化技术的发展,测试自动化已成为提高测试效率和质量的重要手段。

按测试策略划分,测试可分为探索性测试(无固定脚本,依赖测试人员经验发现隐藏缺陷)和持续测试(在持续集成/持续部署过程中进行的自动化测试)。探索性测试能发现计划性测试难以覆盖的问题,而持续测试则能确保每次代码变更不会引入新缺陷。

测试的八大维度进一步细化了测试的分类:功能性、性能、兼容性、易用性、安全性、可靠性、可移植性和可维护性。这些维度涵盖了软件质量的各个方面,测试人员需要根据项目特点和用户需求,确定各维度的测试重点和深度。

六、测试流程:从需求到交付的质量保障链

软件测试流程是确保测试活动系统化、规范化实施的关键。根据资料整理,典型的软件测试流程包括以下几个阶段:

需求分析阶段:测试团队与产品经理、开发人员密切合作,理解产品需求,明确测试范围和目标。这一阶段的工作目标是为后续测试工作提供明确方向,确保测试活动与产品目标一致。

测试计划制定阶段:根据需求分析结果,制定详细的测试计划,包括测试资源分配、测试环境准备、测试方法选择等。测试计划需要保证测试工作的系统性和有效性,为测试活动提供指导框架。

测试用例设计阶段:测试用例是测试工作的核心,通过设计满足需求的测试用例,确保测试覆盖各种场景和异常情况。测试用例设计需要考虑等价类划分、边界值分析、决策表测试等多种设计技术,以提高测试效率和覆盖率。

测试执行阶段:按照测试用例进行系统测试,发现并记录问题。测试执行是整个测试流程的核心环节,需要关注测试用例的执行情况,确保测试覆盖全面,问题发现及时。

缺陷管理与修复阶段:对发现的缺陷进行记录、跟踪和报告,开发人员根据缺陷报告进行修复,测试人员需要对修复后的版本进行验证,确保问题得到有效解决。这一阶段需要高效的缺陷跟踪系统和良好的团队协作机制。

测试报告编写与总结阶段:测试执行结束后,编写详细的测试报告,总结测试过程中的问题、发现的缺陷和修复情况,为产品的后续优化提供依据。测试报告应包含测试覆盖率、缺陷分布、测试结论等关键信息。

在现代软件开发中,测试流程已从传统的线性模式发展为更灵活的迭代模式。例如,在敏捷开发中,测试与开发并行进行,每个迭代周期都包含测试活动;在DevOps环境中,测试被集成到持续交付流水线中,实现自动化测试和快速反馈。

测试左移测试右移是现代测试流程的重要理念。测试左移强调在需求和设计阶段就介入测试活动,提前发现潜在问题;测试右移则关注将测试扩展到生产环境,通过监控和用户反馈持续改进软件质量。这些理念与H模型的测试独立性和并发性特点高度契合,共同构成了现代测试流程的理论基础。

七、测试的未来趋势:智能化与自动化

随着技术的发展,软件测试领域正经历着深刻变革。自动化测试已成为提高测试效率和质量的重要手段,特别是在单元测试和冒烟测试等高频执行的场景中。自动化测试工具如Selenium、Appium、JMeter等的广泛应用,使得测试团队能够将更多精力投入到探索性测试和复杂场景验证中。

持续测试与**持续集成/持续部署(CI/CD)**的结合,使得测试成为软件交付流程中的有机组成部分。每次代码提交后自动触发测试,确保只有通过测试的代码才能进入下一阶段。这种模式大大提高了软件交付的速度和质量,已成为现代软件开发的标配。

AI测试是近年来的热点趋势,利用人工智能技术自动生成测试用例、识别缺陷模式、预测测试结果等。AI测试能够处理传统测试方法难以覆盖的复杂场景,提高测试的覆盖率和效率。例如,AI可以分析历史缺陷数据,识别高风险模块,指导测试资源的合理分配。

云测试移动测试也日益重要,随着软件向云端和移动端迁移,测试需要覆盖更多样化的环境和设备。云测试平台如AWS Device Farm、Firebase Test Lab等,能够提供广泛的设备环境,帮助测试人员验证软件在不同设备上的表现。

用户体验测试可访问性测试越来越受到重视,软件不仅要功能正确,还要提供良好的用户体验,并满足不同用户群体的需求,包括残障人士。这些测试类型关注的是软件的使用感受和包容性,反映了软件测试从单纯的功能验证向更全面的质量评估转变。

八、结语:测试的价值与挑战

软件测试不仅是确保产品质量的技术手段,更是连接开发与用户的重要桥梁。在快速迭代的软件开发环境中,测试面临的挑战日益增加,包括如何平衡测试覆盖率与测试效率,如何应对频繁的代码变更,如何验证日益复杂的软件系统等。

然而,正是这些挑战推动着测试技术的不断创新和发展。从传统的功能测试到现代的持续测试、AI测试,测试方法和工具不断演进,为软件质量提供了更强大的保障。

对于测试人员来说,未来的测试岗位将更加注重开发和运维能力,测试开发工程师需要同时掌握测试技术和开发技能,才能在快速迭代的环境中保持竞争力。测试人员需要深入介入开发工作,通过"测试左移"提前发现问题,并参与配置部署,通过"测试右移"监控发布后的应用质量。

总之,软件测试是确保软件质量、满足用户需求和遵守法规标准的关键环节。通过理解测试的定义、必要性、模型方法、分类体系和实施流程,我们可以更好地把握测试的核心价值,为软件质量提供坚实的保障。

相关文章:

软件测试:质量保障的基石与未来趋势

软件测试作为软件开发生命周期中的关键环节,不仅是发现和修复缺陷的手段,更是确保产品质量、提升用户体验和降低开发成本的重要保障。在当今快速迭代的互联网时代,测试已从单纯的验证活动演变为贯穿整个开发过程的质量管理体系。本文将系统阐…...

网络安全逆向分析之rust逆向技巧

rust逆向技巧 rust逆向三板斧: 快速定位关键函数 (真正的main函数):观察输出、输入,字符串搜索,断点等方法。定位关键 加密区 :根据输入的flag,打硬件断点,快速捕获程序中对flag访问的位置&am…...

Docker容器化技术概述与实践

哈喽,大家好,我是左手python! Docker 容器化的基本概念 Docker 容器化是一种轻量级的虚拟化技术,通过将应用程序及其依赖项打包到一个可移植的容器中,使其在任何兼容 Docker 的环境中都能运行。与传统的虚拟机技术不同…...

win中将pdf转为图片

0 资料 博客 1 正文 直接使用这个软件即可https://sourceforge.net/projects/pkpdfconverter/...

Leetcode 2494. 合并在同一个大厅重叠的活动

1.题目基本信息 1.1.题目描述 表: HallEvents ----------------- | Column Name | Type | ----------------- | hall_id | int | | start_day | date | | end_day | date | ----------------- 该表可能包含重复字段。 该表的每一行表示活动的开始日期和结束日期&…...

vue+elementui 网站首页顶部菜单上下布局

菜单集合后台接口动态获取&#xff0c;保存到store vuex状态管理器 <template><div id"app"><el-menu:default-active"activeIndex2"class"el-menu-demo"mode"horizontal"select"handleSelect"background-…...

网络安全-等级保护(等保) 3-3-1 GB/T 36627-2018 附录A (资料性附录) 测评后活动、附 录 B (资料性附录)渗透测试的有关概念说明

################################################################################ GB/T 36627-2018 《信息安全技术 网络安全等级保护测试评估技术指南》对网络安全等级保护测评中的相关测评技术进行明确的分类和定义,系统地归纳并阐述测评的技术方法,概述技术性安全测试和…...

pytorch3d+pytorch1.10+MinkowskiEngine安装

1、配置pytorch1.10cuda11.0 pip install torch1.10.1cu111 torchvision0.11.2cu111 torchaudio0.10.1 -f https://download.pytorch.org/whl/cu111/torch_stable.html 2、配置 MinkowskiEngine库 不按下面步骤&#xff0c;出现错误 1、下载MinkowskiEngine0.5.4到本地 2、查看…...

AI Infra运维实践:DeepSeek部署运维中的软硬结合

发布会资料 《AI Infra运维实践&#xff1a;DeepSeek部署运维中的软硬结合》 袋鼠云运维服务 1、行业痛点 随着数字化转型的深入&#xff0c;企业面临的运维挑战日益复杂&#xff0c;所依托的平台在长期使用的过程中积累了各式各样的问题或者难点。这些问题不仅影响效率&…...

MySQL体系架构解析(二):MySQL目录与启动配置全解析

MySQL中的目录和文件 bin目录 在 MySQL 的安装目录下有一个特别重要的 bin 目录&#xff0c;这个目录下存放着许多可执行文件。与其他系统的可执行文件类似&#xff0c;这些可执行文件都是与服务器和客户端程序相关的。 启动MySQL服务器程序 在 UNIX 系统中&#xff0c;用…...

深度学习在RNA分子动力学中的特征提取与应用指南

深度学习在RNA分子动力学中的特征提取与应用指南 引言:RNA结构动力学与AI的融合 RNA作为生命活动的核心分子,其动态构象变化直接影响基因调控、蛋白合成等关键生物过程。分子动力学(Molecular Dynamics, MD)模拟通过求解牛顿运动方程,可获取RNA原子级运动轨迹(时间尺度…...

K8s基础一

Kubernetes 架构 Kubernetes 背后的架构概念。 Kubernetes 集群由一个控制平面和一组用于运行容器化应用的工作机器组成&#xff0c; 这些工作机器称作节点&#xff08;Node&#xff09;。每个集群至少需要一个工作节点来运行 Pod。 工作节点托管着组成应用负载的 Pod。控制平…...

2025五大免费变声器推荐!

在游戏开黑时想靠声音搞怪活跃气氛&#xff0c;或是在直播中用独特声线吸引观众&#xff0c;又或者给视频配音时想尝试不同角色 —— 但市面上的变声软件要么收费高昂&#xff0c;要么效果生硬、操作复杂&#xff0c;难道找到一款好用又免费的变声器真的这么难&#xff1f; 今…...

StringRedisTemplete使用

StringRedisTemplate是Spring Data Redis提供的一个模板类&#xff0c;用于简化对Redis的操作。它特别适合处理字符串类型的数据&#xff0c;并且封装了一系列常用的Redis命令&#xff0c;使开发者能够以更简洁的方式进行Redis操作。本文将详细介绍 StringRedisTemplate的使用方…...

SDC命令详解:使用set_min_capacitance命令进行约束

相关阅读 SDC命令详解https://blog.csdn.net/weixin_45791458/category_12931432.html?spm1001.2014.3001.5482 目录 指定最小需驱动电容值 指定对象列表/集合 简单使用 写在最后 set_min_capacitance命令用于设置输入端口的最小需驱动电容&#xff08;设置了输入端口的min_c…...

几何引擎对比:OpenCasCade、ACIS、Parasolid和CGM

概述 从技术架构与行业实践来看&#xff0c;OpenCasCade 凭借开源生态与轻量化设计形成差异化竞争力&#xff0c;尤其适合预算敏感、需定制开发或依赖开源工具链的场景&#xff1b;而 ACIS、Parasolid 等商业内核则通过工业级精度优化与主流 CAD 深度绑定占据大型企业市场&…...

OD 算法题 B卷【猴子吃桃】

文章目录 猴子吃桃 猴子吃桃 猴子喜欢吃桃&#xff0c;桃园有N棵桃树&#xff0c;第i棵桃树上有Ni个桃&#xff0c;看守将在H(>N)小时后回来&#xff1b;猴子可以决定吃桃的速度K(个/小时)&#xff0c;每个小时他会选择一棵桃树&#xff0c;从中吃掉K个桃&#xff0c;如果这…...

汽车安全体系:FuSa、SOTIF、Cybersecurity 从理论到实战

汽车安全&#xff1a;功能安全&#xff08;FuSa&#xff09;、预期功能安全&#xff08;SOTIF&#xff09;与网络安全(Cybersecurity) 从理论到实战的安全体系 引言&#xff1a;自动驾驶浪潮下的安全挑战 随着自动驾驶技术从L2向L4快速演进&#xff0c;汽车安全正从“机械可靠…...

Excel-vlookup -多条件匹配,返回指定列处的值

前提&#xff1a;先了解vlookup 的简单使用&#xff0c; 参照&#xff1a;https://blog.csdn.net/yanweijie0317/article/details/144886106?spm1011.2124.3001.6209 要求&#xff1a;按照Sheet0的B列和I列&#xff0c;在Sheet1中查找H列。 函数&#xff1a; VLOOKUP(B509&a…...

Python异步爬虫与代理完美结合

为了编写一个高性能的异步爬虫&#xff0c;并使用代理IP&#xff0c;我们可以使用以下技术栈&#xff1a;aiohttp &#xff08;用于异步HTTP请求&#xff09;、asyncio &#xff08;用于异步编程&#xff09;、代理IP可以使用一个代理池&#xff0c;我们从文件中读取或者从API获…...

惠普HP Deskjet 9600 打印机信息

基本参数 产品定位&#xff1a;彩色喷墨打印机。打印速度&#xff1a;14 页 / 分钟。最高分辨率&#xff1a;48001200dpi。打印内存&#xff1a;8MB4。打印语言&#xff1a;HP PCL 3 增强型。打印负荷&#xff1a;每月 5000 页。接口类型&#xff1a;USB、并口。 功能特点 自动…...

Hive的Parquet格式优化方法

一、Parquet格式的特点与优势 1. 列式存储架构 核心特点:数据按列存储,同一列的数据连续存储在文件中,而非行式存储的“整行连续存储”。优势: 查询性能高:仅读取查询所需列的数据,减少I/O量(如SELECT name FROM table仅扫描name列)。压缩效率高:同一列数据类型一致,…...

ADI硬件笔试面试题型解析下

本专栏预计更新60期左右。当前第17期-ADI硬件. ADI其硬件工程师岗位的招聘流程通常包括笔试和多轮技术面试,考察领域涵盖模拟电路设计、数字电路、半导体器件和信号处理等。 本文通过分析平台上的信息,汇总了ADI硬件工程师的典型笔试和面试题型,并提供详细解析和备考建议,…...

服务器租用:高防CDN和加速CDN的区别

CDN全称为内容分发网络&#xff0c;其主要的作用原理能够加快网站的数据传输的速度&#xff0c;随着技术的快速发展&#xff0c;CDN也分为高防CDN和加速CDN两种不同的类型&#xff0c;本文将为大家介绍一下高防CDN和加速CDN两者之间的区别有哪些&#xff1f; 高防CDN能够有效抵…...

吃透 Golang 基础:数据结构之 Map

文章目录 Map概述初始化删除访问不存在的 key 返回 value 的零值遍历 mapmap 自身的零值map 索引时返回的第二个参数使用 map 实现 set Map Hash Map 是无序的 key/value 对集合&#xff0c;其中所有的 key 都是不同的。通过给定的 key 可以在常数时间复杂度内完成检索、更新或…...

ABP VNext 与 Neo4j:构建基于图数据库的高效关系查询

ABP VNext 与 Neo4j&#xff1a;构建基于图数据库的高效关系查询 &#x1f680; 在社交网络、权限图谱、推荐系统等应用场景中&#xff0c;关系链深度和复杂度远超传统关系型数据库的表达能力。本文基于 ABP VNext 框架&#xff0c;集成 Neo4j 图数据库&#xff0c;构建一套高…...

数论——同余问题全家桶3 __int128和同余方程组

数论——同余问题全家桶3 __int128和同余方程组 快速读写和__int128快速读写__int128 中国剩余定理和线性同余方程组中国剩余定理(CRT)中国剩余定理OJ示例模板题曹冲养猪 - 洛谷模板题猜数字 - 洛谷 扩展中国剩余定理扩展中国剩余定理OJ示例模板题扩展中国剩余定理&#xff08;…...

leetcode47.全排列II:HashSet层去重与used数组枝去重的双重保障

一、题目深度解析与重复排列问题 题目描述 给定一个可能包含重复数字的数组nums&#xff0c;返回其所有不重复的全排列。解集不能包含重复的排列&#xff0c;且排列可以按任意顺序返回。例如&#xff1a; 输入&#xff1a;nums [1,1,2]输出&#xff1a;[[1,1,2],[1,2,1],[2…...

5.Nginx+Tomcat负载均衡群集

Tomcat服务器应用场景&#xff1a;tomcat服务器是一个免费的开放源代码的Web应用服务器&#xff0c;属于轻量级应用服务器&#xff0c;在中小型系统和并发访问用户不是很多的场合下被普遍使用&#xff0c;是开发和调试JSP程序的首选。一般来说&#xff0c;Tomcat虽然和Apache或…...

React项目的状态管理:Redux Toolkit

目录 1、搭建环境 2、Redux Toolkit 包含了什么 3、使用示例 &#xff08;1&#xff09;创建user切片 &#xff08;2&#xff09;合并切片得到store &#xff08;3&#xff09;配置store和使用store 使用js来编写代码&#xff0c;方便理解一些 1、搭建环境 首先&#xf…...