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

软件测试笔记(测试的概念、测试和开发模型介绍、BUG介绍)

软件测试笔记

认识测试

软件测试是啥?
说白了,就是检查软件的功能和效果是不是用户真正想要的东西。比如用户说“我要一个能自动算账的软件”,测试就是看这个软件到底能不能准确算账、有没有漏掉功能。

软件测试定义:软件测试就是验证软件产品特性是否满足用户的需求。

概念篇

什么是需求

在多数软件公司,会有两部分需求。一部分是用户需求,一部分是软件需求。

用户需求:通常是用户随口说的一句话,比如“我想要个能聊天的软件”。这种需求很模糊,不能直接拿来开发,比如用户没说要支持语音还是文字聊天。

软件需求:产品经理对用户需求进行需求分析(技术可行性、市场可行性、成本投入和收益占比等)后得到软件需求,它是开发和测试人员工作的基本依据。产品经理会把用户需求“翻译”成具体能实现的东西。比如:

  • 聊天软件要支持文字、语音、发图片;

  • 消息要能撤回,还要有已读提示。

  • 这些具体的功能点才是开发写代码、测试做检查的依据。

开发模型

软件的生命周期

需求的开始是软件生命的起点,中间会经历需求的计划、设计,程序开发,程序测试阶段,直到软件不再进行维护便到了生命的终点。

简而言之就是:

需求分析 -> 计划 -> 设计 -> 编码 -> 测试 -> 运行维护

image-20250420190530258

常见开发模型
瀑布模型

image-20250420190556755

瀑布模型的每个阶段只执行一次,因此是线性顺序进行的软件开发模式。

瀑布模型的优点:
1. 强调开发的阶段性
2. 线性结构,每个阶段只执行一次
3. 是其他模型的基础框架

瀑布模型的缺点:

  1. 测试后置
    • 前面各阶段遗留的风险推迟到最后的测试阶段才被发现,可能导致大面积返工。
    • 必须给测试留够足够长的时间,不然会导致测试不充分。
  2. 周期太长,产品很迟才能被看到和使用,可能会导致需求/功能过时。

瀑布模型的适用场景:需求固定的小项目。

螺旋模型

image-20250420191453981

螺旋模型的优点:

  1. 强调严格的全过程风险管控。
  2. 强调各开发阶段的质量。
  3. 增加风险分析和原型。

螺旋模型的缺点:

  1. 增加了风险分析和原型,需要增加人员、资金、时间的投入,提高项目的成本。
  2. 项目中存在的风险性与风险管理人员的技能水平有直接关系。
增量模型

增量模型是把待开发的软件系统模块化,将每个模块作为一个增量组件,从而分批次地分析、设计、编码和测试这些增量组件。运用增量模型的软件开发过程是递增式的过程。

image-20250420192400003

image-20250420192613302

优点:

  1. 将待开发的软件系统模块化,可以分批次地提交软件产品,使用户可以及时了解软件项目的进展。

  2. 以组件为单位进行开发降低了软件开发的风险。一个开发周期内的错误不会影响到整个软件系统

  3. 开发顺序灵活。开发人员可以对组件的实现顺序进行优先级排序。

缺点:

  1. 待开发的软件系统可以被模块化,如果待开发的软件系统很难被模块化,那么将会给增量开发带来很多麻烦。

适用场景:大型项目。

迭代模型

迭代模型:将系统的开发工作划分成一个个迭代,不要求一次行完成整个系统的开发(相对于瀑布开发而言)。

image-20250420192630940

迭代模型的特点:

  • 第一个阶段就覆盖了项目整体范围,以后每个阶段都是在前一阶段的基础上改进、完善,没有业务范围的扩展。

适用场景:大型项目。

敏捷模型

敏捷模型旨在帮助项目快速适应变更请求、促进项目的快速完成。

在敏捷模型中。需求被分解成许多可以增量开发的小部分,每个增量部分都是在迭代中开发的。每次迭代都旨在小而易于管理。并且只能在几周内完成。

敏捷模型的四个特点:轻文档、轻流程、重目标、重产出。

测试模型

V 模型

image-20250420194942515

优点:明确的标注了测试过程中存在的不同类型的测试,并且清楚的描述了这些测试阶段和开发过程期间各阶段的对应关系,有效提升了测试的质量和效率。

