技术分享 | app测试中常用的Android模拟器

Emulator

Emualor 是 Android Studio 自带的模拟器,是官方提供的工具,Android 开发最常使用的就是这一款。

它功能非常齐全,电话本、通话等功能都可正常使用。用户可以使用键盘输入,鼠标点击模拟器按键输入,甚至还可以使用鼠标点击、拖动屏幕进行操纵。

当然模拟器毕竟是模拟器,和真实的手机设备还是存在差别的。

Emualor 模拟器和真机的不同之处:

  • 不支持呼叫和接听实际来电

  • 不支持 USB 连接

  • 不支持相机/视频捕捉

  • 不支持音频输入(捕捉)

  • 不支持扩展耳机

  • 不能确定连接状态

  • 不能确定电池电量水平和交流充电状态

  • 不能确定 SD 卡的插入/弹出

  • 不支持蓝牙

1、通过 AVD Manager 创建使用模拟器

2、启动 Android Studio

3、点击 Configure 后选择 AVD Manager

4、点击 Creat Virtual Device

5、选择设备尺寸

6、选择手机系统

7、切换到 X86 列表,建议选择带有 Google Apis 的镜像

8、点击镜像后方的 Download 按钮下载镜像(推荐 Android 6.0 系统)

9、模拟器设置页面:AVD Name 可以设置模拟器的名字,点击 Show Advanced Settings 展开高级选项可以配置 SD 卡的存储大小

10、模拟器创建成功

11、点击绿色三角按钮启动模拟器

1、Emulator 命令行工具

可以先切换到 Emulator 所在路径

bash

cd /Users/mac/Library/Android/sdk/emulator/

  • 查看帮助:emulator -help

  • 查看模拟器列表:emulator -list-avds

  • 启动模拟器:emulator @avd_name

其实从命令行也可以创建模拟器,但是命令比较复杂。推荐大家在 Android Studio 里面去创建模拟器,有 UI 界面,设置起来比较方便。

模拟器启动起来之后就可以正常使用了,可以创建各种版本、各种分辨率的模拟器。可以用来做一些版本方面的兼容。

当然了,如果有条件用真机做测试的,最好还是用真机,毕竟模拟器和真机还是有区别的,应该尽量的和用户的使用环境保持一致。

Emulator 虽然功能很强大,但是非常耗费电脑 CPU 资源。如果电脑配置不高可能运行会非常慢。这种情况下,其实还有其他的模拟器可以供选择。下面再来介绍几款其他的模拟器。

MuMu模拟器

网易 MuMu 模拟器是网易官方推出的 Android 模拟器,安装很方便,对于 adb 和抓包支持的也很好,而且运行相对比较快。

直接到官网下载安装包就可以了,可以到更新日志中下载旧一点的版本。默认安装,打开就可以使用。现在下载的 MuMu 是 Android 6.0 的版本,对于后续学习是比较友好的。因为越高版本的 Android 的安全性就越高,权限控制的要更严谨,对于学习研究来说就不太方便。

MuMu 模拟器在自动化过程中,会存在横屏的问题,解决这个问题可以参考帖子:

ceshiren.com/t/topic/931

需要注意的是,MuMu 不能自定义其他系统版本,所以在工作当中限制比较大。

Genymotion

最后再给介绍一款比较好用的模拟器,这个也可以定制不同的系统版本和不同的分辨率,运行速度也比 Emulator 要快。

但是安装起来要麻烦一些,现在只需要简单了解一下有这样一款工具就可以,不推荐现在安装。

下载地址:

www.genymotion.com/download/

选择免费的个人版本下载即可。


              【下面是我整理的2023年最全的软件测试工程师学习知识架构体系图】


一、Python编程入门到精通

二、接口自动化项目实战 

三、Web自动化项目实战


四、App自动化项目实战 

五、一线大厂简历


六、测试开发DevOps体系 

七、常用自动化测试工具

八、JMeter性能测试 

九、总结(尾部小惊喜)

生命不息,奋斗不止。每一份努力都不会被辜负,只要坚持不懈,终究会有回报。珍惜时间,追求梦想。不忘初心,砥砺前行。你的未来,由你掌握!

生命短暂,时间宝贵,我们无法预知未来会发生什么,但我们可以掌握当下。珍惜每一天,努力奋斗,让自己变得更加强大和优秀。坚定信念,执着追求,成功终将属于你!

