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

简介: 技术分享 | 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 模拟器在自动化过程中,会存在横屏的问题,解决这个问题可以参考帖子:

https://ceshiren.com/t/topic/931

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

Genymotion

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

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

下载地址:

https://www.genymotion.com/download/

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

相关文章
|
2月前
|
Java 测试技术 持续交付
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
本文重点讲解如何搭建App自动化测试框架的思路,而非完整源码。主要内容包括实现目的、框架设计、环境依赖和框架的主要组成部分。适用于初学者,旨在帮助其快速掌握App自动化测试的基本技能。文中详细介绍了从需求分析到技术栈选择,再到具体模块的封装与实现,包括登录、截图、日志、测试报告和邮件服务等。同时提供了运行效果的展示,便于理解和实践。
119 4
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
|
4月前
|
Java 测试技术 Android开发
Android性能测试——发现和定位内存泄露和卡顿
本文详细介绍了Android应用性能测试中的内存泄漏与卡顿问题及其解决方案。首先,文章描述了使用MAT工具定位内存泄漏的具体步骤,并通过实例展示了如何分析Histogram图表和Dominator Tree。接着,针对卡顿问题,文章探讨了其产生原因,并提供了多种测试方法,包括GPU呈现模式分析、FPS Meter软件测试、绘制圆点计数法及Android Studio自带的GPU监控功能。最后,文章给出了排查卡顿问题的四个方向,帮助开发者优化应用性能。
237 4
Android性能测试——发现和定位内存泄露和卡顿
|
4月前
|
测试技术
基于LangChain手工测试用例转App自动化测试生成工具
在传统App自动化测试中,测试工程师需手动将功能测试用例转化为自动化用例。市面上多数产品通过录制操作生成测试用例,但可维护性差。本文探讨了利用大模型直接生成自动化测试用例的可能性,介绍了如何使用LangChain将功能测试用例转换为App自动化测试用例,大幅节省人力与资源。通过封装App底层工具并与大模型结合,记录执行步骤并生成自动化测试代码,最终实现高效自动化的测试流程。
|
4月前
|
测试技术 Shell Android开发
Android 性能测试初探 (六)
本节聊聊性能测试的最后一项- 流量,当然我所指的性能测试是针对大部分应用而言的,可能还有部分应用会关注网速、弱网之类的测试,但本系列文章都不去一一探讨了。
61 6
|
4月前
|
JavaScript 测试技术 Android开发
Android 性能测试初探 (四)
本文介绍了GPU在移动端性能测试中的重要性,并详细解释了过度绘制、帧率和帧方差的概念。针对GPU测试,文章列举了三项主要测试内容:界面过度绘制、屏幕滑动帧速率和平滑度。其中,过度绘制测试需遵循特定标准,而帧速率和平滑度测试则可通过软件或硬件方法实现。在软件测试中,使用Systrace插件和高速相机是两种常用手段。对于不同机型,帧率及帧方差的测试标准也需相应调整。
64 5
|
4月前
|
测试技术 Shell Android开发
Android 性能测试初探 (三)
本文承接《Android性能测试初探(二)》,深入探讨CPU与内存测试。介绍了移动端内存测试的重要性及其测试目标,并详细列举了不同状态下应用内存消耗情况的测试项目。此外,还提供了多种内存测试方法,包括使用`procrank`等工具的具体操作步骤。最后,文章也简要提及了CPU测试的相关内容,帮助读者更好地理解Android性能测试的关键要素。
60 5
|
4月前
|
测试技术 Shell 定位技术
Android 性能测试初探 (五)
聊聊大家不常关注的测试项- 功耗
62 3
|
4月前
|
算法 测试技术 Android开发
Android 性能测试初探 (二)
上回大体介绍了下在 android 端的性能测试项,现在我们就细节测试项做一些阐述(包括如何自己 DIY 测试)
53 4
|
4月前
|
测试技术 API Android开发
Android 性能测试初探 (一)
Android 性能测试,跟pc性能测试一样分为客户端及服务器,但在客户端上的性能测试分为 2 类: 一类为 rom 版本的性能测试;一类为应用的性能测试。
57 3
|
4月前
|
Android开发
Android学习 —— 测试init.rc中的条件触发的处理顺序
Android学习 —— 测试init.rc中的条件触发的处理顺序