那个网站可以做软件出售的/讯展网站优化推广
什么是集成测试
集成测试(Integration Testing),也叫组装测试或联合测试。在单元测试的基础上,将所有模块按照设计要求(如根据结构图)组装成为子系统或系统,进行集成测试。
集成测试(也叫组装测试,联合测试)是单元测试的逻辑扩展。它最简单的形式是:把两个已经测试过的单元组合成一个组件,测试它们之间的接口。从这一层意义上讲,组件是指多个单元的集成聚合。在现实方案中,许多单元组合成组件,而这些组件又聚合为程序的更大部分。方法是测试片段的组合,并最终扩展成进程,将模块与其他组的模块一起测试。最后,将构成进程的所有模块一起测试。此外,如果程序由多个进程组成,应该成对测试它们,而不是同时测试所有进程。
集成测试是在单元测试的基础上,测试在将所有的软件单元按照概要设计规格说明的要求组装成模块、子系统或系统的过程中各部分工作是否达到或实现相应技术指标及要求的活动。也就是说,在集成测试之前,单元测试应该已经完成,集成测试中所使用的对象应该是已经经过单元测试的软件单元。这一点很重要,因为如果不经过单元测试,那么集成测试的效果将会受到很大影响,并且会大幅增加软件单元代码纠错的代价。
所有的软件项目都不能摆脱系统集成这个阶段。不管采用什么开发模式,具体的开发工作总得从一个一个的软件单元做起,软件单元只有经过集成才能形成一个有机的整体。具体的集成过程可能是显性的也可能是隐性的。只要有集成,总是会出现一些常见问题,工程实践中,几乎不存在软件单元组装过程中不出任何问题的情况。从集成测试需要花费的时间远远超过单元测试,直接从单元测试过渡到系统测试是极不妥当的做法。
测试关注的重点
一些模块虽然能够单独工作,但并不能保证连接起来也能正常的工作,程序在某些局部反映不出来的问题,在全局上很可能暴漏出来,影响功能的实现,因此集成测试应当考虑两大(5个)问题:
1、模块间的接口(接口的覆盖率)
(1)在把各个模块连接起来的时候,穿越模块接口的数据是否会丢失。
(2)全局数据结构是否有问题,会不会被异常修改。
2、集成后的功能(参数的传递)
(1)各个子功能组合起来,能否达到预期要求的父功能。
(2)一个模块的功能是否会对另一个模块的功能产生不利的影响。
(3)单个模块的误差积累起来,是否会放大,从而达到不可接受的程度。
集成测试的三个级别
由于集成的力度不同,一般可以把集成测试划分为三个级别:
1、模块内集成测试。
2、子系统内集成测试。
3、子系统间集成测试。
集成测试的模式
1.非渐增测试:先分别测试每个模块,再把所有模块按设计要求一次全部组装起来所要的系统,然后进行整体测试。非渐增式测试时可能发现一大堆错误,为每个错误定位和纠正非常困难,并且在改正一个错误的同时又可能引入新的错误,新旧错误混杂,更难断定出错的原因和位置。非渐增式的方法如:大爆炸集成。
2.渐增测试:逐个把未经测试的模块组装到已经过测试的模块上去进行集成测试,每加入一个新模块进行一次测试,重复此过程直至程序组装完成。渐增式测试有以下组装方法:自顶向下和自底向上。
两者的区别是:
1、非渐增式方法是把单元测试和集成测试分成两个不同的阶段,前一阶段完成模块的单元测试,后一阶段完成集成测试。而渐增式测试则是把单元测试和集成测试结合在一起,同时完成。
2、非渐增式需要更多的工作量,因为每个模块都需要驱动模块和桩模块,而渐增式利用已测试过的模块作为驱动模块或桩模块,因此工作量少。
3、渐增式可以较早地发现接口间的错误,非渐增式到最后组装的时候才发现。
4、渐增式有利于拍错,发生错误往往和最近新加入的模块有关,而非渐增式发现接口错误推迟到最后,很难判断是哪一部分接口出错。
5、渐增式比较彻底,已测试的模块和新的模块在测试。
6、非渐增式开始可并行测试所有模块,能充分利用人力,对测试大型软件很有意义。
集成测试策略
集成测试策略最主要的有三种:
1、大爆炸集成(Big Bang Integration)。
2、自顶向下集成(Top-Down Integration)。
3、自底向上集成(Bottom-up Integration)。
基于以上三种测试策略,又提出了以下五种集成测试策略,它们都是在上面的三种主要测试策略的基础上进行综合,改进而成的。
1、三明治集成(Sandwich Integration)。
2、基干集成(Backbone Integration)。
3、分层集成(Layers Integration)。
4、基于功能的集成(Function-Based Integration)。
5、基于进度的集成(Schedule-Based Integration)
大爆炸集成(Big Bang Integration)
(1)概念:大爆炸集成(Big Bang Integration)是属于非渐增式集成(Non-Incremental Integration)的一种方法,也叫一次性组装货整体拼装。该集成把所有组件一次性集合到被测系统中,不考虑组件之间的相互依赖性或者可能存在的风险。
(2)目的:在最短的时间内把系统组装起来,并且通过最少的测试来验证整个系统。
(3)策略:在大爆炸这种集成方法中,首先需要对每个模块进行单元测试,然后把所有单元组装到一起进行测试,最终得到要求的软件系统。
(4)优点:
- 在有利的情况下,大爆炸集成可以迅速完成集成测试,并且只要极少数的驱动单元和桩单元(如果需要的话)。
- 需要的测试用例最少。
- 方法比较简单。
- 可以并行开展,对人力、物力的资源利用率较高。
(5)缺点:
- 这种在单元测试的基础上,将所有组件一次性进行组装,不考虑组件之间的依赖性,虽然简单,但是由于程序中不可避免的存在模块间接口、全局数据结构等方面的问题,所以一次试运行成功的可能性并不大。
- 在发现错误的时候,问题定位和修改都比较困难。
- 即使被测系统能够被一次性集成,但还是会有很多接口问题可以躲过集成测试而进入到系统测试。
(6)适用范围:
- 一个维护性项目(或者功能增强型项目),以前的产品已经很稳定,并且新增的项目只有少数几个组件被增加或者修改。
- 被测系统比较小,并且它的每个组件都进行了充分的单元测试。
自顶向下集成(Top-Down Integration)
(1)概念:自顶向下集成(Top-Down Integration)采用了和设计一样的顺序进行测试,它在第一时间内对系统的控制接口进行验证,其中顶层的组件具有控制的责任,首先测试顶层的组件,然后逐步测试处于底层的组件,这种集成方式可以采用深度优先策略和广度优先策略。
(2)目的:从顶层开始控制,采用和设计一样的思路对系统进行测试,以验证系统的接口稳定性。
(3)策略:
- 以主模块为所测模块兼驱动模块,所有直属于主模块下的下属模块全部用桩单元代替,对主模块进行测试。
- 采用深度优先(Depth-First)或者广度优先(Breath-First)的策略,用实际模块替换相应桩模块,再用桩模块代替它们的直接下属模块,与已经测试的模块组成新的子系统或者系统。
(4)优点:
- 自顶向下这种集成方式,在测试过程中较早的验证了主要的控制和判断点,如果主要控制有问题,尽早发现它能够减少以后的返工,所以这是十分必要的。
- 如果采用深度优先的策略,就可以首先实现和验证一个完整的软件功能,可以先对逻辑输入的分支进行组装和测试,检查和客服潜藏的错误和缺陷,验证功能的正确性,为之后对主要加工分支的组装和测试提供了保证。
- 功能的可行性较早得到了证实。
- 最多只需要一个驱动模块,减少了驱动模块的费用开支,也减轻了后期对驱动模块的维护。
- 由于该方法和设计的思路是一样的,所以可以和设计并行开展,如果目标环境或者设计需要改变,这种方式也可以灵活的适应。
- 支持故障隔离。例如:A模块测试正常,但是假如B模块之后,出现问题,那么可以确定,要么就是B模块有问题,要么就是A模块和B模块之间的接口有问题。
(5)缺点:
- 桩在每个测试中都必须提供,所以桩的开发和维护是该策略的最大成本。
- 底层组件中的一个无法预计的需要可能会导致许多顶层组件的修改,这破坏了部分先前构造的测试包。
- 底层组件行为的验证被推迟了。
- 随着底层模块的不断增加,系统越来越复杂,导致底层模块的测试肯那个不够充分,尤其是那些被重用的模块。
(6)适用范围:
- 产品控制结构比较清晰和稳定。
- 产品的高层借口比较稳定,底层变化比较频繁。
- 产品的控制模块可能存在技术风险,需要较早被验证。
- 希望尽早能够看到产品的系统功能行为。
自底向上集成(Bottom-up Integration)
(1)概念:自底向上集成(Bottom-up Integration)方式是从程序模块结构的最底层的模块开始组装和测试,因为模块是自底向上进行测试的,对于一个给定层次的模块,它的子模块已经组装并测试完成,所以不再需要桩模块。需要从子模块中得到的信息可以直接运行子模块得到。
(2)目的:从具有最小依赖性的底层组件开始按照依赖关系树的结构,逐层向上集成,以验证整个系统的稳定性。
(3)策略:
- 起始于系统的最底层模块,也可以把多个子模块合并到一起进行测试。
- 使用驱动模块对选定的模块进行测试。
- 用实际模块代替驱动模块,与它已经测试过的子模块组装成为一个更大的模块组进行测试。
- 重复上面的步骤,直到系统最顶层模块加入到已测系统中。
(4)优点:
- 允许对底层模块行为的早期验证。
- 在工作的最初可以采用并行进行集成,比自顶向下的测试效率高。
- 由于驱动模块是额外编写的,而不是实际的模块,所以对实际被测模块的可测试性要求比自顶向下的测试策略要小。
- 减少了桩模块的工作量。
- 故障隔离。
(5)缺点:
- 驱动模块的开发工作量比较大。
- 对高层的验证被推迟到最后,设计上的错误不能尽早的被发现,尤其对于那些控制机构在整个体系中比较关键的产品。
- 随着集成到了顶层,整个系统将变得越来越复杂,并且对于底层的一些异常很难覆盖。
(6)适用范围:
- 采用契约式开发(Design by Contract)的产品。
- 底层接口比较稳定的产品。
- 高层接口变化比较频繁的产品。
- 底层模块较早被完成的产品。
三明治集成(Sandwich Integration)
由于自顶向下集成策略和自底向上集成策略都有各自的缺点,所以就出现了一种结合这两种测试策略的集成方式,即:三明治集成。
(1)概念:三明治集成(Sandwich Integration)有时也被称为混合式集成,三明治集成就是把系统划分为三层,中间一层为目标层,测试的时候,对目标层上面的一层使用自顶向下的集成策略,对目标层下面的一层使用自底向上的集成策略,最后测试在目标层会合。
(2)目的:综合自顶向下的集成测试策略和自底向上的集成测试策略的优点。
(3)策略:
- 首先对目标层上面的一层采用自顶向下的测试策略,对主模块A进行测试,对A调用的子模块(目标层)用桩单元代替。
- 其次对目标层下面的一层采用自底向上的测试策略。
- 最后将三层集成在一起。
(4)优点:集合了自顶向下和自底向上的两种集成策略的优点。
(5)缺点:中间层在被集成前测试不充分。
(6)适用范围:大部分软件开发项目都可以使用这种集成策略。
基干集成(Backbone Integration)
(1)概念:在很多系统中,尤其在嵌入式系统中,一般可以划分成两个部分:内核部分(基干部分)和外围应用部分,这两部分经常会被不同的项目组并发开发。
(2)目的:结合自顶向下,自底向上和大爆炸集成的元素,以验证紧密耦合的子系统间的互操作性。
(3)策略:
- 对基干中的每个模块进行单独的充分的测试,必要时使用驱动和桩。
- 对基干中所有的模块进行大爆炸集成,形成基干子系统,并使用一个驱动模块检查经过大爆炸的基干。
- 对应用的控制子系统进行自顶向下的集成。
- 把基干和控制子系统进行集成,重新构造控制子系统。
- 对个应用子系统采用自底向上的集成策略。
- 集成基干子系统,控制子系统和各应用子系统形成整个系统。
(4)优点:具有三明治集成的优点,更适合于大型复杂项目的集成。
(5)缺点:
- 必须对系统的结构和相互依存性进行仔细的分析。
- 必须开发桩和驱动模块,并且由于被测系统的复杂性导致这些模块开发工作量的加大,可以通过复用技术在一定程度上降低成本。
- 由于局部采用了大爆炸的策略,所以有些接口可能测试不完整。
(6)适用范围:适合大型复杂的项目
- 具有多层协议的嵌入式系统。
- 操作系统产品
分层集成(Layers Integration)
(1)概念:分层模型在通讯系统中很常见,分层集成就是针对这个特点使用的一种集成。
(2)目的:通过增量式集成的方法验证一个具有层次性体系结构的应用系统的稳定性和互操作性。
(3)策略:
- 划分系统的层次。
- 确定每个层次内部的集成策略,该策略可以使用大爆炸集成,自顶向下集成,自底向上集成和三明治集成中的任何一种策略,一般对于顶层可能还有第二层的内部采用自顶向下的集成策略;对于中间采用自底向上的集成策略,对于底层主要采用进行单独测试。
- 确定层次间的集成策略,该策略可以使用大爆炸集成,自顶向下集成,自底向上集成和三明治集成中的任何一种策略。
(4)优缺点:因为每个层次间和层次内部采用的策略不同,所以优缺点也就是和它采用的测试策略相对应。
(5)适用范围:有明显线性层次关系的产品系统。
基于功能的集成(Function-Based Integration)
(1)概念:在开发过程中,尽早的看到系统主要功能的实现,对于谈对来说也是很有必要的,基于功能的集成是从功能角度出发,按照功能的关键程度对模块的集成顺序进行组织。
(2)目的:采用增值的方法,尽早的验证系统关键功能。
(3)策略:
- 1.确定功能的优先级别。
- 2.分析优先级别最高的功能路径,把该路径上的所有模块集成到一起,必要时使用桩模块和单元模块。
- 3.增加一个关键功能,继续上面一个步骤,直到所有模块都被集成到被测系统中。
(4)优点:
- 采用该方法,可以尽快的看到关键功能的实现,并验证关键功能的正确性。
- 由于该方法在验证某个功能的时候,可能会加入多个模块,因此在进度上,比自顶向下和自底向上还有三明治的集成策略要快一点。
- 接口的覆盖使用的测试用例比较少。
- 可以减少驱动模块的开发
(5)缺点:
- 对于复杂的系统,功能之间的相互关联性可能是错综复杂并难以分析的。
- 对有些接口的测试不充分,会丢失许多接口错误。
- 一些初始的集成需要使用桩模块。
- 可能会有比较大的冗余测试。
(6)适用范围:
- 关键功能具有较大风险的产品。
- 技术探索性的项目,其功能的实现远比质量更关键。
- 对于功能的实现没有把握的产品。
基于进度的集成(Schedule-Based Integration)
(1)概念:进度压力在我们实际的工作中,每个软件开发项目都会遇到,。
为了完成进度,有可能会牺牲质量,基于进度的集成就是在兼顾质量和进度两者之间寻找了一个均衡点。
(2)目的:尽可能早的进行集成测试,提高开发与集成的并行性,有效的缩短进度。
(3)策略:这个集成的策略就是把最早可获得的代码拿来激励进行集成,必要的时候开发桩模块和驱动模块,子啊最大程度上保持与开发的并行性,从而缩短了项目集成的时间。
(4)优点:
- 具有比较高的并行度。
- 有效缩短项目开发的进度。
(5)缺点:
- 可能最早拿到的模块之间缺乏整体性,只能进行独立的集成,导致许多接口必须等到后期才能验证,但此时系统可能已经很复杂,往往无法发现有效的接口问题。
- 桩模块和驱动模块的工作量可能会变得很庞大。
- 由于进度的原因,模块可能很不稳定且会不断变动,导致测试的重复和浪费。
(6)适用范围:进度优先级高于质量的项目。
集成测试策略
集成测试是一种正规测试过程,必须精心计划,并与单元测试的完成时间协调起来。在制定测试计划时,应考虑如下因素:
1、是采用何种系统组装方法来进行组装测试;
2、组装测试过程中连接各个模块的顺序;
3、模块代码编制和测试进度是否与组装测试的顺序一致
4、测试过程中是否需要专门的硬件设备;
解决了上述问题之后,就可以列出各个模块的编制、测试计划表,标明每个模块单元测试完成的日期、首次集成测试的日期、集成测试全部完成的日期、以及需要的测试用例和所期望的测试结果。
在缺少软件测试所需要的硬件设备时,应检查该硬件的交付日期是否与集成测试计划一致。例如,若测试需要数字化仪和绘图仪,则相应测试应安排在这些设备能够投入使用之时,并需要为硬件的安装和交付使用保留一段时间,以留下时间余量。此外,在测试计划中需要考虑测试所需软件(驱动模块、桩模块、测试用例生成程序等)的准备情况。
单元测试后,有必要进行集成测试,发现并排除在模块连接中可能发生的上述问题,最终构成要求的软件子系统或系统。对子系统,集成测试也叫部件测试。
任何合理地组织集成测试,即选择什么方式把模块组装起来形成一个可运行的系统,直接影响到模块测试用例的形式、所用测试工具的类型、模块编号和测试的次序、生成测试用例和调试的费用。通常,有两种不同的组装方式:一次性组装方式和增值式组装方式。
集成测试完成标准
怎样判定集成测试过程完成了,可按以下几个方面检查:
1、成功地执行了测试计划中规定的所有集成测试;
2、修正了所发现的错误;
3、测试结果通过了专门小组的评审。
集成测试应由专门的测试小组来进行,测试小组由有经验的系统设计人员和程序员组成。整个测试活动要在评审人员出席的情况下进行。
在完成预定的组装测试工作之后,测试小组应负责对测试结果进行整理、分析,形成测试报告。测试报告中要记录实际的测试结果、在测试中发现的问题、解决这些问题的方法以及解决之后再次测试的结果。此外还应提出不能解决、还需要管理人员和开发人员注意的一些问题,提供测试评审和最终决策,以提出处理意见
Python接口自动化测试零基础入门到精通(2023最新版)
相关文章:

