APP项目测试 之 APP性能测试-- 性能测试工具(SoloPi工具)

news2024/11/19 0:36:46

1.SoloPi简介

(1)什么是SoloPi?

SoloPi 是一个无线化、非侵入式的 Android 自动化工具 ,具备 录制回放、性能测试 等功能。

(2)SoloPi的作用是什么?

  • 基础性能测试:能够记录待测应用的各项指标,可以在悬浮窗中观察实时更新的数据,也可以对性能数据进行录制,在录制结束后查看图表;同时,还支持性能加压,能够对CPU、内存与网络环境进行限制,复现应用在性能较差、网络环境不佳场景下的表现。

  • 录制回放:通过SoloPi执行用例步骤,能够将用户的操作记录下来,支持在各个设备上进行回放,这一切都能够在手机上独立完成。

  • 一机多控:支持通过操作一台主机设备来控制多台从机设备,不需要在各个设备上分别进行重复冗杂的兼容性测试,能够极大提升兼容性测试的效率。

(3)SoloPi安装注意事项

可独立安装的 SoloPi(APK,IOS无该版本),像普通APP一样安装

(4)SoloPi使用时注意事项

SoloPi使用时,需要申请悬浮窗权限,adb权限,读写权限 


2.模拟器的安装

(1)将软件安装包放置在无中文路径下,双击安装:

(2)安装apk:

设置机型:


3.ADB工具安装介绍 

(1)ADB工具是什么?

  • ADB 全称为 Android Debug Bridge,起到调试桥的作用,是一个客户端-服务器端程序。其中客户端是用来操作的电脑,服务端是 Android 设备。
  • ADB 也是 Android SDK 中的一个工具,可以直接操作管理 Android 模拟器或者真实的 Android 设备。
  • ADB 是一个可以控制安卓设备的通用命令行工具,可以做为Android与PC端连接的一个桥梁,所以ADB又称为安卓调试桥(注意:是安卓,不是iOS),用户可以通过adb在电脑上对Android设备进行全面操作,比如安装和调试应用,操作文件的传输等。

(2)注意事项

  • 如果Windows的系统已经安装了雷电模拟器,则忽略ADB工具安装介绍
  • macOS系统如果安装的是 MuMu模拟器 ,还需要先安装JDK,然后单独安装SDK(软件开发工具包)
  • 后续操作模拟器时需要用到SDK工具中adb命令

(3)安装ADB工具

安装使用 ADB 工具前,需要确认自己的电脑上已经安装并配置 JDK 环境。

1)下载ADB 

Windows版本:https://dl.google.com/android/repository/platform-tools-latest-windows.zip
Mac版本:https://dl.google.com/android/repository/platform-tools-latest-windows.zip
Linux版本:https://dl.google.com/android/repository/platform-tools-latest-linux.zip

解压文件:

2)配置环境变量

把解压路径放到系统变量里去(Path)

3)安装结果验证

win+R-->cmd-->abd version-->abd:

(4)ADB命令使用

作用通过ADB命令能够实现自动化相关测试,提升测试效率

常见命令列表1 :

adb devices  # 查看当前接入的移动端设备

adb shell  # 进入当前设备命令行

exit  # 退出当前设备命令

adb shell pm list packages  # 查看设备已安装的软件包

 常用命令列表2:


adb shell dumpsys window w | grep mFocusedApp  # macOS系统输入命令  # 查看当前打开的APP包名和Activity

adb shell dumpsys window w | findstr mFocusedApp   # Windows系统输入命令

常用命令3:

adb shell am start com.tpshop.malls/.SPMainActivity  # 启动上述APP并进入首页页面,start后面时包名和Activity名

adb shell am force-stop com.tpshop.malls  # 强制停用上述APP

adb push 电脑文件路径 设备路径  # 复制电脑文件到设备

adb pull 设备文件 [电脑某路径下]   # 复制设备文件到电脑

adb shell am start -W -n 包名/Activity名  # 启动速度测试命令

常用命令4:

adb version :显示 adb 版本
adb help:帮助信息,查看adb所支持的所有命令
adb devices:查看当前连接的设备,已连接的设备会显示出来
adb get-serialno:也可以查看设备号

常用命令5: 

adb root:获取Android管理员(root用户)的权限。

注意:一般测试机可使用root权限。

Android版本9以上,不支持商用机使用root权限,但可以修改底层一些配置
adb shell:登录设备 shell,该命令将登录设备的shell(内核),登录shell后,
           可以使用 cd,ls,rm 等Linux命令
