测试了5款最常见的模拟器,发现与Airtest自动化最配的竟然是...

简介: 测试了5款最常见的模拟器,发现与Airtest自动化最配的竟然是...

前言



模拟器是我们的测试小伙伴非常喜欢的一款工具。在使用 airtest 框架做自动化测试的时候,小伙伴们也是非常喜欢用模拟器来作为测试设备的,但是我们也收到过很多关于连接模拟器的问题:


airtest 连不上xx模拟器怎么办

② xx模拟器连上了但是好卡啊

③ 哪款模拟器好用,有没有推荐的呀

......


别急,今天我们就用AirtestIDE来连接下5家主流的模拟器,看看这几款模拟器,到底谁好用一些。


准备工作



① 进入开发者模式,打开USB调试


不论连接什么品牌的模拟器,我们都需要先把它的 USB模式 打开,才能够连的上。


开启方式:在设置中滑到最后,找到关于平板电脑,点击进去找到版本号,然后连续点击版本号直到提示:您已处于开发者模式。此时返回上一层菜单,可以看到多了一个开发者选项,点击进去,再把 USB调试 这个选项打开即可。


② 在模拟器中手动安装上Yosemite


很多情况下,airtest 连接模拟器时,并不会像连接真机设备那样,自动安装上 Yosemite 。所以我们在此建议,连接模拟器之前,最好先手动把 Yosemite 安装上,可以有效避免下述错误:



Yosemite 的安装包可以在解压好的AirtestIDE文件夹里面找到:



1.雷电模拟器



① 本次测试所用产品版本:


  • 雷电模拟器:3.94.0(最新)
  • AirtestIDE:1.2.3(最新)


② 雷电模拟器的端口号是5554,在IDE的设备连接窗口上连接雷电模拟器的步骤如图:



注意:雷电模拟器不需要勾选备选的连接参数就可以连接上AirtestIDE


③ 如果刷出了多台端口号为5554的雷电模拟器设备,选择 ADB Statusdevice 的那台,即 emulator-5554



④ 在 auto_setup 接口中连接雷电模拟器


auto_setup(__file__,devices=["Android://127.0.0.1:5037/emulator-5554"])
复制代码


2.mumu模拟器



① 本次测试所用产品版本:


  • mumu模拟器:2.3.10(最新)
  • AirtestIDE:1.2.3(最新)


② mumu模拟器的端口号是7555,在IDE的设备连接窗口上连接mumu模拟器的步骤如图:



注意:mumu模拟器不需要勾选备选的连接参数就可以连接上AirtestIDE

③ 在 auto_setup 接口中连接mumu模拟器


auto_setup(__file__,devices=["Android://127.0.0.1:5037/127.0.0.1:7555"])
复制代码


3.夜神模拟器



① 本次测试所用产品版本:


  • 夜神模拟器:V6.6.0.8005(最新)
  • AirtestIDE:1.2.3(最新)


② 夜神模拟器的端口号是62001,在IDE的设备连接窗口上连接夜神模拟器的步骤如图:



③ 在IDE上连接夜神,需要在点击connect之前勾选上备选连接参数 use javacap ,否则连接会报错或者模拟器出现黑屏:



④ 在 auto_setup 接口中连接夜神模拟器


auto_setup(__file__,devices=["Android://127.0.0.1:5037/127.0.0.1:62001?cap_method=JAVACAP"])
复制代码


4.逍遥模拟器



① 本次测试所用产品版本:


  • 逍遥模拟器:7.2.1(最新)
  • AirtestIDE:1.2.3(最新)


② 逍遥模拟器的端口号是21503,在IDE的设备连接窗口上连接逍遥模拟器的步骤如图:



③ 在IDE上连接逍遥模拟器,需要在点击connect之前勾选上备选的连接参数 use javacapuse ADB orientation,俩者缺一不可,否则会出现如下报错:



④ 在 auto_setup 接口中连接逍遥模拟器