什么是集成测试?
什么是集成测试 集成测试(Integration Testing),也叫组装测试或联合测试。在单元测试的基础上,将所有模块按照设计要求(如根据结构图)组装成为子系统或系统,进行集成测试。 集成测试ÿ…...

Linux———— 运算命令
Shell与其他编程语言一样,支持多种类型的运算符,包括: 算术运算符:用于执行数学运算,例如加法、减法、乘法和除法。 关系运算符:用于比较两个值之间的关系,例如相等、大于、小于等。 布尔运算…...

批量去除pdf每一页相同未知的同样的内容
例如我想去除每一页右下角的www.alevelcollege.com ①打开acrobat pro ②编辑文件和图像 ③ctrlF输入字符串www.alevelcollege.com替换为空 ④鼠标点击替换 ⑤回车键按下不放,会自动翻页,直到翻页到最后一页。...

HCIA数据通信——静态路由
之前的文章中我提到过静态路由: 数据通信——网络层(路由器以及数据转发流程)_路由器如何转发数据_咕噜跳的博客-CSDN博客这里只做一些简单描述。 路由器关注的是网络之间的通信。路由器以自身为中心,考虑的是如何将数据发送到目…...
Fourier分析导论——第2章——Fourier级数的基本属性(E.M. Stein R. Shakarchi)
第 2 章 Fourier级数的基本属性(Basic Properties of Fourier Series) Nearly fifty years had passed without any progress on the question of analytic representation of an arbitrary function, when an assertion of Fourier threw new light on the subject. Thus…...

