30+ 个最常见的移动测试面试问题及答案

2025年3月17日 | 阅读11分钟

1) 有哪些不同类型的移动操作系统?

以下是不同类型的移动操作系统

  • Android OS: 由 Google Inc. 开发。
  • iOS: 由 Apple Inc. 开发。
  • Series 40 [S40] OS: 由 Nokia Inc. 开发。
  • BlackBerry OS: 由 BlackBerry Limited 开发。

2) 什么是移动应用测试?

移动应用测试是指对为手持移动设备开发的应用程序进行测试,以确保其功能、可用性、一致性和可靠性。移动测试人员可以通过手动或自动化两种方式进行移动应用测试。


3) Android 操作系统的不同版本有哪些?

以下是迄今为止所有 Android 操作系统的版本列表

  • Android 1.0
  • Android 1.1
  • Android 1.5 Cupcake
  • Android 1.6 Donut
  • Android power 2.0
  • Android 2.2 Froyo
  • Android 2.3 Gingerbread
  • Android 3.0 Honeycomb
  • Android 4.0 Ice Cream Sandwich
  • Android 4.1 Jelly Bean
  • Android 4.4 KitKat
  • Android 5.0 Lollipop
  • Android 6.0 Marshmallow
  • Android Nougat 7.0
  • Android 8.0 Oreo
  • Android 9 Pie
  • Android 10
  • Android 11

4) Android 移动操作系统的最新版本是什么?

Android 移动操作系统的最新版本是 Android 11。这是 Android 的第十一 major 版本和第 18 个版本。由 Google 领导的 Open Handset Alliance 为移动设备开发了此操作系统,其最新版本 Android 11 于 2020 年 9 月 8 日发布。它是 Android 智能手机中使用的最新 Android 版本。


5) iOS 和 iPadOS 的最新版本是什么?

iOS 和 iPadOS 的最新版本分别是 iOS 14 和 iPadOS 14。这些最新版本已于 2020 年 6 月 22 日在年度 WWDC 2020 大会上发布,并于 2020 年 9 月 16 日发布。此最新版本可以扩展 iOS 13 的功能,因此所有支持 iOS 13 的设备都可以支持 iOS 14。


6) 有哪些不同类型的移动设备?

移动设备通常是手持计算机。主要有两种类型的移动设备,之后根据其特性(如物理尺寸、硬件和软件功能)有许多子类型。

主要的两种移动设备是

  • 片剂
  • 智能手机

7) 平板电脑和智能手机的主要功能差异是什么?

以下是平板电脑和智能手机的主要功能差异

平板电脑:平板电脑是一种便携式计算设备。与传统计算机不同,平板电脑没有键盘或鼠标;但是,整个屏幕都是触摸感应的。它主要用作笔记本电脑或阅读设备的较小替代品,并且尺寸通常比智能手机大。

智能手机:智能手机是一款功能强大的手机,与普通手机相比,它提供了许多额外功能,如出色的相机、手表、计算器、日历、在线游戏以及许多其他软件应用程序优势。它主要设计用于运行各种应用程序,同时提供基本的电话服务。它的尺寸通常比平板电脑小。


8) Web 测试和 WAP 测试有什么区别?

Web 测试和 WAP 测试的区别

  • Web 测试:Web 测试是一种主要与测试 Web 应用程序(如网站、门户和博客)相关的测试形式。
  • WAP 测试:WAP 测试主要用于网络应用程序中使用的 WAP(无线应用协议)。

9) 移动测试中的模拟器(Simulator)和模拟器(Emulator)有什么区别?

移动测试中模拟器和模拟器的区别

模拟器(Simulator):模拟器是用于 CDMA/CMA 手机的电子网络仿真设备或基站设备。它用于连接家庭网络而不进行漫游服务,并方便用户拨打语音电话、数据电话和发送短信。

模拟器(Emulator):模拟器是用于在没有实际手机的情况下测试移动应用程序的软件。


