Jmeter测试工具应用-面试干货!!!

目录

前言

问题1:JMeter如何发送一个get请求?请求参数写在哪里?

问题2:JMeter如何发送一个post请求?请求参数写在哪里?

问题3:JMeter如何进行接口关联的测试?

问题4:JMeter如何实现断言和参数化?

问题5:JMeter如何实现批量运行测试脚本?

问题6:JMeter如何实现发送图片或者文件?

问题7:JMeter如何实现发送JSON格式的请求?

问题8:JMeter如何实现token数据的发送?

问题9:JMeter中如何提取响应中的数据?

问题10:JMeter中Beanshell组件是如何使用的?

问题11:JMeter中JSON提取器组件是如何使用的?

问题12:JMeter中如何分析请求失败的原因?

问题13:JMeter中如何运行导出HTML格式的测试报告?


前言

在之前几篇博文中介绍了很多关于Jmeter的知识,本文主要对面试可能会问到的问题给出系统的答案,满满的干货快来收藏吧~


问题1:JMeter如何发送一个get请求?请求参数写在哪里?

在JMeter中发送GET请求:

  1. 打开JMeter。

  2. 在“测试计划”上右键,选择“添加” -> “线程组(用户)” -> “线程组”来创建一个线程组。

  3. 在线程组上右键,选择“添加” -> “取样器” -> “HTTP请求”。

  4. 在HTTP请求中,选择“GET”请求方法。

    • 在“服务器名称或IP”输入框中输入请求的URL地址。

    • 在“路径”输入框中输入请求的路径。

    • 如果有请求参数,可以在“参数”或“消息体数据”选项卡中添加参数。

  5. 如果需要添加请求头,可以在“HTTP信息头管理器”选项卡中添加。

  6. 点击“运行”按钮来发送GET请求。


问题2:JMeter如何发送一个post请求?请求参数写在哪里?

在JMeter中发送POST请求:

  1. 打开JMeter。

  2. 在“测试计划”上右键,选择“添加” -> “线程组(用户)” -> “线程组”来创建一个线程组。

  3. 在线程组上右键,选择“添加” -> “取样器” -> “HTTP请求”。

  4. 在HTTP请求中,选择“POST”请求方法。

    • 在“服务器名称或IP”输入框中输入请求的URL地址。

    • 在“路径”输入框中输入请求的路径。

  5. 在“参数”选项卡中添加请求参数。

    • 如果是表单格式,可以在“参数”选项卡中使用“添加”按钮来添加参数。

    • 如果是JSON格式,可以在“消息体数据”选项卡中选择“原始数据”并选择合适的请求体类型(例如JSON、XML等),然后在输入框中写入请求参数。

  6. 如果需要添加请求头,可以在“HTTP信息头管理器”选项卡中添加。

  7. 点击“运行”按钮来发送POST请求。


问题3:JMeter如何进行接口关联的测试?

在JMeter中进行接口关联测试:

  1. 首先创建一个用于提取值的正则表达式提取器或JSON提取器。

  2. 将提取的值存储在JMeter变量中(如${variable_name})。

  3. 在之后的请求中使用该变量进行关联测试。可以将其作为查询参数、请求头、请求体或URL路径的一部分。

  4. 配置需要进行关联测试的请求,并在适当的位置使用变量。

  5. 确保变量的提取和使用被正确配置,并验证接口的相关部分被正确关联。

注意:在进行接口关联测试时,要确保提取的值是准确的,并正确应用到相关请求中,以实现正确的关联测试。


问题4:JMeter如何实现断言和参数化?

在JMeter中实现断言和参数化:

断言:

  1. 使用JMeter中的断言元件(例如断言响应代码、正则表达式断言、JSON断言等)来验证响应内容。

  2. 将断言元件添加到需要进行断言的线程组或HTTP请求中。

  3. 断言不仅可以验证响应状态码,还可以验证响应内容的匹配、存在与否等。