adb -d:如果同时连了usb,又开了模拟器,连接当前唯一通过usb连接的安卓设备

adb -e shell:指定当前连接此电脑的唯一的一个模拟器

adb -s <设备号> shell:当电脑插多台手机或模拟器时,指定一个设备号进行连接
adb kill-server:杀死当前adb服务,如果连不上设备时,杀掉重启。(没事不要用它)
adb start-server:杀掉后重启
5037:adb默认端口,如果该端口被占用,可以指定一个端口号,如下命令↓

adb -p 6666 start-server:任意指定一个 adb shell 的端口

4.SoloPi工具的安装使用

(1)安装SoloPi工具

打开手机模拟器,直接将本地电脑的 SoloPi.apk 拖入模拟器自动安装

(2)验证SoloPi工具

安装成功后桌面显示 SoloPi 软件图标
双击启动SoloPi工具,点击确定获得对应权限

(3)SoloPi工具使用

进入点击性能测试”-->点击全局下拉框(选择指定APP):
勾选性能测试指标:
启动开始监测--> 打开被测APP直接操作-->操作完毕后停止并自动保存:
返回SoloPi查看监测示意图:
可以直接导出保存的数据:
在共享文件夹打开本地电脑位置:

未完待续。。。

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

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

相关文章

STM32-I2C硬件外设

本博文建议与我上一篇I2C 通信协议​​​​​​共同理解 合成一套关于I2C软硬件体系 STM32内部集成了硬件I2C收发电路&#xff0c;可以由硬件自动执行时钟生成、起始终止条件生成、应答位收发、数据收发等功能&#xff0c;减轻CPU的负担 特点&#xff1a; 多主机功能&#x…

[word] Word如何快速生成一段文本 #知识分享#学习方法

Word如何快速生成一段文本 Word如何快速生成一段文本&#xff1f;有时候我们会用一大段文字来做一些功能测试&#xff0c;不少朋友的做法就是脸滚键盘&#xff0c;一顿乱按&#xff0c;这样看起来文笔不通&#xff0c;看着也会比较难受&#xff0c;测试功能的效果也不怎么理想…

【全面讲解下Foxit Reader】

&#x1f3a5;博主&#xff1a;程序员不想YY啊 &#x1f4ab;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家 &#x1f917;点赞&#x1f388;收藏⭐再看&#x1f4ab;养成习惯 ✨希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出…

微信小程序毕业设计-学生实习与就业管理系统项目开发实战(附源码+论文)

大家好&#xff01;我是程序猿老A&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。 &#x1f49e;当前专栏&#xff1a;微信小程序毕业设计 精彩专栏推荐&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; &#x1f380; Python毕业设计…

一款免费的PDF编辑软件,内置了OCR功能,识别效果好

主要是想分享给大家他的OCR功能&#xff0c;面对无法编辑的PDF或者图片&#xff0c;如何批量的转成文字或者带有格式的word文档&#xff0c;很多时候或者很多工具做的不理想&#xff0c;今天分享的这款工具应该是目前为止&#xff0c;我遇到的最好的批量OCR工具。他不是简单的O…

spring boot实现短信验证码功能

1、到阿里云网站申请 https://market.aliyun.com/products/5700000 2/cmapi00046920.html2、配置文件&#xff0c;可申请测试 sms:app-code: xxxxxxxxxtemplate-id: xxxxxxx3、使用restTemplate用于第三方接口调用 package com.example.rsocketclient.config;import org.spr…

笔记14:程序中的循环结构

生活中的循环现象&#xff1a; -日复一日&#xff0c;年复一年 -春夏秋冬&#xff0c;四季交替 -周日&#xff0c;周一&#xff0c;周二&#xff0c;周三&#xff0c;周四&#xff0c;周五&#xff0c;周六 -人生是一个轮回&#xff0c;多年后&#xff0c;又会回到最初的原点 …

Python学习从0开始——Kaggle实践可视化001

Python学习从0开始——Kaggle实践可视化001 一、创建和加载数据集二、数据预处理1.按name检查&#xff0c;处理重复值&#xff08;查重&#xff09;2.查看存在缺失值的列并处理&#xff08;缺失值处理&#xff09;2.1按行或列查看2.2无法推测的数据2.3可由其它列推测的数据 3.拆…

大数据Spark 面经

1: Spark 整体架构 Spark 是新一代的大数据处理引擎&#xff0c;支持批处理和流处理&#xff0c;也还支持各种机器学习和图计算&#xff0c;它就是一个Master-worker 架构&#xff0c;所以整个的架构就如下所示&#xff1a; 2: Spark 任务提交命令 一般我们使用shell 命令提…