10) 有哪些不同的自动化移动测试工具?

在移动测试中,主要有两种类型的自动化工具可用于测试移动应用程序

  • 基于对象的移动测试工具:Jama solution, Ranorex 等。
  • 基于图像的移动测试工具:RoutinBot, Egg Plant, Sikuli 等。

11) 为什么移动测试对当今的企业很重要?

测试是每个软件开发过程中最重要的部分之一,因此移动应用程序也不例外。随着手机使用量的日益增长,这导致了操作系统的巨大碎片化、屏幕尺寸的增加以及其他更多问题。QA 团队必须付出巨大的努力,以确保用户在各种移动设备上获得无缝体验,而没有任何功能性错误和问题。产品团队会分配一个测试人员团队通过严格的测试来测试移动应用程序。这有助于提高应用的评分和客户满意度,并带来宝贵的推荐,从而获得更多下载。


12) 有哪些不同类型的移动应用测试?

以下是不同类型的移动应用测试

  • 可用性测试
  • 兼容性测试
  • 界面测试
  • 服务测试
  • 低级资源测试
  • 性能测试
  • 操作测试
  • 安装测试
  • 安全测试

13) 有哪些不同类型的移动应用程序?/ Web 应用、原生应用和混合应用有什么区别?

主要有三种类型的移动应用程序

  • Web 应用程序
  • 原生应用程序
  • 混合应用程序

Web 应用程序

Web 应用程序不是真正的应用程序。它是一个网站,通过移动网络或 WIFI 在移动 Web 浏览器(如 Chrome、Firefox、Opera、Safari)中运行。移动网站拥有各种主要类型的应用程序的广泛受众。例如,一些 Web 应用程序是 m.facebook.com、m.gmail.com 等。

优点

  • 无需下载即可轻松访问。
  • 易于开发。
  • 易于更新

缺点

  • 您无法访问网站上的文件系统和本地资源。
  • 许多现有网站不支持离线功能。
  • 您只能在 Web 浏览器中打开该网站。
  • 它不像原生应用和混合应用那样容易重新分发,原生应用和混合应用会出现在 App Store 和 Google Play 上。

原生应用程序

原生应用程序是使用特定编程语言构建的软件应用程序,专门为特定的设备平台(即 iOS 或 Android)开发。它可以轻松安装到您的设备上,通过应用程序商店(如 Android 的 Google Play Store 和 iOS 的 App Store)安装。例如,WhatsApp 或 Facebook。

优点

  • 可以通过您在移动设备上安装的原始应用程序进行访问。
  • 它提供了设备功能(如摄像头、GPS、加速计、指南针、联系人列表等)的所有优势。
  • 您可以使用设备的通知系统并离线工作。
  • 它的构建方式是为了提供最佳用户体验。
  • 由于它出现在 App Store 中,因此分发很容易。

缺点

  • 这类应用程序的开发成本非常高。
  • 维护成本也很高。

混合应用程序

混合应用程序是 Web 应用程序和原生应用程序的组合。尽管这种类型的应用程序可以像原生应用程序一样安装在设备上,但它是一个使用 HTML、CSS 或 JavaScript 构建并在 Webview 中运行的 Web 应用程序。这些应用程序提供了一种将现有网站的内容以应用程序格式公开的方式。可以说,这些应用程序是 Web 应用程序和原生应用程序的混合体。例如,Instagram、Wikipedia 等。

优点

  • 混合应用程序的开发成本比原生应用程序便宜。
  • 它们主要为跨平台使用而构建。
  • 混合应用程序的维护很简单,因为没有太多版本需要维护。
  • 这些应用程序提供了一些设备本身提供的功能。
  • 这些可以在 App Store 中找到,从而更容易交付。
  • 它们已经在应用程序中嵌入了浏览器。