只有不断地挑战自己,才能不断地超越自己。坚持追求梦想,勇敢前行,你就会发现奋斗的过程是如此美好而值得。相信自己,你一定可以做到! 

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring基于xml半注解开发

目录 Component的使用 依赖注解的使用 非自定义Bean的注解开发 Component的使用 基本Bean注解&#xff0c;主要是使用注解的方式替代原有的xml的<bean>标签及其标签属性的配置&#xff0c;使用Component注解替代<bean>标签中的id以及class属性&#xff0c;而对…

【Android逆向】记录一次某某虚拟机的逆向

导语 学了一段时间的XPosed&#xff0c;发现XPosed真的好强&#xff0c;只要技术强&#xff0c;什么操作都能实现... 这次主要记录一下我对这款应用的逆向思路 apk检查 使用MT管理器检查apk的加壳情况 发现是某数字的免费版本 直接使用frida-dexdump 脱下来后备用 应用分…

yolov8实战第二天——yolov8训练结果分析(保姆式解读)

yolov8实战第一天——yolov8部署并训练自己的数据集&#xff08;保姆式教程&#xff09;-CSDN博客 我们在上一篇文章训练了一个老鼠的yolov8检测模型&#xff0c;训练结果如下图&#xff0c;接下来我们就详细解析下面几张图。 一、混淆矩阵 正确挑选&#xff08;正确&#…

gRPC框架

1、gRPC 与 Protobuf 介绍 微服务架构中&#xff0c;由于每个服务对应的代码库是独立运行的&#xff0c;无法直接调用&#xff0c;彼此间 的通信就是个大问题gRPC 可以实现微服务&#xff0c; 将大的项目拆分为多个小且独立的业务模块&#xff0c; 也就是服务&#xff0c; 各服…

如何做一名“机关算尽”的伦敦银投资者?

做伦敦银投资者有一个好处&#xff0c;就是这个世界上投资者均可以参与的市场会比较公平&#xff0c;所以我们从书中、从课程中学习到的分析方法&#xff0c;可以应用在该市场中。其中有一种方法&#xff0c;可以通过计算&#xff0c;算出银价转折、反转的点位等等。那我们如何…

拆解大语言模型 RLHF 中的PPO算法

为什么大多数介绍大语言模型 RLHF 的文章&#xff0c;一讲到 PPO 算法的细节就戛然而止了呢&#xff1f;要么直接略过&#xff0c;要么就只扔出一个 PPO 的链接。然而 LLM x PPO 跟传统的 PPO 还是有些不同的呀。 其实在 ChatGPT 推出后的相当一段时间内&#xff0c;我一直在等…

一些AG10K FPGA 调试的建议-Douglas

PLL AGM FPGA 在配置成功时&#xff0c;PLL 已经完成锁定&#xff0c;lock 信号已经变高&#xff1b;如果原设计中用 lock 信号输出实现系统 reset 的复位功能&#xff0c;就不能正确完成上电复位&#xff1b;同时&#xff0c;为了保证 PLL 相移的稳定&#xff0c;我们需要在 P…

RabbitMq的详细使用

消息队列RabbitMQ详细使用 文章目录 消息队列RabbitMQ详细使用MQ 的相关概念什么是MQ为什么要用MQMQ 的分类MQ 的选择 RabbitMQRabbitMQ 的概念四大核心概念各个名词介绍安装RabbitMQWeb管理界面及授权操作Docker 安装Hello world简单示例 Work Queues轮训分发消息消息应答自动…

Java编程中通用的正则表达式(一)

正则表达式&#xff08;Regular Expression&#xff0c;简称RegEx&#xff09;&#xff0c;又称常规表示法、正则表示、正规表示式、规则表达式、常式、表达式等&#xff0c;是计算机科学中的一个概念。正则表达式是用于描述某种特定模式的字符序列&#xff0c;特别是用来匹配、…

设计模式(二)-创建者模式(5)-建造者模式

一、为何需要建造者模式&#xff08;Builder&#xff09;? 在软件系统中&#xff0c;会存在一个复杂的对象&#xff0c;复杂在于该对象包含了很多不同的功能模块。该对象里的各个部分都是按照一定的算法组合起来的。 为了要使得复杂对象里的各个部分的独立性&#xff0c;以及…