缺点:V 模型是瀑布模型的变种,瀑布模型存在的问题V 模型也存在。V模型最大的问题就是“测试开始得太晚”——它把大部分测试都堆在开发完成后才做。比如需求阶段只写文档,不提前检查问题,等到最后测试才发现需求理解错了,这时候改起来成本就很高。如果能在写需求、设计文档的时候,就边写边检查(比如找人评审文档),很多问题其实不用等到最后就能提前解决。(举例:就像盖楼,等房子盖完了才发现图纸有问题,拆了重建肯定费钱费力。如果盖之前就把图纸检查清楚,返工就会少很多。)

W 模型(双 V 模型)

image-20250420200059711

W 模型由两个 V 字形模型组成,分别代表测试与开发过程。图中明确表示出了测试与开发的并行关系。

特点:测试的对象不仅是程序,需求、设计等也需要测试,测试与开发是同步进行的。

优点:W 模型相对于 V 模型来说,测试更早的进入到开发阶段,与开发阶段是并行关系,更早的发现问题,能够及时解决问题,各个阶段分工明确,方便管理。

缺点:W 模型是顺序性的,不可逆,需求的变更和调整,依旧不方便。

BUG 篇

软件测试的生命周期

软件测试贯穿于软件的整个生命周期。

image-20250420200616787

各阶段的具体内容:

image-20250420200819588

BUG 的描述和级别

描述 BUG 的基本要素:问题出现的版本、问题出现的环境、问题出现的步骤、预期结果、实际结果。

BUG 级别一般分为:崩溃、严重、一般、次要。

image-20250420201123236

BUG 的生命周期

BUG 的生命周期:

image-20250420201226063

一个Bug从被发现到解决,会经历这些状态:

  1. New(新发现)

    • 状态说明:刚发现的Bug,还没确认要不要修。
    • 举个栗子:测试小哥发现点击按钮会卡死,先记下来,等大家开会决定要不要处理。
  2. Open(确认要修)

    • 状态说明:确认是Bug,交给程序员去修了。
    • 举个栗子:开会确认这按钮确实有问题,程序员A接单开修!
  3. Fixed(已修复)

    • 状态说明:程序员说修好了,等测试人员再检查一遍。
    • 举个栗子:程序员A提交代码后,测试小哥得重新点按钮看还卡不卡。
  4. Rejected(拒绝修)

    • 状态说明:“这不是Bug,不用修!”
    • 举个栗子:程序员A说按钮卡死是因为网络慢,不算Bug,直接驳回。
  5. Delay(延后修)

    • 状态说明:“先放着,以后再说。”
    • 举个栗子:这Bug只在IE浏览器出现,但公司早不用IE了,先不修。
  6. Closed(已关闭)

    • 状态说明:测试通过,Bug正式关掉!
    • 举个栗子:测试小哥验证按钮不卡了,Bug彻底解决,关掉!
  7. Reopen(重新打开)

    • 状态说明:“Bug没修好,打回去重修!”
    • 举个栗子:测试小哥发现按钮还是偶尔卡死,重新丢给程序员A返工。

参考资料

软件开发传统模型——瀑布模型、原型模型、增量模型、螺旋模型、喷泉模型-CSDN博客

开发模型的理解:瀑布模型/增量式/迭代/敏捷开发——笔记 - 知乎

软件测试模型——V模型 & W模型_软件测试v模型-CSDN博客


本文到这里就结束啦~

在这里插入图片描述

相关文章:

软件测试笔记(测试的概念、测试和开发模型介绍、BUG介绍)

软件测试笔记 认识测试 软件测试是啥? 说白了,就是检查软件的功能和效果是不是用户真正想要的东西。比如用户说“我要一个能自动算账的软件”,测试就是看这个软件到底能不能准确算账、有没有漏掉功能。 软件测试定义:软件测试就…...

Python多进程同步全解析:从竞争条件到锁、信号量的实战应用

1. 进程同步的必要性 在多进程编程中,当多个进程需要访问共享资源时,会出现竞争条件问题。例如火车票售卖系统中,如果多个售票窗口同时读取和修改剩余票数,可能导致数据不一致。 1.1 竞争条件示例 from multiprocessing import…...