参数化:

  1. 使用JMeter提供的CSV数据集配置元件,将CSV文件或数据表中的值作为参数提供给请求。

  2. 可以在CSV文件中将每行数据作为一组参数值,并在请求中使用它们。

  3. 使用JMeter的正则表达式或JSON提取器,可以从响应中提取值,并将其作为参数传递到后续请求中进行参数化。

注意:在断言和参数化时,要确保设置正确的断言条件并提供准确的参数值,以确保测试的准确性和可靠性。


问题5:JMeter如何实现批量运行测试脚本?

在JMeter中实现批量运行测试脚本:

  1. 在JMeter中,打开要批量运行的测试计划。

  2. 在测试计划中,确保已配置所有必要的线程组、请求和元素。

  3. 点击“运行”按钮,或使用命令行执行jmeter.bat(Windows)或jmeter.sh(Linux)来运行测试计划。

  4. 执行完成后,您可以查看每个请求的结果,并导出结果报告。

  5. 如果需要运行多个测试计划,可以使用批处理脚本或持续集成工具(如Jenkins)来批量执行JMeter测试。


问题6:JMeter如何实现发送图片或者文件?

在JMeter中发送图片或文件:

  1. 在JMeter中创建一个HTTP请求。

  2. 添加一个HTTP Header Manager元素,并在其中设置Content-Type为multipart/form-data。

  3. 在HTTP请求中,选择"文件上传"选项卡。

  4. 在Body数据一栏中,点击"Add"按钮添加一个参数。

  5. 在参数一栏的"Name"字段中,输入一个用于识别文件的键。

  6. 在参数一栏的"Value"字段中,输入文件的路径。

  7. 在参数一栏的"MIME Type"字段中,输入文件的类型,如image/jpeg。

  8. 点击"Send"按钮发送请求,并查看响应结果。


问题7:JMeter如何实现发送JSON格式的请求?

在使用JMeter发送JSON格式的请求,可以按照以下步骤进行操作:

        1.打开JMeter,并创建一个线程组。

        2.在线程组下添加一个HTTP请求。

        3.在HTTP请求中的Body Data/Input Data中,输入你想要发送的JSON数据。

        示例:

        {

          "name": "John Doe",

          "age": 30,

          "email": "john.doe@example.com"

        }

        4.在HTTP Request sampler中设置请求方法、URL等相关信息。

        5.运行测试计划,发送请求。


问题8:JMeter如何实现token数据的发送?

在JMeter中发送token数据,可以按照以下步骤进行操作:

        1.打开JMeter,并创建一个线程组。

        2.在线程组下添加一个HTTP信息头管理器。

        3.在HTTP信息头管理器中添加一个Header,设置Header名为Authorization。

        4.在Header的值中,添加token的信息。

        5.在HTTP请求中设置请求方法、URL等相关信息。


问题9:JMeter中如何提取响应中的数据?

在JMeter中提取响应中的数据,可以使用正则表达式、CSS选择器、XPath表达式或JSON提取器等不同的方法。以下是一些常用的方法:

正则表达式提取器(Regular Expression Extractor):可以使用正则表达式来提取响应中的数据。配置该提取器时需要指定正则表达式和匹配组,以提取需要的数据。

CSS选择器提取器(CSS Selector Extractor):可以使用CSS选择器来提取HTML或XML响应中的数据。配置该提取器时需要指定CSS选择器表达式,以提取需要的数据。

XPath提取器(XPath Extractor):可以使用XPath表达式来提取XML或HTML响应中的数据。配置该提取器时需要指定XPath表达式,以提取需要的数据。

JSON提取器(JSON Extractor):可以使用JSONPath表达式来提取JSON响应中的数据。配置该提取器时需要指定JSONPath表达式,以提取需要的数据。


问题10:JMeter中Beanshell组件是如何使用的?