redis实现分布式延时队列
文章目录 延时队列简介应用场景案例:考虑:实现:整体思路:具体实现生产者消费者 运行结果 redis分布式延时队列优势redis分布式延时队列劣势 延时队列简介 延时队列是一种特殊的消息队列,它允许将消息在一定的延迟时间…...

Spring AOP源码解读
今天我们来分析Spring中AOP的源码,主要是关于SpringAOP是如何发挥作用的。 前期准备 首先我们需要有一个Spring AOP项目,添加好了SpringAOP的依赖。 <dependency><groupId>org.springframework</groupId><artifactId>spring-co…...

JavaScript基础入门01
目录 1.初识 JavaScript 1.1JavaScript 是什么 1.2发展历史 1.3JavaScript 和 HTML 和 CSS 之间的关系 2.JavaScript 的组成 3.前置知识 3.1第一个程序 4.JavaScript 的书写形式 4.1 行内式 4.2. 内嵌式 4.3.外部式 5.注释 6.输入输出 6.1输入: prompt 6.2输出: …...

yum 命令
基本语法 yum [选项] [参数] 选项说明 -y 对所有提问都回答“yes” 参数说明 实操 yum list | grep firefox yum -y remove firefox yum -y install firefox...

Nginx 部署多个安全域名,多个服务【工作记录】
以下是本人通过Docker 部署的Nginx挂载出来的文件目录 先看下 nginx.conf 配置文件内容:如下 ps:当前文件就是安装后的初始内容,无修改。主要关注最后一行 include /etc/nginx/conf.d/*.conf;表示引入其他目录下的.conf配置文件;…...

性能测试QPS+TPS+事务基础知识分析
本篇文章是性能测试基础篇,主要介绍了性能测试中对QPSTPS事务的基础知识分析,有需要的朋友可以借鉴参考下,希望可以对广大读者有所帮助 事务 就是用户某一步或几步操作的集合。不过,我们要保证它有一个完整意义。比如用户对某一…...

PSP - 蛋白质复合物 AlphaFold2 Multimer MSA Pairing 逻辑与优化
欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://spike.blog.csdn.net/article/details/134144591 在蛋白质复合物结构预测中,当序列 (Sequence) 是异源多链时,无论是AB,还是AABB,都需要 …...

C++中vec.size()-1的坑
问题描述:如下代码, #include <iostream> #include <vector>using namespace std;int main() {vector<int> vec {};for (int i 0; i < vec.size() - 1; i) {cout << "i " << i << ", vec[i] …...

Flask Shell 操作 SQLite
一、前言 这段时间在玩Flask Web,发现用Flask Shell去操作SQLite还是比较方便的。今天简单地介绍一下。 二、SQLite SQLite是一种嵌入式数据库,它的数据库就是一个文件,处理速度快,经常被集成在各种应用程序中,在IO…...

Mybatis—XML配置文件、动态SQL
学习完Mybatis的基本操作之后,继续学习Mybatis—XML配置文件、动态SQL。 目录 Mybatis的XML配置文件XML配置文件规范XML配置文件实现MybatisX的使用 Mybatis动态SQL动态SQL-if条件查询 \<if\>与\<where\>更新员工 \<set\>小结 动态SQL-\<forea…...

excel求差公式怎么使用?
利用excel求差,可能有许多的小伙伴已经会了,不过还是存在一些不太熟悉的朋友们,所以这里有必要讲解一下。其实求差的实现主要就是一个公式,就是用一个单元格中的数字“减去”另一个单元格中的数字“等于”第三个单元格。此公式掌握…...

高效分割分段视频:提升您的视频剪辑能力
在数字媒体时代,视频剪辑已经成为一项重要的技能。无论是制作个人影片、广告还是其他类型的视频内容,掌握高效的视频剪辑技巧都是必不可少的。本文将介绍如何引用云炫AI智剪高效地分割和分段视频,以提升您的视频剪辑能力。以下是详细的操作步…...

【c++|opencv】二、灰度变换和空间滤波---2.直方图和均衡化
every blog every motto: You can do more than you think. https://blog.csdn.net/weixin_39190382?typeblog 0. 前言 图像直方图、直方图均衡化 1. 图像直方图 #include <iostream> #include <opencv2/opencv.hpp>using namespace cv; using namespace std;…...

【Windows】线程同步之信号量(Semaphores)
概述: semaphores 的说明和使用 微软官方文档: Semaphore Objects - Win32 apps | Microsoft Learn Semaphores是解决各种 producer/consumer问题的关键要素。这种问题会存有一个缓冲区,可能在同一时间内被读出数据或被写入数据。 理论可以证…...

二叉树问题——前中后遍历数组构建二叉树
摘要 利用二叉树的前序,中序,后序,有序数组来构建相关二叉树的问题。 一、构建二叉树题目 105. 从前序与中序遍历序列构造二叉树 106. 从中序与后序遍历序列构造二叉树 889. 根据前序和后序遍历构造二叉树 617. 合并二叉树 226. 翻转二…...

Java保留n位小数的方法(超简洁)
要输出double类型保留n位小数的几种方法如下: 我们以保留6位小数为例 方法一:使用DecimalFormat类 import java.text.DecimalFormat;public class Main {public static void main(String[] args) {double number 3.141592653589793;DecimalFormat df …...

JavaEE-博客系统1(数据库和后端的交互)
本部分内容包括网站设计总述,数据库和后端的交互; 数据库操作代码如下: -- 编写SQL完成建库建表操作 create database if not exists java_blog_system charset utf8; use java_blog_system; -- 建立两张表,一个存储博客信息&am…...

【unity/vufornia】Duplicate virtual buttons with name.../同一个ImageTarget上多个按钮失灵
问题:在同一个ImageTarget上添加多个按钮时无法触发对应按钮的事件。 解决过程: 1.查看报错:“Duplicate virtual buttons with name...”这一行,顾名思义,命名重复。 2.英文搜索到以下文章,应该在inspe…...

Apache ActiveMQ 远程代码执行漏洞复现(CNVD-2023-69477)
Apache ActiveMQ 远程代码执行RCE漏洞复现(CNVD-2023-69477) 上周爆出来的漏洞,正好做一下漏洞复现,记录一下 1.漏洞描述 Apache ActiveMQ 中存在远程代码执行漏洞,具有 Apache ActiveMQ 服务器TCP端口ÿ…...

项目管理-科学管理基础-线性规划介绍及例题
项目管理中的线性规划是什么? 在项目管理中,线性规划是一种数学建模和优化技术,用于解决资源分配和进度规划的问题。线性规划的目标是在给定的资源限制下,找到最佳的资源分配方案,以满足项目的需求并优化特定的目标,如成本最小化或时间最短化。 线性规划的基本元素包括…...

如何利用自定义数据对象(元数据)实现全场景身份数据治理
在数字化时代背景下,5G、云计算、大数据、物联网、人工智能等技术的发展,为企业数据管理提供了基础技术支撑。数字化浪潮推动企业快速升级迭代,在数据管理和数字化转型过程中,企业内部的数据情况常常错综复杂,并伴随着…...

腾讯云轻量级服务器哪个镜像比较好?
腾讯云轻量应用服务器镜像是什么?镜像就是操作系统,轻量服务器镜像系统怎么选择?如果是用来搭建网站腾讯云百科txybk.com建议选择选择宝塔Linux面板腾讯云专享版,镜像系统根据实际使用来选择,腾讯云百科来详细说下腾讯…...

SC密封件的材料成分
SC密封件也称为轴密封件,是许多机械系统中的关键组件,提供防止润滑剂泄漏和污染物进入的屏障。但SC密封件是由什么材料制成的呢? SC密封型材由带有橡胶涂层的单个金属保持架和带有集成弹簧的主密封唇组成。这种材料的组合为密封件提供了其基本特性&…...

常用 sqlite3 命令
本次将向您讲解 SQLite 编程人员所使用的简单却有用的命令。这些命令被称为 SQLite 的点命令,这些命令的不同之处在于它们不以分号 ; 结束。 让我们在命令提示符下键入一个简单的 sqlite3 命令,在 SQLite 命令提示符下,您可以使 用各种 …...

SpringMVC Day 08 : 文件上传下载
前言 文件上传和下载是 Web 开发中的重要环节,但它们往往不那么容易实现。幸运的是,Spring MVC 提供了一套简单而又强大的解决方案,让我们可以专注于业务逻辑,而不必过多关注底层的文件处理细节。 在本篇博客中,我们…...