auto_setup(__file__,devices=["Android://127.0.0.1:5037/127.0.0.1:21503?cap_method=JAVACAP&&ori_method=ADBORI"])
复制代码


5.天天模拟器



① 本次测试所用产品版本:


  • 天天模拟器:3.2.8(最新)
  • AirtestIDE:1.2.3(最新)


② 天天模拟器的端口号是6555,在IDE的设备连接窗口上连接天天模拟器的步骤如图:



③ 在IDE上连接天天模拟器,需要在点击connect之前勾选上备选的连接参数 use javacap 否则模拟器会出现黑屏:



④ 在 auto_setup 接口中连接天天模拟器


auto_setup(__file__,devices=["Android://127.0.0.1:5037/127.0.0.1:6555?cap_method=JAVACAP"])  
复制代码


小结



① 跑同一脚本5次时的各项表现(该脚本运运行时长约5min):


序号 模拟器 CPU使用率 内存使用率 平均运行时长 备注
1 雷电 75%-85% 44% 263.676s 0次运行失败
2 mumu 75%-85% 45% 242.742s 0次运行失败
3 夜神 65%-75% 43% 230.199s 1次卡死
4 逍遥 80%-85% 47% 214.351s 0次运行失败
5 天天 65%-75% 46% 250.368s 0次运行失败


注:模拟器性能配置均设为最高级,设备型号基本一致。


另外在不同的硬件设备上测试结果可能存在误差。


② 模拟器勾选备选参数及常见问题


序号 模拟器 端口号 备选连接参数 常见问题
1 雷电 5554 刷出多台端口号为5554的设备
2 mumu 7555 暂未发现
3 夜神 62001 use javacap 不勾选javacap会黑屏、卡死
4 逍遥 21503 use javacap、use ADB orientation 不勾选会报AdbShellError
5 天天 6555 use javacap 不勾选javacap会黑屏


③ 结论


1)逍遥模拟器运行脚本的速度相对其它模拟器快一些;

2)夜神模拟器相对其他模拟器卡死的概率高一些;

3)不用勾选任何连接参数就可以连上的模拟器有雷电和Mumu;

4)模拟器出现连接问题优先检查是否装上Yosemite,再通过勾选连接参数来尝试解决

5)本次测试基于特定版本的IDE和模拟器,童鞋们可以优先使用测试通过的版本避免出现更多连接错误。

