iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >Android APP测试流程和常见问题是什么
  • 656
分享到

Android APP测试流程和常见问题是什么

2023-06-04 22:06:18 656人浏览 独家记忆
摘要

本篇内容介绍了“Android APP测试流程和常见问题是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!自动化测试自动化测试主要包括几个

本篇内容介绍了“Android APP测试流程和常见问题是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

自动化测试

自动化测试主要包括几个部分,UI功能的自动化测试、接口的自动化测试、其他专项的自动化测试。

1UI功能自动化测试

UI功能的自动化测试,也就是大家常说的自动化测试,主要是基于UI界面进行的自动化测试,通过脚本实现UI功能的点击,替代人工进行自动化测试。

这个测试的优势在于对高度重复的界面特性功能测试的测试人力进行有效的释放,利用脚本的执行,实现功能的快速高效回归。

但这种测试的不足之处也是显而易见的,主要包括维护成本高,易发生误判,兼容性不足等。因为是基于界面操作,界面的稳定程度便成了维护脚本最大的制约因素。频繁变化的界面交互,就意味着需要不断的更新测试用例脚本,占用大量的测试资源。

=

易发生误判主要是因为基于UI控件进行的识别,容易因为网络条件、设备配置、测试环境等原因导致加载缓慢或异常,从而导致测试用例执行过程中部分判断不准确,进而影响测试的准确性。兼容性不足主要是指测试脚本在不同设备、不同操作系统、不同硬件环境等情况下执行会带来不可预料的情况,导致测试用例执行结果的不准确。

基于以上优劣对比,我们在UI功能自动化测试中,主要实现的是APP核心路径的测试,对需要大量重复执行、重复验证、UI界面变化频率较低的功能模块进行UI功能自动化测试的实现。

需要大量重复执行、重复验证,则意味着实现自动化后的利用率高,UI界面变化频率较低,则意味着后续维护成本不高,这三类用例对于我们来说是投入产出比较高的部分,我们会最高优先级去做UI功能自动化测试的实践。

在做UI功能自动化测试的过程中,可以对相关控件、测试用例、测试集进行有效的梳理和管理,对可重复的工作进行及时归并,减少资源的浪费。当UI功能出现变更的时候,也可以以较小的成本进行维护,降低维护成本。

2接口自动化测试

在UI功能自动化测试的部分,我们提到了做自动化的制约因素:稳定性。正因为UI界面的不稳定,所以做UI功能自动化的成本是相对较高的,那么我们很自然就想到相对于UI功能更稳定的、更有利于做自动化的部分,那就是接口。

一个APP,界面可能会因为产品经理在不同阶段的不同诉求而变来变去,但其背后的接口通常是较为稳定的,这就为我们开展自动化测试做好了有利的保证。

我们需要准备APP所调用的接口,依据功能模块对其进行梳理归纳,排出开展自动化的优先级,了解每个接口代表的含义,不同参数的取值范围,对不同的输入产生各种输出的情况进行盘点,对错误或异常的返回进行汇总,如此以确保接口测试的有效性和完整性。

在接口自动化测试启动后,需要与开发工程师共同维护一个接口文档,后续无论是接口有增加或者减少,或者现有接口有相关变更,测试工程师都可以第一时间知晓,并对接口自动化测试的用例做相应的调整。

3其他专项的自动化测试

除了以上两大类自动化之外,我们还可以利用自动化做一些专项的测试,以辅助提高我们的测试质量和测试效率。这里,需要我们在日常的测试工作中勤于思考,思考哪些工作可以通过自动化来实现,哪些测试用自动化可以提高测试效率,哪些功能点可以通过自动化实现长期的测试监控等。

举个例子,我所负责的项目中,有一个功能,人工测试时我们只能对其进行有限次的点击验证,且点击频率较低,但通过脚本我们实现测试过程中更快速、更长时间的点击操作,那我们就可以利用自动化来进行实现。不但可以在自己的测试设备上执行,还可以在不同的设备上进行执行,这个自动化测试就是有效的,就是能够提高测试效率和测试质量的。虽然这个测试因为各种原因不会加到UI功能自动化的用例集中,但在当前版本中,自动化确实给我们带来了很有益的帮助,这就是我们所需要倡导的。

总之,我们可以运用各种自动化测试工具和测试手段,来辅助我们进行测试,这就是值得肯定的。

性能测试

在我所负责项目的测试体系中,性能测试主要包括三个维度的性能测试,即时间维度的性能测试、资源维度的性能测试以及流畅度测试。

1时间维度

时间维度的性能测试,主要是指功能特性在点击操作后的时间响应情况。我们比较熟悉的有首屏加载时间,点击后响应跳转打开时间等。

进行时间维度的性能测试有很多种方法,可以利用录屏截图计算时间,也可以利用在程序中打时间戳计算时间,还可以利用第三方脚本实现时间的计算,亦可以通过图像识别技术来进行时间的计算等。