缺点

  • 由于使用的技术不如原生应用程序过时,混合应用程序比原生应用程序稍慢。
  • 在这些应用程序中,图形不如原生应用程序那样与操作系统兼容。

14) 手动测试和自动化测试有什么用途?

手动测试:当应用程序引入了一些新功能且仅需要少量测试时,执行手动测试。

自动化测试:在关键场景下对应用程序执行自动化测试,此时我们需要重复回归测试。


15) 移动设备测试和移动应用程序测试的主要区别是什么?

移动设备测试和移动应用程序测试的区别

移动设备测试:在移动设备测试中,测试人员主要通过验证设备的硬件和软件功能来检查设备的质量。此过程用于测试设备的特定功能,如屏幕、内存、摄像头、应用程序等。此测试还包括工厂测试和认证测试。

移动应用程序测试:在移动应用程序测试中,测试人员主要专注于在不同移动设备上测试移动应用程序,以确保其一致性和功能性。此过程用于确保产品质量。在此过程之后,您可以衡量目标应用程序的质量,无论其硬件、软件、网络连接等方面是否适合该设备。


16) 移动设备测试通常包含什么?

移动设备测试通常包括移动设备的硬件和软件测试。以下是通常在移动设备上进行的测试类型

  • 单元测试
  • 工厂测试
  • 移动应用测试
  • 硬件测试
  • 接收信号测试
  • 电池(充电)测试
  • 网络测试
  • 协议测试
  • 手机游戏测试
  • 移动软件兼容性测试
  • 在将移动设备投放市场之前进行认证测试。

17) 移动测试人员在移动应用程序测试中最常面临的挑战是什么?

以下是移动测试人员在移动应用程序测试中最常面临的一些挑战

  • 很难为 QA 团队找到最佳的移动测试工具。
  • 不同的应用程序类型,即原生、混合和 Web 应用程序,需要不同的测试方法。
  • 在各种操作系统上执行测试用例。
  • 在各种手机上测试应用程序的不同功能可能会很辛苦。
  • 在不同的移动网络上测试应用程序。
  • 屏幕尺寸碎片化。

18) 设备测试和应用程序测试有什么区别?

以下是设备测试和应用程序测试之间的一些区别

  • 设备测试用于测试移动设备、其硬件及其功能。另一方面,应用程序测试包括测试在选定设备上运行的应用程序。
  • 在设备测试中,我们主要关注硬件。而在移动应用程序测试的情况下,则取决于。如果被测应用程序需要硬件集成,则会涉及硬件测试。
  • 移动设备测试和移动应用程序测试都可以进行自动化。

19) 您如何理解 Android 测试框架?

Android 测试框架包含以下三个部分

应用程序包:应用程序包是必须进行测试的目标应用程序。

Instrumentation TestRunner:这是一个在目标应用程序上运行测试用例的 Test Case runner。它包含用于构建测试的 SDK 工具,并提供用于编写控制 Android 设备程序的 API,例如 MonkeyRunner。

测试包:它包含两个类:测试用例类和 Mock 对象。测试用例类包含要在目标应用程序上执行的测试方法,而 Mock 对象包含用作测试用例样本输入的 Mock 数据。


20) Android 测试策略应包含哪些测试类型?

标准的 Android 测试策略应包含以下测试类型

  • 单元测试
  • 系统测试
  • 集成测试
  • 操作测试
  • 根据应用程序的功能,如果需要,还应执行其他类型的测试。

21) Android 测试有哪些最佳实践?

以下是一些 Android 测试的最佳实践列表

  • 测试人员必须在开发人员编写代码的同时告知他们准备测试用例。
  • 所有测试用例都应与源代码一起存储。
  • 测试人员应避免使用已 root 的设备和模拟器。
  • 测试人员应使用持续集成,并在代码更改时执行测试。

22) 移动测试中发现的常见 Bug 有哪些?