在测试计划中选择需要添加Beanshell组件的线程组或逻辑控制器。
        1.右键点击线程组或逻辑控制器,选择"Add" -> "Sampler" -> "Beanshell Sampler"。
        2.在Beanshell Sampler的文本编辑器中编写Java代码,这段代码将会在该Sampler执行时被执行。
        3.可以使用变量来访问请求参数、响应数据和其他的JMeter上下文信息。例如,可以使用vars对象来获取和设置变量值,使用props对象来获取和设置JMeter的属性。
        4.在Beanshell Sampler中可以使用各种Java语法和方法,用于自定义的逻辑或操作。可以编写条件判断、循环、数据处理等。
        5.可以使用print语句或日志记录器(loggers)输出信息到JMeter的控制台或日志中,以便调试和查看结果。
        6.在运行测试计划时,Beanshell Sampler将会被执行,并按照编写的代码逻辑执行相应的操作。

问题11:JMeter中JSON提取器组件是如何使用的?

在测试计划中选择需要添加JSON提取器组件的Sampler。
        1.右键点击Sampler,选择"Add" -> "Post Processors" -> "JSON Extractor"。
        2.在JSON提取器的属性面板中,配置以下参数:
                1."Variable names":设置变量名,用于存储提取的数据。可以设置多个变量,用逗号隔开。
                2."JSON Path Expressions":设置JSON路径表达式,用于指定需要提取的数据的位置。可以设置多个表达式,每行一个。
        3.在请求响应中,使用正则表达式来提取需要的数据,然后将提取的数据存储到变量中。
        例如,假设响应的JSON数据如下:
        {
          "name": "John Doe",
          "age": 30,
          "email": " johndoe@example.com "
        }
        4.如果我们想要提取"name"和"email"字段的值,可以按照以下方式进行配置:
        "Variable names":name,email
        "JSON Path Expressions":
        $.name:用于提取"name"字段的值
        $.email:用于提取"email"字段的值
        5.此时,在后续的请求中,可以通过${name}和${email}来获取提取的数据。

问题12:JMeter中如何分析请求失败的原因?

        1.查看响应数据:在JMeter中执行请求并获取响应后,可以在"View Results Tree"或"View Results in Table"监听器中查看响应数据。这样可以查看服务器返回的详细错误信息,从而帮助确定请求失败的原因。

        2.使用断言:可以在测试计划中添加断言组件,来验证请求的响应是否符合预期。例如,可以使用"Response Assertion"来验证响应的内容、响应码或响应头信息。断言可以帮助快速判断请求的失败原因,如响应内容不匹配或响应码错误等。

        3.查看日志文件:可以在JMeter的日志文件中查看详细的请求和响应信息。通过启用调试和增加日志级别可以获得更详细的日志信息,如请求参数、响应数据等,以便诊断请求失败的原因。

        4.查看聚合报告:可以使用"Summary Report"或"Aggregate Report"监听器来查看请求的汇总信息,包括成功请求数、失败请求数、平均响应时间等。通过查看这些信息,可以找出请求失败的趋势和问题。

        5.设置断开点:可以在测试计划中设置断开点,以便在特定的请求或事务中暂停执行。这样可以方便地检查请求是否正确配置,并查看请求期间的变量和数据。


问题13:JMeter中如何运行导出HTML格式的测试报告?

在JMeter中打开测试计划,并确保您已经配置了所需的监听器(如"汇总报告"、"聚合报告"等)来收集测试结果。

        1.如果您还没有安装JMeter插件,则需要先下载和安装官方提供的插件“JMeterPlugins-ExtrasLibs”。

        2.在JMeter的安装目录下找到 "bin" 文件夹,并进入该文件夹。

        3.打开命令行界面,运行以下命令:jmeter -g [path_to_jtl_file] -o [path_to_output_folder]

        其中,[path_to_jtl_file]是指您的测试结果文件(例如以.jtl或.csv扩展名结尾的文件),[path_to_output_folder]是指您要将HTML报告导出到的目标文件夹。

        例如,如果您的测试结果文件是 "test_results.jtl",要将HTML报告导出到 "report" 文件夹中,命令将如下所示:jmeter -g test_results.jtl -o report

        4.运行命令后,JMeter将自动生成HTML格式的测试报告,并将其导出到指定的目标文件夹中。

        5.导出完成后,您可以在指定的目标文件夹中找到生成的HTML报告。您可以在Web浏览器中打开它,并查看详细的测试结果和图表。

  • 7
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值