在测试过程中,我们要结合项目本身进行工具的预研,是一次性的测试,还是后续需要持续的测试,是否需要转化成工具供后续长期使用,是在单台设备上用,还是需要考虑兼容性在不同的设备环境上用,工具是否开源或提供数据接口以便后续与团队的测试平台相结合,如此等等。

2资源维度

资源维度的性能测试,主要是指APP使用过程中各种系统资源的消耗情况,包括CPU、内存、电量、流量等。

测试工具的选择,根据测试终端的不同去自行选择,测试需要监控的维度,也根据项目自行确定,这里不对具体的测试方法做展开。

这里需要说的是,资源维度的性能测试,可以做两部分工作,一部分是测试过程中的性能测试,另一部分是线上性能数据的收集。

测试过程中的性能测试, 可根据业务测试需要进行评估,需要测试哪些场景,是当前版本一次的测试,还是后续每个版本都要进行对比的测试,是只需要测试本机的性能数据,还是需要在多台设备上都进行性能数据的收集,只是需要本APP测试,还是需要和竞品做对比测试等。

在此基础上,评估是否需要通过自动化脚本实现测试用例,以便后续的重复使用。如果后续需要进行纵向的和历史版本的对比测试,需要确保测试环境、测试设备尽可能的一致,从而使测试结果更加真实可靠。

另外补充一个小点,测试数据的处理计算,可以通过自动化脚本实现,将人力计算的资源成本节约出来。如果有必要,还可以做一个简单的平台,将测试数据都存储到平台上,以便后续分析查阅用。

线上性能数据的收集,则需要开发工程师在功能实现过程中对相关数据进行上报,功能发布后,对线上数据进行捞取、处理和计算,发现其中可能存在的问题。在开发工程师日志拿到出现错误用户的日志配合下,实现相关性能问题的定位、分析和解决。

3流畅度测试

流畅度测试作为用户体验最直观的感受,也是很多做性能测试的必选。关于做流畅度测试的方法这里就不必赘述,但有几点上需要注意的:

一是我们如何规划流畅度测试的用例,二是流畅度测试后我们如何利用测试结果数据去做分析和改进,三是APP发布后我们需要如何从线上数据去做流畅度的监控。

关于流畅度测试用例的设计,需要结合APP的核心功能、用户常用路径去设计,这部分最好可以有线上数据做支撑,而不是拍脑袋去想。数据支撑下获取到的大多数用户在APP中的跳转路径,才是我们需要去重点关注的。另外,线上数据中监控到的易出现卡顿的路径,也需要我们中测试过程中去留意。

对流畅度测试后的数据的分析与使用,以及线上流畅度数据的监控,这就需要测试工程师与开发工程师去共同规划、共同排查。本文就不做展开论述。

稳定性测试

关于这部分,可以从APP的发布前的测试阶段和发布后的线上运营阶段两个阶段入手,分别开展工作。

测试阶段,我们可以围绕Monkey测试、代码走查两方面开展稳定性测试,有条件的团队亦可以在此阶段使用静态代码扫描工具。Monkey测试过程中,要注重测试执行的设备、环境、频率,对过程中发现的问题也要做一定的分析,对容易出现问题的部分做重点关照。代码走查,可以结合功能测试过程中容易发生崩溃的模块进行重点的走查,推动开发进行结对编程,检查这些模块可能存在的问题。至于静态代码扫描,就需要开发同学针对扫描出的问题进行解决,养成良好的代码习惯,以避免相关问题的漏出。

运营阶段,我们可以围绕外网崩溃数据的上报分析来开展稳定性测试。这部分更多的依赖开发工程师来解决,不过在此过程中,测试工程师可以分析上报的数据,定位崩溃的一些基本数据,比如常见的系统、机型等,以此来改进和优化日常的稳定性测试。

“Android APP测试流程和常见问题是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: Android APP测试流程和常见问题是什么

