手机APP大用户并发测试

news2025/2/2 21:03:33

一、背景

随着智能手机近年来的快速增长,从游戏娱乐到移动办公的各式各样的手机APP软件渗透到我们的生活中,对于大型的手机APP测试不仅要关注它的功能性、易用性还要关注它的性能,最近发现LoadRunner12可以对手机APP做性能测试,但由于LoadRunner12还没有破解版最多只有50个并发用户,所以我用LoadRunner12录制手机APP的脚本后放到LoadRunner8.0里进行压测,LoadRunner8.0可并发10000个用户。

二、手机APP的自动化测试

随着智能手机近年来的快速增长,从游戏娱乐到移动办公的各式各样的手机APP软件渗透到我们的生活中,手机APP自动化测试也逐渐兴起,从Monkey本地测试到云测试平台,现在我要介绍的这种自动化测试方法不需要写脚本,适合初学者。

工具:

l  小萝贝虚拟手机

l  按键精灵

步骤:

1.      百度搜索小萝贝虚拟手机 3.6M与按键精灵40.5M下载安装后,将手机用usb数据线插入电脑,打开运行小萝贝虚拟手机

2.      打开按键精灵,点击新建按钮新建一个空白脚本

3.      调整好小萝贝与按键精灵的布局,点击按键精灵的录制按钮,开始录制脚本

4.      点击开始录制按钮后,即可操作小萝贝虚拟手机投射的手机画面反向控制手机,按键精灵会录制鼠标的点击坐标,而小萝贝虚拟手机会通过鼠标的点击、滑动等事件反向控制连接的手机,实现手机APP的自动化测试

5.      在录制脚本时可以点击小萝贝虚拟手机右侧的工具栏中的截屏按钮来截取屏幕,便于跑完脚本后截图对比来确定APP显示时候正确

6.      脚本录制完后点击停止按钮停止脚本录制,再点击保存按钮退出录制模式并保存录制的脚本

7.      待脚本生成后点击调试按钮

8.      点击左下角的启动键进行脚本回放,不要控制鼠标,此时鼠标会自动执行录制好的点击动作,点击小萝贝虚拟手机进而控制手机实现手机APP自动化测试

缺点:

1.只能做简单的功能回归性测试、UI测试

2.坐标点击操作,可复用性差

优点:

1.操作简单易学无需写脚本,适合初学者

2.操作工具小型易安装

三、软件的安装与设置

1、下载CCProxy代理服务器,安装运行该软件用来检测本机局域网的IP地址

2、手机连接上一个网络,长按该网络点击修改网络配置,显示高级选项,代理服务器设置为 – 手动,将CCProxy检测到的本机局域网IP地址输入代理主机名,设置代理服务器端口(这里我这设置为8899),然后关闭 CCProxy(只用来检测本机局域网IP地址,因为Loadrunne12自带代理服务器)

3、启动LR12 VirtualUser Generator,点击File – New script and solutionSingle Protocol里选择 Web –HTTP/HTML,点击Create

4、点击工具栏的红色的Record按钮,Recording mode选择 Remote Application via LoadRunner Proxy,端口设置为手机端设置的代理服务器端口(我的端口设置为8899),Loadrunner会监听这个端口,此端口为手机连接的代理服务器端口。

5. 点击回放按钮,测试脚本运行是否成功,如图中显示response表示服务器有响应并有数据发送到客户端

  1. 脚本运行成功后找到该脚本的生成路径,将其拷贝到装有LoadRunner8.0的电脑里
  2. 运行LoadRunner8.0Controller找到该脚本,点击创建按钮后在Design界面里修改并发用户数,LoadRunner12未破解时最多只能并发50个用户,而LoadRunner8.0可以并发10000个用户,这里我设置成60

6、在运行脚本前,点击Results-àSet Results Directory  勾选第一个选项生成每个用户运行时日志

7、点击Start开始运行