相关文章
|
3天前
|
机器学习/深度学习 前端开发 测试技术
探索软件测试中的自动化测试框架选择与优化策略####
本文深入探讨了在当前软件开发生命周期中,自动化测试框架的选择对于提升测试效率、保障产品质量的重要性。通过分析市场上主流的自动化测试工具,如Selenium、Appium、Jest等,结合具体项目需求,提出了一套系统化的选型与优化策略。文章首先概述了自动化测试的基本原理及其在现代软件开发中的角色变迁,随后详细对比了各主流框架的功能特点、适用场景及优缺点,最后基于实际案例,阐述了如何根据项目特性量身定制自动化测试解决方案,并给出了持续集成/持续部署(CI/CD)环境下的最佳实践建议。 --- ####
|
4天前
|
Java 测试技术 持续交付
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
本文重点讲解如何搭建App自动化测试框架的思路,而非完整源码。主要内容包括实现目的、框架设计、环境依赖和框架的主要组成部分。适用于初学者,旨在帮助其快速掌握App自动化测试的基本技能。文中详细介绍了从需求分析到技术栈选择,再到具体模块的封装与实现,包括登录、截图、日志、测试报告和邮件服务等。同时提供了运行效果的展示,便于理解和实践。
23 4
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
|
1天前
|
测试技术 持续交付 Docker
探索软件测试中的自动化策略与挑战
在当今快节奏的软件开发周期中,自动化测试已成为提高产品质量和缩短上市时间的关键。然而,实施有效的自动化测试策略并非易事,它面临着技术选型、脚本维护、环境配置等一系列挑战。本文深入探讨了自动化测试的重要性,分析了常见的自动化测试工具和框架,并讨论了在构建和维护自动化测试体系过程中遇到的主要难题及其解决方案。通过案例分析,本文旨在为软件测试工程师提供实用的指导和建议,以优化他们的自动化测试实践。
|
2天前
|
jenkins 测试技术 持续交付
探索软件测试中的自动化与持续集成
本文深入探讨了软件测试领域中自动化测试和持续集成的融合应用,分析了这种结合如何提升软件开发的效率和质量。通过具体案例分析,展示了自动化测试和持续集成在软件开发生命周期中的关键作用及其实施策略。
|
3天前
|
测试技术 API Android开发
探索软件测试中的自动化框架选择与实践####
本文深入探讨了软件测试领域内,面对众多自动化测试框架时,如何依据项目特性和团队需求做出明智选择,并分享了实践中的有效策略与技巧。不同于传统摘要的概述方式,本文将直接以一段实践指南的形式,简述在选择自动化测试框架时应考虑的核心要素及推荐路径,旨在为读者提供即时可用的参考。 ####
|
7天前
|
测试技术 开发者 UED
探索软件测试的深度:从单元测试到自动化测试
【10月更文挑战第30天】在软件开发的世界中,测试是确保产品质量和用户满意度的关键步骤。本文将深入探讨软件测试的不同层次,从基本的单元测试到复杂的自动化测试,揭示它们如何共同构建一个坚实的质量保证体系。我们将通过实际代码示例,展示如何在开发过程中实施有效的测试策略,以确保软件的稳定性和可靠性。无论你是新手还是经验丰富的开发者,这篇文章都将为你提供宝贵的见解和实用技巧。
|
5天前
|
jenkins 测试技术 持续交付
软件测试中的自动化测试策略
在当今快速发展的软件行业中,自动化测试已成为确保软件质量和效率的关键工具。本文将探讨自动化测试的重要性、实施策略以及面临的挑战,旨在为软件开发团队提供实用的指导和建议。
|
7天前
|
测试技术 Android开发 UED
探索软件测试中的自动化框架选择
【10月更文挑战第29天】 在软件开发的复杂过程中,测试环节扮演着至关重要的角色。本文将深入探讨自动化测试框架的选择,分析不同框架的特点和适用场景,旨在为软件开发团队提供决策支持。通过对比主流自动化测试工具的优势与局限,我们将揭示如何根据项目需求和团队技能来选择最合适的自动化测试解决方案。此外,文章还将讨论自动化测试实施过程中的关键考虑因素,包括成本效益分析、维护难度和扩展性等,确保读者能够全面理解自动化测试框架选择的重要性。
24 1
|
12天前
|
监控 jenkins 测试技术
探索软件测试的新篇章:自动化与持续集成
【10月更文挑战第25天】在数字化时代的浪潮中,软件已成为驱动世界的核心力量。然而,随着软件复杂性的增加,传统的测试方法已无法满足快速迭代和高质量交付的需求。本文将探讨如何通过自动化测试和持续集成(CI)来提升软件开发的效率和质量,同时确保产品的稳定性和可靠性。我们将从自动化测试的基础出发,逐步深入到持续集成的实践,并展示如何通过实际案例实现这一转变。
|
10天前
|
前端开发 数据管理 测试技术
前端自动化测试:Jest与Cypress的实战应用与最佳实践
【10月更文挑战第27天】本文介绍了前端自动化测试中Jest和Cypress的实战应用与最佳实践。Jest适合React应用的单元测试和快照测试,Cypress则擅长端到端测试,模拟用户交互。通过结合使用这两种工具,可以有效提升代码质量和开发效率。最佳实践包括单元测试与集成测试结合、快照测试、并行执行、代码覆盖率分析、测试环境管理和测试数据管理。
23 2
下一篇
无影云桌面