以下是移动测试中发现的一些常见 Bug

  • 严重:此 Bug 表示您在测试设备中的特定功能时,您的手机系统崩溃了。
  • 阻塞:此 Bug 使您无法执行任何操作,即使手机开机,除非您重新启动设备。
  • 主要:此 Bug 使您无法执行特定功能。
  • 次要:它通常包含 GUI Bug。

23) 我们应该遵循什么策略来测试新的移动应用程序?应该包含哪些类型的测试?

在规划全面的测试策略时,我们应该遵循特定指南来有效地执行新的移动应用程序。以下是一些要点

设备选择:设备选择对于测试新的移动应用程序至关重要,因此强烈建议在选择测试设备集之前了解市场需求和常用设备。

利用模拟器:模拟器主要用于开发初期阶段,因为它们可以快速检查应用程序。此系统可以在不更改软件本身的情况下,在一个环境运行软件到另一个环境。它也用于复制真实系统的功能和工作。

测试类型:对于测试新的移动应用程序,应使用多种测试来确保应用程序按预期工作。因此,我们应该选择最佳的测试策略和类型,如下所示

  • 功能测试
  • 系统集成测试
  • 性能测试
  • 应用程序的安装和卸载
  • HTML 控件测试
  • 跨浏览器和跨设备测试
  • 测试多种移动操作系统
  • 网关测试
  • 网络和电池测试

24) Robo-electric 测试框架是什么?

Robo-electric 测试框架用于在不使用模拟器的情况下轻松进行测试。在模拟器或设备上进行 Android 测试框架的测试很困难,我们必须运行和构建测试用例,这有时需要大量的开发工作。Robo-electric 框架允许我们在 JVM 上直接运行 Android 测试,而无需设备或模拟器。


25) 您如何理解安装测试和卸载测试?

安装测试确保用户能够顺利进行安装过程而不会遇到任何困难。另一方面,卸载测试确保卸载应仅扫描一次应用程序相关数据。


26) 在执行端到端移动测试时,您需要考虑哪些主要标准?

在端到端移动测试过程中,QA 团队必须从头到尾测试整个应用程序,以确保其流程按预期运行。在这些步骤中,我们必须考虑以下关键要求

  • 应用程序是否已成功安装在各种手机型号、小工具和操作系统上?
  • 应用程序在有或没有网络的情况下是否运行顺畅?
  • 应用程序支持哪些方向?它们如何工作?
  • 应用程序在不同类型的设备和网络场景下是否运行良好?
  • 应用程序在使用时是否响应良好?(例如,响应速度和时间应良好。)

27) Monkey 工具提供了哪些独特的功能?

Monkey 工具提供以下功能

  • 基本配置选项
  • 调试选项
  • 操作限制
  • 事件类型和频率

28) 如何测试移动设备上的 CPU 使用率?

Google Play 或 Apple App Store 上有几种可用于 CPU 使用率测试的工具,如 CPU Monitor、CPU Stats、Usemon、CPU-Z 等。这些都是高级工具,可以记录设备上运行的所有进程信息。


29) 用于移动测试的测试自动化工具应遵循哪些选择标准?

对于移动测试,测试自动化工具应遵循以下标准

  • 多平台支持:用于确保该工具支持您当前和未来的目标平台。
  • 脚本可用性:基于对象的工具用于提供高度的脚本可用性。
  • 越狱要求:使用已 root 设备的工具可能不支持最新的 OS 版本,并且可能与 MDM 策略不兼容。
  • 源代码更改:共享源代码可能并不总是可行的。
  • 新 OS 版本的前置时间:它指定了工具支持新 iOS/android/其他 OS 版本的时间。

30) 在执行应用程序测试时应考虑哪些主要网络?

在执行应用程序测试时,我们应该涵盖各种网络上的所有场景:4G、3G、2G 和 WIFI。虽然 2G 是一个较慢的网络,但最好在较慢的网络上进行测试以跟踪应用程序性能。