大模型学习之GPT系列

GPT系列 预备知识GPT-1无监督预训练有监督的微调训练 GPT-2数据集&#xff1a;输入表示模型实验 GPT-3模型数据集实验局限性 InstructGPTGPT-4GPT-4 新特性基础能力 参考文献 大模型 GPT演进路线图 预备知识 Transformer 结构图 GPT-1 首先使用未标注的数据训练一个预训练…

速学数据结构 | 树 森林 二叉树 的概念详讲篇

&#x1f3ac; 鸽芷咕&#xff1a;个人主页 &#x1f525; 个人专栏:《速学数据结构》 《C语言进阶篇》 ⛺️生活的理想&#xff0c;就是为了理想的生活! &#x1f4cb; 前言 &#x1f308;hello&#xff01; 各位宝子们大家好啊&#xff0c;关于线性表我们已经在前面更新完了…

c YUV 转 JPEG(准备霍夫曼编码)

先取yuv 文件中一个168的块&#xff0c;跑通全流程 理解与思路&#xff1a; 1.块分割 YUV 文件分为&#xff1a;YUV444 YUV 422 YUV420。444:就是&#xff1a;12个char 有4个Y&#xff0c;4个U&#xff0c;4个 U&#xff0c;422&#xff1a;8个char 中有4个Y &#x…

西科大微机原理实验四(定时器程序设计)

任务一、 按实验要求内容新建一个ASM41.ASM文件,使用masm命令生成obj文件并输入 上述源程序中使用了外部资源,该外部资源存在于文件 LIB_TIM.OBJ中,因此使用link命令将 ASM41.OBJ 和 LIB_TIM.OBJ 一起链接生成可执行文件 使用debug加载程序并进行调试 使用-g指令,回显如下…

技术分享 | 想做App测试就一定要了解的App结构

app 的结构包含了 APK 结构和 app 页面结构两个部分 APK结构 APK 是 Android Package 的缩写&#xff0c;其实就是 Android 的安装包。通过将 APK 文件直接传到 Android 模拟器或 Android 手机中执行即可安装。 APK 文件其实是 zip 格式&#xff0c;但后缀名被修改为 apk&…

Mysql进阶-InnoDB引擎事务原理及MVCC

事务原理 事务基础 事务是一组操作的集合&#xff0c;它是一个不可分割的工作单位&#xff0c;事务会把所有的操作作为一个整体一起向系 统提交或撤销操作请求&#xff0c;即这些操作要么同时成功&#xff0c;要么同时失败。 事务的四大特性&#xff1a; 原子性&#xff08;A…

抖去推--短视频剪辑、矩阵无人直播saas营销工具一站式开发

抖去推是一款短视频剪辑和矩阵无人直播SAAS营销工具一站式开发平台。它提供了以下功能和特点&#xff1a; 1. 短视频剪辑&#xff1a;抖去推提供了一系列的剪辑工具&#xff0c;包括自动剪辑、特效制作、配音配乐等&#xff0c;可以帮助用户轻松制作出高质量的短视频。 2. 矩阵…

Java实现一个简单的贪吃蛇小游戏

一. 准备工作 首先获取贪吃蛇小游戏所需要的头部、身体、食物以及贪吃蛇标题等图片。 然后&#xff0c;创建贪吃蛇游戏的Java项目命名为snake_game&#xff0c;并在这个项目里创建一个文件夹命名为images&#xff0c;将图片素材导入文件夹。 再在src文件下创建两个包&#xff0…

阿里云SLB的使用总结

一、什么是SLB 实现k8s的服务service的一种推荐方式&#xff0c;也是服务上云后&#xff0c;替代LVS的一个必选产品。 那么它有什么作用呢&#xff1f; 1、负载均衡&#xff0c;是它与生俱来的。可以配置多个服务器组&#xff1a;包括虚拟服务器组、默认服务器组、主备服务器…

鸿蒙原生应用/元服务开发-Stage模型能力接口(二)

ohos.app.ability.AbilityConstant (AbilityConstant)一、说明 AbilityConstant提供Ability相关的枚举&#xff0c;包括设置初次启动原因、上次退出原因、迁移结果、窗口类型等。本模块首批接口从API version 9开始支持。后续版本的新增接口&#xff0c;采用上角标单独标记接口…