Vue3 + TypeScript,关于item[key]的报错处理方法

处理方法1:// ts-ignore 注释忽略报错 处理方法2:item 设置为 any 类型...

Spring源码中关于抽象方法且是个空实现这样设计的思考

Spring源码抽象方法且空实现设计思想 在Spring源码中onRefresh()就是一个抽象方法且空实现,而refreshBeanFactory()方法就是一个抽象方法。 那么Spring源码中onRefresh方法定义了一个抽象方法且是个空实现,为什么这样设置,好处是什么。为…...

Pandas数据可视化

在当今这个数据驱动的时代,数据可视化已经成为数据分析不可或缺的一部分。通过图形化的方式展示数据,我们能够更直观地理解数据的分布、趋势和关系,从而做出更加精准的决策。Pandas,作为Python中最为流行的数据处理库,…...

string类(详解)

【本节目标】 1. 为什么要学习string类 2. 标准库中的string类 3. string类的模拟实现 4. 扩展阅读 1. 为什么学习string类? 1.1 C语言中的字符串 C 语言中,字符串是以 \0 结尾的一些字符的集合,为了操作方便, C 标准库中提供…...

零基础上手Python数据分析 (19):Matplotlib 高级图表定制 - 精雕细琢,让你的图表脱颖而出!

写在前面 —— 超越默认样式,掌握 Matplotlib 精细控制,打造专业级可视化图表 上一篇博客,我们学习了 Matplotlib 的基础绘图功能,掌握了如何绘制常见的折线图、柱状图、散点图和饼图,并进行了基本的图表元素定制,例如添加标题、标签、图例等。 这些基础技能已经能让我…...

【上位机——MFC】MFC入门

MFC库中相关类简介 CObject MFC类库中绝大部分类的父类,提供了MFC类库中一些基本的机制。 对运行时类信息的支持。对动态创建的支持。对序列化的支持。 CWinApp 应用程序类,封装了应用程序、线程等信息。 CDocument 文档类,管理数据 F…...

ASP.NET Core 最小 API:极简开发,高效构建(下)

在上篇文章 ASP.NET Core 最小 API:极简开发,高效构建(上) 中我们添加了 API 代码并且测试,本篇继续补充相关内容。 一、使用 MapGroup API 示例应用代码每次设置终结点时都会重复 todoitems URL 前缀。 API 通常具有…...

【leetcode100】一和零

1、题目描述 给你一个二进制字符串数组 strs 和两个整数 m 和 n 。 请你找出并返回 strs 的最大子集的长度,该子集中 最多 有 m 个 0 和 n 个 1 。 如果 x 的所有元素也是 y 的元素,集合 x 是集合 y 的 子集 。 示例 1: 输入&#xff1a…...

代码随想录算法训练营第五十三天 | 105.有向图的完全可达性 106.岛屿的周长

105.有向图的完全可达性 题目链接:101. 孤岛的总面积 文章讲解:代码随想录 视频讲解:图论:岛屿问题再出新花样 | 深搜优先搜索 | 卡码网:101.孤岛总面积_哔哩哔哩_bilibili 思路: 1.确认递归函数&…...

在 Debian 10.x 安装和配置 Samba

1. 更新系统 sudo apt update sudo apt upgrade -y2. 安装 Samba sudo apt install samba -y3. 配置 Samba 备份默认配置文件 sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak编辑配置文件 sudo nano /etc/samba/smb.conf示例配置(共享目录) …...

Python中的短路运算

近期在学习python的过程中遇到此问题,遂总结记录 在”and“逻辑判定布尔类型时: 若判定对象均为True,则输出最后一个判别为True的对象 若判定对象的数据类型中有布尔类型,且最终结果为False,则输出布尔类型False 若判定对象的…...

Java8-遍历list取出两个字段重新组成list集合

