技术分享 | 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 所在路径

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/

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

 

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

 

          视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

安卓投屏延时数据如何测试,测试工具如何写?

背景: 投屏其实在android等使用场景非常非常多,比如现在火爆小米汽车的车机,上面涉及到手机和车机互联画面相关都是属于投屏范围。这种跨设备的投屏场景,流畅的体验是最重要的,这里就会要求投屏中最重要的一个性能指标…

Nerf技术原理

Neural Radiance Fields (NeRF) 是一种3D场景重建技术,用于从一组稀疏的2D图像创建高质量的3D模型。这一技术基于深度学习,通过训练一个神经网络来模拟场景的体积密度和颜色分布,实现在新的视角下渲染出高质量的3D图像。 NeRF的核心原理 NeRF的核心在于使用一个全连接的神经…

开源事件通知库libevent及网络连接管理模块bufferevent详解

目录 1、libevent介绍 1.1、什么是libevent? 1.2、libevent特点 1.3、网络连接管理模块bufferevent 2、bufferevent有什么用? 3、bufferevent的整体设计与实现细节 3.1、整体概况 3.2、evbuffer与bufferevent 3.3、defer callback 4、bufferev…

听说英伟达和诺和诺德要共建医药研发超算,超算安腾默默笑了

继黄仁勋公开发表“生命科学才是未来”的观点后,英伟达押注生物计算赛道又有新动作。日前,诺和诺德基金会宣布将出资和英伟达合作,在丹麦建造一台专注于生成式AI应用的超级计算机,以推动医疗保健、生命科学和绿色转型领域的研究与…

【JavaSE进阶】08-反射机制 09-注解

1 反射机制 a) 反射的基本概念 b) Java中的类反射 c) 安全性和反射 d) 反射的两个缺点 1.1 反射的基本概念 反射的概念是由 Smith 在 1982 年首次提出的,主要是指程序可以访问、检测和修改它本身状 态或行为的一种能力, 并能根据自身行为的状态和结果&#…

六、项目发布 -- 2. 数据库环境准备

之前我们是采用mock方式获取这些接口,也就是这些接口的数据其实是固定的,现在我们将从数据库中来获取这些数据并且在界面上进行展示。 1、数据库环境准备 到MYSQL官网上,主要下载服务端,社区版是免费的,安装好MYSQL …

结构体(C语言)

“点赞,留言,收藏,关注” 就是对阿林最大的支持 1.自定义类型 什么是自定义类型?C语言中有一些自带的数据类型,比如说char,int,float,double,long等数据类型就是C语言的…

目标检测——标注鱼类数据集

一、重要性及意义 鱼类的检测在多个领域都表现出其重要性和意义。以下是几个主要方面的阐述: 首先,从食品安全和营养价值的角度来看,鱼类作为人们日常生活中的重要蛋白质来源,其质量和安全性备受关注。鱼类营养成分检测能够评估…

C++异步回调示例:多线程执行任务,主线程通过回调监测任务状态

1、回调函数 回调函数定义:把函数的指针或者地址作为参数传递给另一个参数,当这个指针被用来调用其所指向的函数时,那么这就是一个回调的过程,这个被回调的函数就是回调函数。回调函数不是由该函数的实现方直接调用,而…

反转二叉树(力扣226)

解题思路:用队列进行前序遍历的同时把节点的左节点和右节点交换 具体代码如下: class Solution { public:TreeNode* invertTree(TreeNode* root) {if (root NULL) return root;swap(root->left, root->right); // 中invertTree(root->left)…

oracle 数据库 迁移 mysql

将 Oracle 数据库迁移到 MySQL 是一项复杂的任务,因为这两种数据库管理系统具有不同的架构、语法和功能。下面是一个基本的迁移步骤,供你参考: 步骤一:评估和准备工作 1.评估数据库结构:仔细分析 Oracle 数据库的结构…

让15万的车也配激光雷达,速腾发布中长距「千元机」MX

‍作者 |老缅 编辑 |德新 4月15日,国内头部激光雷达公司速腾聚创发布了新一代中长距激光雷达MX。 相比较其产品配置,最令人惊喜的是它的价格。 「MX将以低于200美元的价格作为基础,实现第一个项目的量产。」速腾聚创CEO邱纯潮在发布会现场…

Python连接Oracle数据库问题解决及Linux服务器操作知识

背景说明 最近在做一个视频分析的项目,然后需要将视频分析的数据写入到oracle数据库,直接在服务器上测试数据库连接的时候出现了这个bug提示,自己通过不断的研究探讨,最终把这个问题成功进行了解决,在这里进行一下记录…

Avi Wigderson:理论计算机科学的巨人

🏆个人专栏 🤺 leetcode 🧗 Leetcode Prime 🏇 Golang20天教程 🚴‍♂️ Java问题收集园地 🐍 Python工具 🌴 成长感悟 欢迎大家观看,不执着于追求顶峰,只享受探索过程 A…

LeetCode-热题100:98. 验证二叉搜索树

题目描述 给你一个二叉树的根节点 root ,判断其是否是一个有效的二叉搜索树。 有效 二叉搜索树定义如下: 节点的左子树只包含 小于 当前节点的数。节点的右子树只包含 大于 当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。 示例 1&#x…

Java项目:基于SSM框架实现的心遗非遗文创电商平台(源码+数据库)

一、项目简介 本项目是一套基于SSM框架实现的心遗非遗文创电商平台 包含:项目源码、数据库脚本等,该项目附带全部源码可作为毕设使用。 项目都经过严格调试,eclipse或者idea 确保可以运行! 该系统功能完善、界面美观、操作简单、…

Linux_CentOS7/8系统 - 关闭图形界面新增用户机制手册

Linux_CentOS7/8系统 - 关闭图形界面新增用户机制手册 在系统完成图形界面安装后重新启动后第一次登入,在图形界面会有新增用户页面,那如果取消关闭可以按以下操作: CTRLALTF2 root账号登录 yum remove gnome-initial-setup -y init 3 init …

微信小程序公共组件封装使用

1.在components目录下创建公共组件,以navbar为例 2.完成组件功能 3.调用,如果很多地方都会用到,建议放全局,如果不是则放在需要引用的文件中 3.1全局引用,在app.json做全局引用配置 3.2局部引用,在需要引入…

【C++庖丁解牛】C++11---统一的列表初始化 | auto | decltype | nullptr | STL中一些变化

🍁你好,我是 RO-BERRY 📗 致力于C、C、数据结构、TCP/IP、数据库等等一系列知识 🎄感谢你的陪伴与支持 ,故事既有了开头,就要画上一个完美的句号,让我们一起加油 目录 1. C11简介2. 统一的列表…

3.1 海思SS928开发 - 烧写工具 - ToolPlatform 安装及配置

3.1 烧写工具 - ToolPlatform 安装及配置 ToolPlatform 安装 进入到开发虚拟机,将文件 ~/hiss928/sdk/ema_2.0.2.2/pc/ToolPlatform/ToolPlatform-1.0.11-win32-x86_64.zip 拷贝至 PC 上。PC 要求安装了 win7 及以上的操作系统。解压压缩包 ToolPlatform-1.0.11-w…