【HICE】web服务搭建之仓库

1.首先将1.conf变成vhost&#xff0c;从而使监听号只有最普通的&#xff0c;并且进行更新。 2.挂载 mount /dev/sr0 /var/www/html 3.更改本地仓库路径 4.测试&#xff1a;下载软件包&#xff0c;在删除 5.删除软件包在取消挂载&#xff0c;在下载软件包失败

计算机网络-IP组播基础

一、概述 在前面的学习交换机和路由协议&#xff0c;二层通信是数据链路层间通信&#xff0c;在同一个广播域间通过源MAC地址和目的MAC地址进行通信&#xff0c;当两台主机第一次通信由于不清楚目的MAC地址需要进行广播泛洪&#xff0c;目的主机回复自身MAC地址&#xff0c;然后…

C++:this指针到底是什么东西

一、this指针概述 在C中&#xff0c;this是一个隐含的指针&#xff0c;它指向当前正在被调用的函数的对象实例。当你在一个成员函数内部引用self, me, 或者是无名的"this"时&#xff0c;实际上是访问了这个特殊的变量。this通常用于区分函数参数和局部变量&#xff0…

linux驱动编程 - kfifo先进先出队列

简介&#xff1a; kfifo是Linux Kernel里面的一个 FIFO&#xff08;先进先出&#xff09;数据结构&#xff0c;它采用环形循环队列的数据结构来实现&#xff0c;提供一个无边界的字节流服务&#xff0c;并且使用并行无锁编程技术&#xff0c;即当它用于只有一个入队线程和一个出…

机器学习筑基篇,​Ubuntu 24.04 编译安装 Python 及多版本切换

[ 知识是人生的灯塔&#xff0c;只有不断学习&#xff0c;才能照亮前行的道路 ] Ubuntu 24.04 编译安装最新Python及多版本切换 描述&#xff1a;说到机器学习&#xff0c;人工智能&#xff0c;深度学习不免会提到Python这一门编程语言&#xff08;人生苦短&#xff0c;及时Pyt…

Redis的zset的zrem命令可以做到O(1)吗?

事情是这样的&#xff0c;当我用zrem命令去移除value的时候&#xff0c;我知道他之前会做的几个步骤 1、查找这个value对应的score&#xff08;通过zset中的dict&#xff09;2、根据这个score查找到跳表中的节点3、删除这个节点 我就想了一下为什么dict为什么要保存score呢&a…

Caffeinated for Mac v2.0.6 Mac防休眠应用 兼容 M1/M2/M3

Caffeinated 可以防止您的 Mac 进入休眠状态、屏幕变暗或者启动屏幕保护。 应用介绍 您的屏幕是否总是在您不希望的时候变暗&#xff1f;那么Caffeinated就是您解决这个大麻烦的最好工具啦。Caffeinated是在Caffeine这个非常便捷、有用的工具的基础上开发而来的。Caffeinated…

insert阻塞了insert?

一、发现问题 在arms监控页面看到某条insert语句的执行时长达到了431毫秒。 数据库中存在&#xff0c;insert语句受到了行锁阻塞&#xff0c;而阻塞的源头也在执行同样的insert语句&#xff0c;同样都是对表USERSYS_TASK_USER_LOG_TEMP01的插入操作&#xff0c;很是费解。 二…

vue2-vue3响应式原理

我们先来看一下响应式意味着什么&#xff1f;我们来看一段代码&#xff1a; m有一个初始化的值&#xff0c;有一段代码使用了这个值&#xff1b;那么在m有一个新的值时&#xff0c;这段代码可以自动重新执行&#xff1b; let m 20 console.log(m) console.log(m * 2)m 40上…

深圳航空顶象验证码逆向,和百度验证码训练思路

声明(lianxi a15018601872) 本文章中所有内容仅供学习交流使用&#xff0c;不用于其他任何目的&#xff0c;抓包内容、敏感网址、数据接口等均已做脱敏处理&#xff0c;严禁用于商业用途和非法用途&#xff0c;否则由此产生的一切后果均与作者无关&#xff01; 前言(lianxi a…

你的 Mac 废纸篓都生苍蝇啦

今天给大家推荐个免费且有趣的小工具 BananaBin&#xff0c;它可以在你的废纸篓上“长”一些可爱的苍蝇&#x1fab0;。 软件介绍 BananaBin 是 macOS 上的一款有趣实用工具&#xff0c;当你的垃圾桶满了时&#xff0c;它会提醒你清理。这个软件通过在垃圾桶上添加互动的苍蝇…