本文链接: https://www.lsjlt.com/news/240251.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Android APP测试流程和常见问题是什么
    本篇内容介绍了“Android APP测试流程和常见问题是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!自动化测试自动化测试主要包括几个...
    99+
    2023-06-04
  • android测试流程是什么
    Android测试流程包括以下步骤: 需求分析:了解应用的功能和需求,明确测试的目标和范围。 测试计划:制定测试计划,确定测...
    99+
    2023-10-21
    android
  • APP测试中IOS和Android的区别是什么
    这篇文章主要介绍“APP测试中IOS和Android的区别是什么”,在日常操作中,相信很多人在APP测试中IOS和Android的区别是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”APP测试中IOS和A...
    99+
    2023-06-05
  • C#中常见的测试框架和单元测试问题
    C#中常见的测试框架和单元测试问题,需要具体代码示例引言:在软件开发过程中,测试是一个至关重要的环节。通过测试,我们可以确保代码的质量和稳定性,提高应用程序的可靠性和可维护性。C#是一种广泛应用于软件开发的编程语言,因此需要了解C#中常见的...
    99+
    2023-10-22
    测试框架: NUnit 测试框架: MSTest 单元测试问题:断言错误
  • Spring和Unix:Java面试中最常见的问题是什么?
    在面试Java开发岗位时,经常会被问到与Spring和Unix相关的问题。这两个主题在Java开发中非常重要,因此,对于面试者来说,掌握这些知识点是至关重要的。本文将介绍Java面试中最常见的Spring和Unix相关问题,并提供演示代码...
    99+
    2023-09-16
    面试 spring unix
  • java测试流程是什么
    Java测试流程一般包括以下步骤:1. 确定测试目标:确定要测试的功能或模块。2. 编写测试用例:根据测试目标编写测试用例,包括输入...
    99+
    2023-08-31
    java
  • Java 面试中常见的同步问题是什么?
    在 Java 开发中,多线程是一个常见的话题。多线程的出现,使得程序能够更加高效地运行。但是多线程也会引发一些问题,比如线程安全和同步问题。在 Java 面试中,同步问题也是一个经常被问到的话题。本文将介绍 Java 面试中常见的同步问题...
    99+
    2023-09-22
    面试 同步 spring
  • Java开发技术面试常见问题:numpy是什么?
    在Java开发领域中,numpy是一个非常重要的工具。它是Python科学计算的核心库之一,提供了大量的高效、快速的数学函数和工具,用于解决科学计算、数据分析、数据挖掘、机器学习等领域的问题。本篇文章将介绍numpy的基本概念、用法及一些...
    99+
    2023-10-08
    开发技术 面试 numpy
  • Java面试中常见的二维码问题是什么?
    在Java面试过程中,二维码作为一种常用的数据编码方式,也是经常被提及的一个话题。在本文中,我们将介绍一些Java面试中常见的二维码问题,以及如何使用Java来解决这些问题。 什么是二维码? 二维码是一种可以存储大量信息的图形编码,它...
    99+
    2023-07-05
    二维码 面试 文件
  • springboot渗透测试流程是什么
    Spring Boot渗透测试流程包括以下步骤:1. 信息收集:收集有关目标应用程序的信息,包括应用程序架构、技术堆栈、网络拓扑等。...
    99+
    2023-09-14
    springboot
  • python五种常见的测试框架是什么
    本文小编为大家详细介绍“python五种常见的测试框架是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“python五种常见的测试框架是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一. unittest...
    99+
    2023-06-27
  • Golang三个常见的编程问题是什么
    这篇文章主要讲解了“Golang三个常见的编程问题是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Golang三个常见的编程问题是什么”吧!问题1:我需要维护一组"物品&quo...
    99+
    2023-06-16
  • HTML5常见的六大面试题是什么
    小编给大家分享一下HTML5常见的六大面试题是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!首先,小编先向各位简单的介绍下面...
    99+
    2024-04-02
  • Java常见的10道面试题是什么
    这篇文章主要讲解了“Java常见的10道面试题是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java常见的10道面试题是什么”吧!什么是并发修改异常什么是并发修改异常:当我们在遍历实现...
    99+
    2023-06-02
  • WebAPI测试方法及流程是什么
    Web API的测试方法和流程可以按照以下步骤进行:1. 确定测试目标:明确要测试的Web API功能,包括请求和响应的数据格式、参...
    99+
    2023-09-08
    WebAPI
  • 微信小程序开发常见问题是什么
    这篇文章主要介绍微信小程序开发常见问题是什么,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!  Q:navigateTo 没有返回按钮。  A:Android 设计如此,需要点击物理返回键返回。  Q:关于微信小程序地...
    99+
    2023-06-26
  • SAP SD中SD常见流程是什么
    这篇文章主要为大家分析了SAP SD中SD常见流程是什么的相关知识点,内容详细易懂,操作细节合理,具有一定参考价值。如果感兴趣的话,不妨跟着跟随小编一起来看看,下面跟着小编一起深入学习“SAP SD中SD常见流程是什么”的知识吧。SD常见流...
    99+
    2023-06-05
  • mysql事务中常见问题是什么
    这篇文章给大家分享的是有关mysql事务中常见问题是什么的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1、更新丢失原因:当多个事务选择同一行操作,并且都是基于最初选定的值,由于每个事务都不知道其他事务的存在,就会...
    99+
    2023-06-15
  • HashMap和HashTable的区别以及常见面试题是什么
    本篇文章为大家展示了HashMap和HashTable的区别以及常见面试题是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。HashMapHashMap也是我们使用非常多的Collection,它...
    99+
    2023-06-02
  • C++ 多线程编程带来的常见问题是什么?
    多线程编程中常见问题包括:数据竞争(共享数据同时被访问和修改)、死锁(线程相互等待)、代码抽象(管理同步细节的复杂性)、调试难度(非确定性导致问题难以查明)。解决这些问题的方法包括使用同...
    99+
    2024-05-13
    c++ 多线程 同步机制
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作