在移动应用的性能测试中,如何准确、全面地捕捉用户操作并生成可复用的测试脚本,始终是测试工程师面临的一大挑战。而JMeter,作为一款功能强大的开源性能测试工具,不仅在Web测试中表现优异,在手机App的录制方面同样拥有独到的优势。

那么,如何利用JMeter来进行手机App的录制测试?它的录制功能在移动端应用中究竟是如何实现的?

JMeter的手机App录制功能,主要通过其内置的HTTP(S) Test Script Recorder来捕捉用户操作。在实践中,测试工程师通常会配置JMeter作为代理服务器,通过手机连接该代理,从而将所有的网络请求记录下来。举个例子,在一次电商App的性能测试中,测试团队通过JMeter成功录制了用户从登录到下单的完整操作流程,并基于这些录制脚本,进行大规模并发测试,最终帮助团队发现并优化了多个性能瓶颈。

一、代理录制原理

1. LR/Jmeter录制是针对网络通讯协议层面的,它只关心客户端与服务器端的通讯包

2. LR/Jmeter的并发测试实际上就是并发客户端与服务器端的通讯过程

3. 压力是通过多进程/多线程方式实现的,目前流行OS都是支持线程。每个进程/线程向服务器后台发送1个请求脚本数据包。

4. LR/Jmeter录制脚本采用proxy的方式,

(1)客户端请求的数据会先发到proxy服务器(录制器),录制器将数据转发给服务器端;

(2)服务器端的响应数据先发给录制器,然后由录制器响应给客户端。

二、JMeter手机app录制方法(手机和jmeter必须在同一个网络环境当中)

1、创建线程组,并在线程组下添加HTTP请求默认值

注意:HTTP请求默认器有两种使用方法

若服务器或IP、端口、路径没有输入值,那么代理录制则可以录制任何地址的操作(一般默认不输入值)

若服务器或IP、端口、路径有输入值,那么代理录制则只能录制输入IP地址的操作

2、在线程组下添加录制控制器,方便针对录制的操作进行有效控制和管理

3、在工作台下添加HTTP代理服务器

4、配置代理连接的端口号以及录制操作存放的位置

(端口号可以随意输入,需要和浏览器的相对应,方便映射)

5、JMeter配置完毕后,需要配置手机端,先查询到手机与电脑处于同一网络环境的地址

(注意:手机与电脑必须在同一个网络环境才能进行录制)

6、电脑与手机处于同一网络环境后,配置手机的代理服务器

7、配置完毕后,用手机进行操作,并查看JMeter录制情况

(在录制控制器下有录制记录,则表明手机app录制成功)

随着移动互联网的普及,手机App已经成为人们生活中不可或缺的一部分。无论是社交、购物还是支付,用户对应用的性能要求越来越高。JMeter的手机App录制功能,恰恰为移动应用的性能测试提供了强有力的支持,帮助企业在竞争中保持优势。

如果你正在进行手机App的性能测试,不妨试试JMeter的录制功能。它不仅免费,还可以轻松集成到你的现有测试流程中,是提升测试效率的绝佳选择。

通过JMeter进行手机App的录制测试,不仅能够帮助测试团队快速生成高质量的测试脚本,还能有效提升测试的全面性和准确性,从而确保应用的优异性能。

