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

软件测试知识点

1.测试基础

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

在这里插入图片描述

1.6软件测试的分类 五种分类方式

在这里插入图片描述

1.7黑盒测试及常用的黑盒测试方法 又称数据驱动测试,完全不考虑程序内部结构和内部特性,注重于测试软件的功能需求,只关心软件的输入数据和输出数据。 功能测试:逻辑功能、界面、易用性、安装、兼容性测试 性能测试:稳定性、负载、压力测试 1.8白盒测试和黑盒测试的概念及区别 白盒测试:研究里面的源代码和程序结构。 区别:是否查看源代码 1.9静态测试 不实际运行被测软件,而只是静态地检查程序代码、界面或文档中可能存在的错误过程。 1.10回归测试 回归测试是指修改了代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误。 新加入测试的模组,可能对其他模组产生副作用,故须进行某些程度的回归测试。 1.11冒烟测试 在软件开发过程中的一种针对软件版本包的快速基本功能验证策略,是对软件基本功能进行确认验证的手段,并非对软件版本包的深入测试。主要目的是快速验证软件基本功能是否有缺陷。如果冒烟测试的测试例不能通过,则不必做进一步的测试。 1.12理解软件测试原则

在这里插入图片描述

1.13理解“成功”的测试的含义 测试是为了发现程序中的错误而执行程序的过程。 好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案。 发现了至今为止尚未发现的错误的测试是成功的测试。 测试并不仅仅是为了找出错误。通过分析错误产生的原因和错误的发生趋势,可以帮助项目管理者发现当前软件开发过程中的缺陷,以便及时改进。 这种分析也能帮助测试人员设计出有针对性的测试方法,改善测试的效率和有效性。 没有发现错误的测试也是有价值的,完整的测试是评定软件质量的一种方法。 根据测试目的的不同,还有回归测试、压力测试、性能测试等,分别为了检验修改或优化过程是否引发新的问题、软件所能达到处理能力和是否达到预期的处理能力等。

2.缺陷管理

2.1软件缺陷的定义 软件缺陷就是软件产品中所存在的问题,最终表现为 用户所需要的功能没有完全实现,没有满足用户的需求。指存在于软件(程序、数据、文档)中的那些 不符合用户需求的问题。 2.2软件缺陷的状态

在这里插入图片描述

2.3软件缺陷的管理的一般流程(每个阶段的缺陷状态) 同上

3.功能测试

3.1等价类分类法的依据 有效等价类和无效等价类。 等价类划分是一种重要的测试方法,不需要考虑程序的内部结构,只需要考虑程序的输入规格即可。 3.2掌握等价类分类法设计测试用例 3.3边界值测试法的理论依据是什么 大量的错误是发生在输入或输出范围的边界上,而不是在输入范围的内部。 3.4根据边界值方法设计测试用例 3.5判定表的组成

在这里插入图片描述

Ln(mk) n是表的行数,也就是需要测试组合的次数 K是表的列数,表示控件的个数(因素的个数,或因子个数) m是每个控件包含的取值个数(各因素的水平数,即各因素的状态数) 如: L9(34) 有4个控件 每个控件有3个取值 9为需要测试的组合个数 叫4因素3水平 3.6掌握判定表法设计测试用例 3.7场景法的概念、基本流和备选流的概念 场景法就是模拟用户操作软件时的场景,主要用于测试系统的业务流程。 基本流 按照正确的业务流程来实现的一条操作路径(模拟正确的操作流程) 备选流 导致程序出现错误的操作流程(模拟错误的操作流程) 3.8给定正交表,设计测试用例。

4.性能测试

4.1常用的性能测试工具有哪些 LoadRunner、JMeter、Apache ab 4.2理解并发用户数的概念 同时与服务器进行交互在线用户量 4.3并发用户数和系统注册用户数、系统在线用户的区别 https://blog.csdn.net/weixin_30556161/article/details/96384360 4.4理解“响应时间”,能够分析什么是响应时间。 应用系统从发出请求开始到客户端接收到所有数据所消耗的时间 4.5吞吐量的概念 指在一次性能测试过程中网络上传输的数据量的总和。 https://blog.csdn.net/lixingyu10/article/details/53633964/ 4.6TPS和QPS概念及区别 https://www.cnblogs.com/guweiwei/p/9338062.html TPS:Transactions Per Second(每秒传输的事物处理个数),即服务器每秒处理的事务数。TPS包括一条消息入和一条消息出,加上一次用户数据库访问。(业务TPS = CAPS × 每个呼叫平均TPS) QPS:每秒查询率QPS是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准,在因特网上,作为域名系统服务器的机器的性能经常用每秒查询率来衡量。对应fetches/sec,即每秒的响应请求数,也即是最大吞吐能力。 4.7点击率 点击率是指网站页面上某一内容被点击的次数与被显示次数之比,即clicks/views,它是一个百分比。反映了网页上某一内容的受关注程度,经常用来衡量广告的吸引程度 4.8压力测试和负载测试的含义 压力测试:是在一定的负荷条件下,长时间连续运行系统给系统性能造成的影响 负载测试:在一定的工作负荷下,给系统造成的负荷及系统响应的时间。 https://www.cnblogs.com/zihkj/p/12543125.html https://www.jianshu.com/p/b186cbcacbaa 4.9理解“集合点”的应用场景 一定数量的虚拟用户(线程)在同一时刻对被测试系 统发起请求 虚拟用户(线程)数在未达到指定的数量时,处于等 待状态,直到达到指定数量。 https://blog.csdn.net/xreztento/article/details/53837293 4.10一个简单的Web页面测试,需要JMeter的组件分别是什么。 脚本中测试计划只能有一个 测试计划中至少有一个线程组 至少有一个取样器 至少有一个监听器

5.综合

5.1HTTP协议中Cookie的交互流程

在这里插入图片描述
在这里插入图片描述

5.2MySQL性能优化的步骤 https://blog.csdn.net/luyaran/article/details/79035445 https://www.cnblogs.com/claireyuancy/p/7258314.html 5.3POST和GET请求的区别 GET把参数包含在URL中,POST通过request body传递参数 https://blog.csdn.net/zlczsw/article/details/91046081