技术分享 | 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.mzph.cn/news/224183.shtml

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

相关文章

十四、YARN核心架构

1、目标 (1)掌握YARN的运行角色和角色之间的关系 (2)理解使用容器做资源分配和隔离 2、核心架构 (1)和HDFS架构的对比 HDFS架构: YARN架构:(主从模式) &…

医学检验系统LIS源码,C# +.Net+Oracle

LIS是HIS的一个组成部分,通过与HIS的无缝连接可以共享HIS中的信息资源,使检验科能与门诊部、住院部、财务科和临床科室等全院各部门之间协同工作。  体系结构:Client/Server架构 客户端:WPFWindows Forms 服务端:C…

escapeshellarg参数绕过和注入的问题

escapeshellcmd escapeshellcmd(string $command): string command--要转义的命令。 escapeshellcmd() 对字符串中可能会欺骗 shell 命令执行任意命令的字符进行转义。 此函数保证用户输入的数据在传送到 exec() 或 system() 函数,或者 执行操作符 之前进行转义。 …

pytest + yaml 框架 -60.git+jenkins+allure+钉钉通知反馈

前言 当我们自动化用例写完后,接下来就是如何运行用例,生成报告以及反馈通知了。 如果你们公司已经有jenkins了,那么直接集成到jenkins上构建你的自动化任务是非常方便的。 用例上传git仓库 第一步,将写好的自动化用例&#xf…

保障线程安全性:构建可靠的多线程应用

目录 引言 为什么线程安全性如此重要? 1. 竞态条件(Race Conditions) 2. 死锁(Deadlocks) 3. 数据竞争(Data Races) 4. 内存可见性(Memory Visibility) 面临的挑战…

一张图系列 - “leetcode快速复习“

什么是leetcode? LeetCode是一个在线评测平台,提供大量算法题目,可帮助程序员提高编程和算法能力。它主要提供算法和数据结构相关的练习题,包括各种难度级别的编程题,从简单的算法题到复杂的系统设计问题都有。用户可…

【玩转TableAgent数据智能分析】TableAgent全功能详解及多领域数据分析实践(中)不同领域数据分析实践

3 电影点评数据分析实践 利用本身自带的电影点评数据,来具体看一下TableAgent的分析能力,选择电影点评数据,智能体会自动导入该数据DMSC20000.csv,大小为3.3 MB。在数据信息展示区,就会显示出该数据,并提供…

知识付费平台选择指南:如何找到最适合你的学习平台?

在当今的知识付费市场中,用户面临的选择越来越多,如何从众多知识付费平台中正确选择属于自己的平台呢?下面,我们将为您介绍我有才知识付费平台相比同行的优势,帮助您做出明智的选择。 一、创新的技术架构,…

Java研学-MyBatis框架

一 MyBatis框架 1 框架介绍 框架:对基础代码进行封装并提供相应的API,调用API可省去一些代码的编写,从而提高效率。一个好的框架一定是经过测试,自身的功能已经实现,可以完成特定的功能。 2 MyBatis 框架 MyBatis 框…

基于物理的AlGaN/GaN HEMT器件2DEG电荷密度分析模型(文献阅读)

标题:A Physics-Based Analytical Model for 2DEG Charge Density in AlGaN/GaN HEMT Devices (IEEE TRANSACTIONS ON ELECTRON DEVICES) 重要公式 2DEG电荷密度建模的困难源于量子阱中Ef随ns的复杂变化。此关系由给出 n s D V t h [ l n ( l e E f − E 0 V t …

文献速递:PET-影像组学专题--PET衍生的影像组学和人工智能在乳腺癌中的应用:一篇系统综述

文献速递:PET-影像组学专题–PET衍生的影像组学和人工智能在乳腺癌中的应用:一篇系统综述 01 文献速递介绍 乳腺癌(BC)是目前流行度最高的恶性肿瘤,也是全球女性癌症相关死亡的第二大原因,过去十年间发病…

开个酸奶店需要投资多少钱,创业优势在哪里

作为酸奶店创业5年的创业者,我给大家做个详细全面的分析。让你花最少的钱开一家属于你的酸奶店! 这几年,随着奶茶店的烂大街,酸奶产品开始展露头脚,受到了无数消费者的追捧。从而很多创业者也瞄准了这个市场&#xff…

产品经理之Axure的元件库使用详细案例

⭐⭐ 产品经理专栏:产品专栏 ⭐⭐ 个人主页:个人主页 ​ 目录 前言 一.Axure的元件库的使用 1.1 元件介绍 1.2 基本元件的使用 1.2.1 矩形、按钮、标题的使用 1.2.2 图片及热区的使用 1.3 表单元件及表格元件的使用 1.3.1表单元件的使用 1.3.…

【Linux】进程周边004之进程的调度与切换(领略Linux系统进程调度算法的神奇)

👀樊梓慕:个人主页 🎥个人专栏:《C语言》《数据结构》《蓝桥杯试题》《LeetCode刷题笔记》《实训项目》《C》《Linux》 🌝每一个不曾起舞的日子,都是对生命的辜负 目录 前言 1.进程切换 2.进程调度 2.…

Infobright列存数据库原理介绍

简介 Infobright 是一个面向 OLAP 场景的开源列存数据库。比较容易找到代码的版本是 Infobright Community Edition 4.0.7,大概是 2006 年前后的代码。2016 年6 月,Infobright 决定停止开源1。由于它同时提供企业版和社区版,开源版本的功能相…

基于ssm大学学术交流论坛论文

摘 要 随着科学技术的飞速发展,各行各业都在努力与现代先进技术接轨,通过科技手段提高自身的优势;对于大学学术交流论坛当然也不能排除在外,随着网络技术的不断成熟,带动了大学学术交流论坛的发展,它彻底改…

C# 图解教程 第5版 —— 第18章 泛型

文章目录 18.1 什么是泛型18.2 C# 中的泛型18.3 泛型类18.3.1 声明泛型类18.3.2 创建构造类型18.3.3 创建变量和实例18.3.4 使用泛型的示例18.3.5 比较泛型和非泛型栈 18.4 类型参数的约束18.4.1 Where 子句18.4.2 约束类型和次序 18.5 泛型方法18.5.1 声明泛型方法18.5.2 调用…

Linux系统中如何开启和配置OpenGauss数据库的远程连接

文章目录 前言1. Linux 安装 openGauss2. Linux 安装cpolar3. 创建openGauss主节点端口号公网地址4. 远程连接openGauss5. 固定连接TCP公网地址6. 固定地址连接测试7. 结语 前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍…

基于Maven构建OSGI应用(Maven和OSGI结合)

基于Maven构建OSGI应用。 使用Maven来构建项目,包括项目的创建、子模块buldle的创建等。使用OSGI来实现动态模块化管理,实现模块的热插拔效果(即插即用)。 创建一个Maven项目:helloworld,并在该项目下创建…

selenium/webdriver运行原理与机制

最近在看一些底层的东西。driver翻译过来是驱动,司机的意思。如果将webdriver比做成司机,竟然非常恰当。 我们可以把WebDriver驱动浏览器类比成出租车司机开出租车。在开出租车时有三个角色: 乘客:他/她告诉出租车司机去哪里&…