在Java 8中,可以使用Stream API遍历List并提取两个字段重新组合成新的List。 以下是几种常见方法: 方法1:使用自定义类 定义一个包含目标字段的类:public class FieldHolder {private final String field1;private final int field2;public FieldHolder(String field1, i…...

【C++ 程序设计】实战:C++ 实践练习题(31~40)

目录 31. 数列:s 1 + 2 + 3 + … + n 32. 数列:s 1 - 2 - 3 - … - n 33. 数列:s 1 + 2 - 3 + … - n 34. 数列:s 1 - 2 + 3 - … &#…...

【笔记】SpringBoot实现图片上传和获取图片接口

上传图片接口 接口接收图片文件和布尔类型的是否生成缩略图参数。 生成保存图片文件的文件夹,文件夹的命名为上传图片的日期“根目录\file\cover\202504”,如果文件夹已存在则不生成。接下来拼接文件名,生成30位的随机数拼接到原文件名防止文件名相同的…...

Linux 下依赖库的问题

假设你在 某用户 user_name 下安装了一个 rquests库。 然后你在命令行使用 python3 -c (...)验证。发现没有任何问题。 然后你使用python3 xxx.py 发现执行验证也没有问题。 这个时候你信心慢慢的写了一个C的代码在代码中system调用这个.py文件。 然…...

STM32 HAL 水位传感器驱动程序

工作原理是输出模拟量电压值,只需要使用stm32adc读取电压再转换一下即可 本代码中,水位传感器连接在PA0,可通过宏定义快速设置电压区间和水位之间的关系 water_level.c /***************************************************************…...

DeepSeek R1 7b,Langchain 实现 RAG 知识库 | LLMs

DeepSeek R1 7b,Langchain 实现 RAG 知识库 | LLMs DeepSeek R1 7b,Langchain 实现 RAG 知识库DeepSeek R1Chat via ConsoleChat via Browser LangchainFAQs GitHub https://github.com/hailiang-wang/ollama-get-started DeepSeek R1 7b,La…...

【C语言】char unsigned char signed char

在C语言中,char 和 unsigned char 虽然都是1字节(通常8位)的数据类型,但它们在符号处理、数值范围和用途上有显著区别。以下是详细对比: 1. 核心区别 特性charunsigned char符号性可能是signed或unsigned(由编译器决定)明确无符号(仅非负数)数值范围通常 -128 到 1270…...

硬件电路(24)-NE555振荡电路

一、概述 NE555 是一款能产生高精度定时脉冲的双极性集成电路。内部包括阈值比较器、触发比较器、RS触发 器、输出电路等四部分电路构成。它可通过外接少量的阻容器件,组成定时触发电路、脉宽调制电路、音 频振荡器等等电路。广泛应用于玩具、信号交通、自动化控制等…...

Transformer系列(二):自注意力机制框架

自注意力机制框架 一、K-Q-V的自注意力机制二、位置表征1. 通过学习嵌入来进行位置表征2. 通过直接改变 α \alpha α来进行位置表征 三、逐元素非线性变换四、未来掩码(future mask)五、总结 上篇博客:NLP中放弃使用循环神经网络架构讲解了循环神经网络…...

安全技术和防火墙

传输层4.7层防火墙 传输层(4)四层防火墙:ip地址 mac地址 协议 端口号来控制数据流量 应用层防火(7)墙/代理服务器: ip地址 mac地址 协议 端口号来控制数据流量 真实传输的数据(把前面的ip地址…...

深度可分离卷积与普通卷积的区别及原理

1. 普通卷积 普通卷积使用一个滤波器在输入特征图的所有通道上滑动,同时对所有通道进行加权求和,生成一个输出通道。如果有多个滤波器,则生成多个输出通道。假设上一层的特征图有 n 个通道,每个通道是一个二维的图像(…...

STM32时钟树

1、认识时钟树 H:high 高 L:low 低 S:speed 速度 I:internal 内部 E:external 外部 HSE就是高速外部时钟源 HSI就是告诉内部时钟源 外部时钟一般需要接一个时钟源,也就是晶振,这个需要外接&…...

致迈协创C1pro考勤系统简介

1.应用背景 该套件的“数据映射引擎”技术,完成了OA系统与考勤机硬件设备的无缝联接。V5具有良好交互特性和B/S的程序架构,使得客户管理层和HR相关管理人员通过V5能实时查询统计人员的考勤情况,从而及时有效的完成人员考勤的监控与管理&#…...

pivot_root:原理、用途及最简单 Demo

什么是 pivot_root pivot_root 是 Linux 系统中的一个系统调用(和对应的命令行工具),用于更改进程的根文件系统。与 chroot 类似,pivot_root 将一个指定目录设置为进程的新根目录(/),但它比 ch…...

【小沐杂货铺】基于Three.JS绘制卫星轨迹Satellite(GIS 、WebGL、vue、react,提供全部源代码)

🍺三维数字地球系列相关文章如下🍺:1【小沐学GIS】基于C绘制三维数字地球Earth(OpenGL、glfw、glut)第一期2【小沐学GIS】基于C绘制三维数字地球Earth(OpenGL、glfw、glut)第二期3【小沐学GIS】…...

MySQL -数据类型

博客主页:【夜泉_ly】 本文专栏:【暂无】 欢迎点赞👍收藏⭐关注❤️ 目录 前言数值类型intbitfloat 字符串charvarcharenum set 日期和时间类型 前言 在之前的操作篇, 我们用到的大多是DDL(数据定义语言)。 在建表时,…...

数据通信学习笔记之OSPF的邻居角色

邻居与邻接 OSPF 使用 Hello 报文发现和建立邻居关系 在以太网链路上,缺省时,OSPF 采用组播的形式发送 Hello 报文 (目的地址 224.0.0.5) OSPF Hello 报文中包含了路由器的 RouterID、邻居列表等信息。 邻居状态: 邻居:2-way 邻…...

2025第十六届蓝桥杯python B组满分题解(详细)

目录 前言 A: 攻击次数 解题思路: 代码: B: 最长字符串 解题思路: 代码: C: LQ图形 解题思路: 代码: D: 最多次数 解题思路: 代码: E: A * B Problem 解题思路&…...

计算机组成原理笔记(十七)——4.2定点加减运算

定点数的加减运算包括原码、补码和反码3种带符号数的加减运算,其中补码加减运算实现起来最方便。 4.2.1原码加减运算 原码加减运算详解 原码是计算机中表示数值的基本方式之一,其特点为最高位为符号位(0表正,1表负)…...

javase 学习

一、Java 三大版本 javaSE 标准版 (桌面程序; 控制台开发) javaME 嵌入式开发(手机、小家电)基本不用,已经淘汰了 javaEE E业级发开(web端、 服务器开发) 二、Jdk ,jre jvm 三…...

成品检验工程师心得总结

岗位:成品检验助理工程师 成品检验工程师——————>OQC工程师 何为成品? 简单来说,就是已经完成了产品的开发,测试,满足客户所有需求开发的产品。 成品检验工程师对应的是哪一个角色? 客户&…...

操作系统:进程是一个非常重要的抽象概念

在操作系统中,进程是一个非常重要的抽象概念,它是程序在计算机上的执行实例,是系统进行资源分配和调度的基本单位。 一、进程的定义 从动态角度来说,进程是程序的一次执行过程。例如,当你在计算机上打开一个文本编辑…...

QML 字符串格式化

在 QML 中,处理字符串格式化有多种方法,以下是常用的字符串格式化函数和技巧: 1. 基本字符串连接 qml var str "Hello, " "QML!"; // 简单连接 var name "Alice"; var greeting Hello, ${name}; // 模…...

堆排序的C++相关实现

大根堆的实现 #include <iostream> #include <vector> using namespace std;// 调整堆&#xff0c;确保以i根节点的子树满足大根堆 void heapify(vector<int>& vec, int n , int i) {int largest i;int left 2 * i 1;int right 2 * i 2;if (left &…...

c++类与对象(一)

前言&#xff1a; 什么是面向对象编程&#xff1f;什么是类与对象&#xff1f;为啥要搞类与对象啊&#xff1f;凭什么c能支持面向对象编程啊&#xff1f; 每次学东西前问自己几个问题会挺爽的&#xff0c;因为你越是懵逼&#xff0c;你就越想知道答案是什么。希望我的这几篇文章…...

(二)mac中Grafana监控Linux上的MySQL(Mysqld_exporter)

框架&#xff1a;GrafanaPrometheusMysqld_exporter 一、监控查看端安装 Grafana安装-CSDN博客 普罗米修斯Prometheus监控安装&#xff08;mac&#xff09;-CSDN博客 1.启动Grafana服务 brew services start grafana 打开浏览器输入http://localhost:3000进入grafana登录…...

认知升级:把握人工智能教育化转型的历史机遇

认知升级&#xff1a;把握人工智能教育化转型的历史机遇 ----灌南县第四中学 孟祥帅 2025年4月17日至19日&#xff0c;我有幸参加了教育部主办的“全国人工智能校长局长专题培训班”。此次大会以“人工智能赋能教育现代化”为主题&#xff0c;汇聚了全国各地的教育局局长、校…...

人形机器人马拉松:北京何以孕育“领跑者”?

“机器人每跑一小步&#xff0c;都是人类科技的一大步”&#xff0c;这句对阿姆斯特朗登月名言的仿写&#xff0c;恰如其分地诠释了全球首场人形机器人半程马拉松赛事的里程碑意义。 2025年4月19日&#xff0c;北京亦庄半程马拉松暨人形机器人半程马拉松圆满结束。在总长21.09…...

HBuilder X:前端开发的终极生产力工具

一、极速下载与部署指南 官方下载地址&#xff1a;HBuilderX-高效极客技巧 HBuilder X 提供轻量化绿色发行包&#xff08;仅 10 余 MB&#xff09;&#xff0c;支持 Windows、macOS、Linux 全平台。 安装流程&#xff1a; Windows 用户&#xff1a; 下载.zip压缩包后解压至非系…...

对于校园网如何进行用户识别——captive portal的原理学习总结

一、技术名称总结 这一技术的核心称为 Captive Portal&#xff08;强制门户&#xff09;&#xff0c;中文常译为“认证门户”或“强制门户”。它是通过拦截未认证用户的网络流量&#xff0c;强制跳转到指定登录页面的技术。 二、技术提供方与部署逻辑 Captive Portal的实现主…...

肖特基二极管详解:原理、作用、应用与选型要点

一、肖特基二极管的基本定义 肖特基二极管&#xff08;Schottky Diode&#xff09; 是一种基于金属-半导体结&#xff08;肖特基势垒&#xff09;的二极管&#xff0c;其核心特性是低正向压降&#xff08;Vf≈0.3V&#xff09;和超快开关速度。 结构特点&#xff1a;阳极采用金…...

6.数据手册解读—运算放大器(三)

7、应用和实现 7.1应用信息 TLV916x 系列提供了出色的直流精度和交流性能。 这些器件的工作电压高达 16V&#xff0c; 并提供真正的轨到轨输入/输出、 低失调电压、失调电压漂移以及 11MHz 带宽和高输出驱动。TLV916x适用于16V工业应用。 7.2 典型应用 7.2.1 低边电流测量 下…...

关于隔离1

1.隔离的目的&#xff1a; 在隔离电源设计中&#xff0c;输入与输出之间没有直接电气连接&#xff0c;提供绝缘高阻态&#xff0c;防止电流回路。这意味着输入与输出之间呈现为绝缘的高阻态&#xff0c;从而确保了无电流回路的形成。 隔离与可靠保护有关。电隔离是一种电路设…...

大语言模型推理能力的强化学习现状理解GRPO与近期推理模型研究的新见解

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…...

【NLP 60、实践 ⑭ 使用bpe构建词表】

目录 一、BPE&#xff08;Byte Pair Encoding&#xff09;算法详解 1.基本概念 2.核心思想 3.算法步骤详解 Ⅰ、预处理 Ⅱ、统计字符对频率 Ⅲ、合并高频字符对 Ⅳ、编码与解码 ① 编码&#xff08;文本→子词序列&#xff09; ② 解码&#xff08;子词序列→文本&#xff09; …...

String +memset字符串类题型【C++】

tips&#xff1a; 1、寻找最大公共子串时&#xff0c;如果字符串可以旋转但是不能反转&#xff0c;考虑在每个字符串后重复一次自身&#xff0c;如 "abcd" 变为 "abcdabcd"&#xff0c;这样在用dp就可以了。 如何变环拆环为链&#xff1a; cin>>n&…...

06 GE Modifier

看看这个 问题。怪&#xff01;究竟下一个modifier能不能访问到上一个&#xff1f;刚才还可以啊现在怎么不行了。 这里捕获了Owner的属性&#xff0c;Source不知道在哪捕获的 CalculationType: 1.使用计算后的值 2.使用基础值 3.使用计算后的值-基础值。 BackingAttributes Sou…...