8、检查每个用户运行时日志,如图中日志可看出有requestresponse(运行日志保存在Results-àSet Results Directory界面显示的路径下

9、 Controller点击Results – AnalyzeResults,查看结果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/648379.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

寻味一座城,从吃吃吃开始

点击文末“阅读原文”即可参与节目互动 剪辑、音频 / 小黑 运营 / SandLiu 卷圈 监制 / 姝琦 文案 / 小黑 产品统筹 / bobo 场地支持 / 声湃轩天津站 为了再也不用在节目里喊“我们真的不是美食节目”,2023年7月起,原汤话原食将更名为“记者下班”…

记录--极致舒适的Vue可编辑表格

这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 使用ElementPlus的Table啥都好,就是没有可编辑表格!!!😭 既然UI库不支持,那我们实现一个可编辑表格是很难的事么?&am…

Avalon 学习系列(五)—— 过滤器

Avalon 本身有很多过滤器,例如 date、number等文本过滤器、循环过滤器;avalon 也提供了方法可以根据需求自定义过滤器。 示例: (1)定义一个 myFunc 的个性化过滤器,并加在元素上; &#xff0…

一文带你玩转 RustChinaConf 2023,内含赞助商展位活动福利和 Workshop 介绍

除了两天干货满满的会议外,RustChinaConf 的赞助商也准备了精美的周边礼物等待大家去打卡。每位参会者在签到的时候会获得一张集章卡,集齐上面所有的章,可至签到处兑换精美礼物一份。偷偷剧透一下,奖品有大家喜欢的 Rust 小螃蟹玩…

【计算机网络】第一章 概述(上)

文章目录 第一章 概述1.2 因特网概述1.2.1 网络、互连网(互联网)和因特网1.2.2 因特网发展的三个阶段1.2.4 因特网的组成 1.3 三种交换方式1.3.1 电路交换1.3.2 分组交换1.3.3 报文交换1.3.4 三种方式对比 1.4 计算机网络的定义 第一章 概述 1.2 因特网概…

「深度学习之优化算法」笔记(二)优化算法的分类

1. 优化算法的分类 1.1常见的优化算法 在分类之前,我们先列举一下常见的优化算法(不然我们拿什么分类呢?) 1.遗传算法Genetic algorithm 2.粒子群优化算法Particle Swarm Optimization 3.差分进化算法Differential Evolution 4.人…

springboot第27集:springboot-mvc,WxPay

在数据库中,DISTINCT 关键字用于查询去重后的结果集。它用于从查询结果中去除重复的行,只返回唯一的行。 要使用 DISTINCT 关键字,可以将其放置在 SELECT 关键字之前,指示数据库返回去重后的结果。 请注意,DISTINCT 关…

Linux常用命令——getenforce命令

在线Linux命令查询工具 getenforce 显示当前SELinux的应用模式,是强制、执行还是停用。 补充说明 grename命令可以重命名卷组的名称。 语法 getenforce例子 查看当前SELinux的应用模式。 [rootlocalhost ~]# getenforce Enforcing在线Linux命令查询工具 原文…

ChatGPT时代,我的新书《智慧共生》上市了

告诉你一个好消息,我在人民邮电出版社的第二本书《智慧共生:ChatGPT 与 AIGC 生产力工具实践》刚刚上市,你现在就可以在 京东 和 当当买到了。 有人把 2022 年称作 AIGC(人工智能生成内容) 的元年,我深表赞…

浅谈数据中台之数据开发

目 录 01 前言‍ 02 中台概念及背景 ‍‍‍‍‍‍‍ 03 数据中台建设方法‍‍‍‍‍‍ 04 数据开发实践 01‍ 前言‍‍ 2015年阿里在国内首次提出了中台概念,由阿里引领发展,迅速在互联网企业中形成了一股浪潮。在数字化转型的道路上,为了…

【AUTOSAR】UDS协议的代码分析与解读(五)----ECU诊断服务

8 诊断服务 8.1 总览 此章节定义了本规范中可使用的诊断服务及其执行规则。 下表列出了h事业部定义的所有UDS诊断服务。ECU最终实现与下述定义不符之处必须得到h事业部 的认可。服务实现内容需在零部件诊断规范中详细说明。 表 9 诊断服务支持列表 诊断服务列表 APP Bootlo…

【手撕代码】同步 FIFO、LIFO/Stack

FIFO 是FPGA设计中最有用的模块之一。FIFO 在模块之间提供简单的握手和同步机制,是设计人员将数据从一个模块传输到另一个模块的常用选择。 在这篇文章中,展示了一个简单的 RTL 同步 FIFO,可以直接在自己的设计中配置和使用它,该设…

社区供稿 | RLHF 实践中的框架使用与一些坑 (TRL, LMFlow)

1 前言 之前看见文章总结了常见的一些 RLHF 框架的经验, 但是似乎没看见 Hugging Face 自己维护的 TRL 库的相关文章, 正好最近调 TRL 比较多, 就想写一个文章分享一下使用过程中踩到的坑,另外也介绍一下我们的全流程框架 LMFlow 。 LMFlow 框架示意图。 我们主要用…

架构思维的六要素

很多人都在私信问我随着ChatGPT等技术的兴起,自己的饭碗会不会没了。我的观点是:ChatGPT能做的工作十几年前早就没了。 十几年前还看到过招聘广告上写招程序员的,现在都是工程师起步,工程师是要有架构思维的。 像十几年前的黄金时…

手写SpringBoot启动器主要步骤

这里写目录标题 背景过程2.1自启动实现原理2.2手动实现SpringBoot自启动2.2.1宏观2.2.1微观2.2.1.1三个服务之间调用2.2.1.2自定义注解2.2.1.1业务组装2.2.1.3启动类 升华自定义注解:手动装配组件:简化启动过程:自动化注入依赖:简…

马原第三章复习1.

唯物史观和唯心史观过去出过小题 社会意识出小题 社会存在一般出大题 124 社会存在和社会意识(往往出大题) 社会历史性的基本问题 两种根本对立的历史史观 唯心主义: 至多考察人的思想动机 没有考虑思想背后的物质动因和经济根源 把社会史观看成人的思想,,不懂得…

关于酒店宾馆电气火灾隐患的预防与整改措施介绍 安科瑞 许敏

摘要:本文分析了酒店、宾馆电气火灾隐患的特点及产生的主要原因,并依此提出了消除火灾隐患的整改措施。 关键词:酒店宾馆;火灾;隐患;预防;整改;措施 1前言 随着旅居服务业的快速发展&#xf…

CVPR 2023 | 香港理工提出GrowSP:3D场景的无监督语义分割

点击下方卡片,关注“CVer”公众号 AI/CV重磅干货,第一时间送达 点击进入—>【目标检测和Transformer】交流群 GrowSP: Unsupervised Semantic Segmentation of 3D Point Clouds 论文链接:https://arxiv.org/abs/2305.16404 代码&#xff1…

2023/6/11总结

CSS Less嵌套 子元素的选择器可以直接写在父元素里面。 如果不是它的后代元素,比如你想写伪类选择器、交集选择器,需要在前面加&号。 Less运算: 加减乘除都可以,运算符必须用空格隔开。如果俩个元素都有单位&#xff0…

binfmt_misc

一:binfmt_misc是什么 binfmt_misc是内核中的一个功能,它能将非本机的二进制文件与特定的解析器自动匹配起来,进行二进制解析。 例如,在x86上解析arm64架构的二进制。 通过binfmt_misc可以注册解析器来处理指定二进制文件格式的请…