首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

【测试】软件测试知识点-期中复习2

1.1常见的软件测试模型有哪几种 V模型、双V模型(W模型)、H模型、X模型 1.2简述软件测试V模型的流程 需求分析->概要设计->详细设计->编码->单元测试->集成测试->系统测试->验收测试 1.3软件测试V模型的优点、缺点。 优:各阶段分工明确,表示出软件开发阶段,包含了底层测试和高层测试 缺:许多前期的错误到后期才能发现或者无法发现,且需求分析阶段无法完全确定客户需求,需求发生变动时修改的返工量巨大。 1.4H模型诞生的背景 软件开发活动中虽然被分阶段执行,但实践中人们发现这些并不完全是串行的,更多的是交叉进行、迭代进行。为了解决上述问题,人们提出了“H”模型。 1.5H模型示意图及说明

03

压测TPS_测压管原理

1. TPS、并发量是什么关系?为什么有的地⽅要⽤TPS?有的地⽅要⽤并发? ⾸先,TPS是⼀个吞吐速度的概念,就是每秒处理多少请求。是衡量系统处理能⼒的指标,⽽往往TPS的最⼤值,并⾮系统资源耗尽的时点,因为TPS和系统资源是⼀个抛物线的关系,就是当资源最优配置时往往是TPS最⾼的时间,当资源耗尽时,往往TPS也是⾮常低的。每个TPS指标都会对应当时的并发量。然后说说并发量,并发量往往是对⼀个系统同时操作的⼈数的,或者说同时产⽣的请求数的预估,来衡量系统的承载能⼒。⾔外之意,这个指标⽬的在于看能否同时承载500个⽤户同时操作?或者 1000个⽤户同时操作? ⼀般来说,内部系统特别喜欢⽤并发量来作为衡量参数,原因是操作⽤户是恒定的,或者说是⽐较确定的⽤户群体,所以并发量特别好预估。但是⽬前互联 ⽹业务或是其他外部系统对接的业务,实际是⽆法确定并发量,所以,⼀般来说 ⽐较容易确定并发数的,使⽤并发数来压测是最能体现系统承载能⼒的。如果不能确定并发数,⼀般来说⽤TPS来衡量,特别是外部系统对接

05

「性能测试实战30讲」之问题问答整理五

第一个问题:如何理解“服务端的并发能力”这一描述? 首先我们从数据视角来理解,可以把服务端程序用一个模型来看待,即由「网络 API 请求」所驱动的。 服务端的领域特征是大规模的用户请求,以及 24 小时不间断的服务。但某种意义上来说更重要的原则是:坚决不能丢失用户的数据,即他认为已经完成的业务状态。服务端必须保证其业务状态的可靠性,这时业务状态才持久化写入到外存。所以对于服务端来说,存储至关重要。它不只是极大地解放了处理效率,也是服务端的性能瓶颈所在。几乎所有服务端程序扛不住压力,往往都是因为存储没有扛住压力。 在衡量服务端的性能,我们还是要服务端视角来看,主要以 TPS 为主来衡量系统的吞吐量,如果有必要用并发用户数来衡量的话,需要一个前提,即响应时间(RT),因为在系统压力不高的情况下,将思考时间(等待时间)加到场景链路中,并发用户数基本还可以增加一倍,因此用并发用户数来衡量系统的性能没太大的意义,也不专业。 第二个问题:我为什么不提倡使用“绝对并发”和“相对并发”的概念呢? 我觉得一切的前提是业务价值需要。如果没有足够的价值,那么可读性才是第一,对这种难懂的概念很反感,要知道的其会加重内部沟通的难度,得不偿失。如果没那个价值,简单才是王道。 第三个问题:我们为什么不推荐用 CPU 来计算并发数? 比如单核CPU情况,实际上是只有一个的,在一个特定时刻也只可能有一个程序跑在一个CPU上(因为寄存器只有一组),但是我们在上层观察到的却是系统上好像同时运行着那么多的程序,这实际上是操作系统用进程这个概念对CPU做的抽象。 同时如果你了解「阿姆达尔定律」,就知道多处理器并行加速,总体程序受限于程序所需的串行时间百分比,超过一定的并行度后,就很难进行进一步的速度提升了。并不符合线性关系,也无法估算的。 再说服务端程序性能依赖不仅仅是底层的硬件,其依赖的基础软件还包括:操作系统、编程语言、负载均衡、中间件、数据库或其他形式的存储等。在第一个问题中提到了几乎所有服务端程序扛不住压力,往往都是因为存储没有扛住压力。 最后,还是需要回到第一个问题,即由「网络 API 请求」所驱动的模型上来。

02
领券