JMeter手机app录制的更多相关文章

  1. mac上使用jmeter录制web项目和手机app

    前言: 最近熟悉jmeter进行带宽测试和并发测试,发现网上大多都是windows版本,自己用的mac,实验后发现大同小异 1.下载,我使用的jmeter3.2的版本,可以在网上下载,不区分mac版和 ...

  2. 使用JMeter录制手机App脚本

    Apache JMeter是100%的Java桌面应用程序,用于对软件做压力测试.它最初被设计用于Web应用测试,但后来扩展到其他测试领域.现如今这款软件越来越受到测试人员的青睐,相比于LoadRun ...

  3. 使用jmeter HTTP代理服务器录制APP脚本

    使用jmeter HTTP代理服务器录制APP脚本 步骤一.jemter设置 1.启动JMeter,双击运行jmeter.bat,启动jmeter jmeter运行主界面 2.添加线程组:右键测试计划 ...

  4. jmeter测试APP时如何录制脚本

    jmeter录制脚本需要注意的点: (1)手机和电脑需要处于一个局域网内(如手机和电脑所使用一个wifi) (2)设置手机代理的时候手机IP填写本机IP,端口号要和jmeter的相同,一般情况下端口号 ...

  5. 『动善时』JMeter基础 — 49、使用JMeter自身代理录制APP测试脚本

    目录 1.测试计划内包含的元件 2.HTTP代理服务器的设置内容 3.设置手机的代理服务器 4.录制脚本 5.查看录制的脚本 6.HTTP代理服务器的排除模式 7.保存脚本 8.注意坑点 录制脚本只不 ...

  6. jmeter旅程第一站:Jmeter抓包浏览器或者抓取手机app的包

    学习jmeter?从实际出发,我也是一个初学者,会优先考虑先用来做一些简单的抓包.接口测试,在实践的过程中学习jmeter用途.那么接下来,这篇文章我会以jmeter抓包开启我的jmeter旅程. 这 ...

  7. Loadrunner11.0 录制手机App脚本的方法

    使用Loadrunner录制手机终端App脚本 1. 说明 目前手机APP上的功能日益丰富,对手机应用功能的性能测试需求也越来越多.公司比较抠门没有花钱买Loadrunner,可怜我们工作中一直用的破 ...

  8. Loadrunner11 录制手机App脚本多种方法介绍

    总体来说,通过LR录制手机脚本的方式有三种:1)通过代理方式录制,保证手机电脑在同一个网段:2)通过抓包录制,在手机上安装Mobile Recorder:3)通过安卓模拟器录制,本地安装Android ...

  9. Loadrunner11.0 录制手机App脚本的方法二

    lr11安装一个移动补丁以后,就可以支持抓包文件直接转换为http/html协议的脚本.下面简单说一下过程. 1.工作思路:手机连接可上外网wifi,在手机wifi中设置本机ip的网络地址,然后在本机 ...

  10. Loadrunner11.0 录制手机App脚本的方法一

    使用Loadrunner录制手机终端App脚本 1. 说明 目前手机APP上的功能日益丰富,对手机应用功能的性能测试需求也越来越多.公司比较抠门没有花钱买Loadrunner,可怜我们工作中一直用的破 ...

随机推荐

  1. GGTalk 开源即时通讯系统源码剖析之:聊天消息防错漏机制

    继上篇<GGTalk 开源即时通讯系统源码剖析之:客户端全局缓存及本地存储>GGTalk客户端的全局缓存以及客户端的本地持久化存储.接下来我们将介绍GGTalk的聊天消息防错漏机制. GG ...

  2. 含税仅498元起!复旦微ARM + FPGA SoC全国产工业核心板,性价比真高!

     

  3. NXP i.MX 8M Mini视频开发案例分享 (上)

    本文主要介绍i.MX 8M Mini的视频开发案例,包含基于GStreamer的视频采集.编解码.算法处理.显示以及存储案例,GigE工业相机测试说明,H.265视频硬件解码功能演示说明等. 注:本案 ...

  4. 在VisualStudio中WPF应用程序在打开窗体界面设计时报错<发生了未经处理的异常>的解决方法

    在网上找了一个wpf的开源项目,在打开窗体,点击设计的时候,提示错误信息如下 System.Resources.MissingSatelliteAssemblyExceptionThe satelli ...

  5. SpringBoot的知识点总结和常用注解

    SpringBoot 知识点总结 基础入门 基本介绍.基本特性.核心模块.版本选择.环境要求.安装集成.技快速开发接口.Maven Wrapper.Spring Boot CLl 配置管理 配置类.配 ...

  6. var、let、const 区别?

    var 存在变量提升.let 只能在块级作用域内访问.const 用来定义常量,必须初始化,不能修改(对象特殊) 1.var[声明变量] var 没有块的概念,可以跨块访问,无法跨函数访问: 2.le ...

  7. [oeasy]python0070_动态类型_静态类型_编译_运行_匈牙利命名法

    动态类型_静态类型 回忆上次内容   上次了解了 帮助文档的 生成 开头的三引号注释 可以生成 帮助文档 文档 可以写成网页   python3 本身 也有 在线的帮助手册   目前的程序 提高了 可 ...

  8. VBA:用代码操作代码

    Sub auto_open() Call runtimer '打开文档时自动运行 End Sub Sub runtimer() Application.OnTime Now + TimeValue(& ...

  9. JavaScript小技巧~this的保存

    在JavaScript中如果一个函数返回一个函数,此时this容易丢失,为了不使this丢失,需要在函数内部保存this. change() { let _this=this return funct ...

  10. MySQL 递归查询实践总结

    MySQL复杂查询使用实例 By:授客 QQ:1033553122   表结构设计 SELECT id, `name`, parent_id FROM `tb_testcase_suite` 说明: ...