性能测试面试题 常见面试题目汇总(性能测试部分)
转|文多拉微信微信官方账号木蚁
什么是负载测试?什么是性能测试?
负载测试是通过改变系统负载模式和增加负载来发现系统中的性能问题。负载测试是一种测试方法,可用于性能测试和压力测试。载荷试验有多种加载方式,可根据试验要求选择。
性能测试是获取或验证系统性能指标的测试。通常,性能测试是在不同的负载下进行的。
压力测试通常用于测试系统在高负载条件下的稳定性,可以更有效地发现系统稳定性的隐患和峰值负载条件下系统功能的隐患。
左后输出消息功能
LR_ERROR_MESSAGE和lr _ error _ message分别有哪些功能
LR_OUT_MESSAGE用于打印输出到控制台和output.txt文件
LR_ERROR_MESSAGE用于打印错误,将在控制台上以红色字体输出。
LR能发现哪些常见的系统问题?
例如内存泄漏、CPU瓶颈和应用程序问题。
场景的设置方法有哪些?
目标场景和手动场景
性能测试的分析原理流程是什么?
关键WEB指标->系统级关键指标->组件级关键指标->程序代码级关键指标
简要描述使用Loadrunner的步骤
测试计划-脚本录制设置-录制脚本-调试脚本-场景设置-结果分析
LoadRunner的组件是什么?
虚拟用户生成器
控制器
分析
LoadRunner的哪个部分用来记录脚本?
虚拟用户生成器
LoadRunner的哪个部分可以模拟多用户并发播放脚本?
控制器
性能测试包括哪些测试
压力测试、负载测试、并发测试和可靠性测试
什么是交汇点?设置集合点有什么用?Loadrunner中设置采集点的作用是什么?
设置点:设置多个用户到达某个用户数点集合,同时触发一个事务,从而模拟真实环境下多个用户同时操作,同时模拟负载,达到性能测试的最终目的
LR _交会
什么是吞吐量?
单位时间内系统处理的客户端请求数。
如何录制网页脚本?
LR通过转发请求来捕获数据包并形成脚本
为什么要创建参数?如何创建参数?
当环境改变时,脚本必须具有改变环境的能力,因此它需要参数化
启用IP欺骗需要注意什么?
启用IP欺骗时,必须在终端中指定静态IP,不能设置为自动获取。使用后,移除IP欺骗并重新启动计算机。
如何找到联系的地方?请举例说明你的项目。
用户登录-客户端发送请求->:服务器验证通过的正确性->:会话Id发送到客户端
客户端软件性能测试的关注点是什么?
最常见的是响应时间,资源占用内存、CPU、IO等等
解释以下功能及其区别。
lr_debug_message激活时发送调试消息。如果指定的消息级别未激活,则不发送任何消息。
Lr _错误_消息
该函数向输出窗口和Vuser日志文件发送错误消息
Lrd_stmt lrd_exec函数执行由Lrd_stmt设置的SQL语句
Lrd_fetch函数从结果集中提取后续行
标准日志和扩展日志有什么区别?
标准日志选项:选择标准日志时,在脚本执行过程中会生成函数的标准日志,并输出调试信息。
扩展日志包括警告和其他信息。不要为大负载测试启用此选项。使用扩展日志选项,您可以指定需要向扩展日志添加哪些附加信息。
如何调试LoadRunner脚本?
VuGen有两个选项可以帮助调试Vuser脚本。运行逐步命令和断点。“选项”对话框中的“调试”项可以确定场景执行期间的执行轨迹范围。调试信息写入输出窗口。您可以使用lr_set_debug_message函数在脚本中手动设置信息类型。
如何在LR中编写自定义函数?请给出一些以前项目中写的函数。
我们需要在创建用户定义的函数之前创建DLL。将库放在VuGen bin目录中。添加库后,为自定义函数分配一个参数。
什么是思考时间?思考时间有什么用?
思考时间是真实用户在行动之间等待的时间。例如,当用户从服务器接收数据时,用户可能需要等待几分钟来查看数据,然后才能做出响应。这种延迟被称为思考时间。
每秒错误数是什么意思?
是每秒的错误数,它计算每秒的错误数。数字越小越好。
LR中如何配置系统计数器?
通过web资源监视器,这些监视器可以用来分析Web服务器的吞吐量、点击率、每秒http响应数和每秒下载页面数。
响应时间和吞吐量之间有什么关系?
吞吐量图表显示了虚拟用户每秒从服务器接收的字节数。当与响应时间进行比较时,可以发现随着吞吐量的减少,响应时间也随之减少。同样,吞吐量峰值和最大响应时间将同时出现。
随着并发用户的增加,系统的CPU利用率逐渐提高,出现排队现象。如何分析结果
硬件上可能存在瓶颈,所以可以通过增加CPU或磁盘来修改WINDOWS系统中的TCP连接数限制。
什么是逐渐增加?如何设置?
斜升用于逐渐增加虚拟用户的数量或服务器的负载。设置一个初始值,并可以设置一个值在两次迭代之间等待。
将虚拟用户作为线程运行有什么好处?
VuGen提供了多线程的便利。这使得在每个生成器上运行更多的虚拟用户成为可能。如果作为线程运行,为每个用户将相同的驱动程序加载到内存中,这会占用大量内存。这限制了可以在单个生成器上运行的虚拟用户的数量。如果按照流程运行,给定数量的所有虚拟用户只需将一个驱动程序实例加载到内存中。每个进程共享父驱动程序的内存,因此更多的虚拟用户可以在每个生成器上运行。
出现错误时如何停止执行脚本?
lr_abort函数中止虚拟用户脚本的执行。说明虚拟用户停止执行Action,直接执行vuser_end结束执行。当您想要在出现错误时手动放弃脚本的执行时,此功能非常有用。使用此功能停止脚本时,Vuser被指定为“已停止”。使用此功能时,首先不能在运行时设置中选择“出错时继续”选项。
欢迎补充!