app常见的 闪退及闪退的原因

article/2025/9/14 13:25:17

背景:

最近一直在休假,把自己在工作中梳理的点点滴滴汇总整理,这样既能及时地让自己巩固各个要点,也希望通过自己整理的东西帮助其他的同行少走弯路,避开我之前踩过的大大小小,深深浅浅的坑。

此问题经常在面试中会被问到,那么作为经常测试app,是不是应该花点心思搞清楚啊。。。。。

以下基于我多年的测试经验,以及遇到的情况做个汇总,如果有写得不恰当的地儿,欢迎各位博客好友们帮忙指正。

一、闪退的介绍

分别是从以下三个方面来说明

  1. 闪退的定义
  2. 表现症状
  3. 原因分类

二、闪退的原因

 

三、android常见的异常

android常见的异常有 十大类,其中,空指针,非法参数,数组角标越界是最常见的。

 

四、其他

主要是从设计【测试用例思路】角度覆盖更多的场景

总结

app测试过程中,出现闪退时,先保存现场,导出对应的日志信息,然后找复现路径。

不管是必现还是偶现的,都应该提交bug记录:

(1)若是必现闪退时,则描述清楚,如,

使用XX设备(android11)进入XX详情页面时,应用闪退(操作步骤、日志信息参考详情)

(2)若是非必现问题,则需要描述清晰,在哪个模块,哪个页面进行了哪些操作出现闪退(操作步骤、日志信息参考详情)

备注:

导出崩溃日志后,建议自己优先看下,属于哪种类型的崩溃,然后根据当时所处的境况把log信息提交bug还是发给开发再进行测试验证,但是不管怎么样,发现的问题一定要及时提交JIRA记录,开发解决后,询问下产生此崩溃的根源,是哪个方法用错啦,还是因其他原因导致的,建议把根源弄清楚后,再确认下解决方案是什么,开发用什么方式解决此崩溃,try-catch一下,还是其他的,不管哪种方式,都要再次确认下,免得引发相关的问题。我之前在ios上提了一个闪退问题,开发修复后,引发了7个闪退,可把我吓懵了。然后打回去让开发重新检查代码修复。解决之后才弄清楚因为第一个崩溃是XX核心库的XX问题,好多地方都用到这个,而开发了某一处,其余地方未做处理才引发新的问题。这类问题就警示开发修复闪退问题后,至少要做自测检查。

关于ios的闪退待补充~~~~~

 

 


http://chatgpt.dhexx.cn/article/ybl0bh7J.shtml

相关文章

记一次使用android studio分析app闪退原因的过程

闪退演示 首页和问题反馈重复切换两次就闪退 (因为是公司内部app,原有视频不做展示) app架构 app是原生android studio开发的,部分页面是h5开发的,通过WebView和addJavascriptInterface接口实现js与java的交互 页面…

app闪退分析

一、网络异常引起的 1.网络异常引起的,服务端响应不及时,可能导致闪退,检查网络配置情况 二、版本过低 1.应用版本过低,app的sdk和手机的系统不兼容,造成闪退 2.有些api在老版本中有,在新版本中没有&am…

线程池的组成及种类

文章目录 一、 线程池的组成结构二、常见的线程池种类三、线程池的工作流程四、线程池的好处五、小结 我们知道一个进程可以把任务分成多个部分交给线程执行,多线程技术减少了CPU闲置时间,增加了程序并发性。 假设创建线程的时间为t1,执行任务的时间为t2…

Java 中几种常用的线程池

概述: 在java内置API中操作线程所用到的类为Thread。创建线程一般有两种方式, 继承Thread方式实现Runnable方式,并以runnable作为target创建Thread 在Android中的耗时任务一般都需要另开线程来执行,常常需要用线程池来管理这些…

面试官:线程池有哪几种创建方式,能详细的说下么?

根据摩尔定律所说:集成电路上可容纳的晶体管数量每 18 个月翻一番,因此 CPU 上的晶体管数量会越来越多。 但随着时间的推移,集成电路上可容纳的晶体管数量已趋向饱和,摩尔定律也渐渐失效,因此多核 CPU 逐渐变为主流&a…

JAVA常用的几种线程池

1. 为什么使用线程池 诸如 Web 服务器、数据库服务器、文件服务器或邮件服务器之类的许多服务器应用程序都面向处理来自某些远程来源的大量短小的任务。请求以某种方式到达服务器,这种方式可能是通过网络协议(例如 HTTP、FTP 或 POP)、通过 …

java线程池详解及五种线程池方法详解

基础知识 Executors创建线程池 Java中创建线程池很简单,只需要调用Executors中相应的便捷方法即可,比如Executors.newFixedThreadPool(int nThreads),但是便捷不仅隐藏了复杂性,也为我们埋下了潜在的隐患(OOM&#x…

Java常见的线程池有哪些?

1、什么是线程池 java.util.concurrent.Executors提供了一个 java.util.concurrent.Executor接口的实现用于创建线程池 多线程技术主要解决处理器单元内多个线程执行的问题,它可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力。 假设一个服务…

线程池的使用(7种创建方法)

目录 1. 固定数量的线程池 a. 线程池返回结果 b. ⾃定义线程池名称或优先级 2. 带缓存的线程池 3. 执⾏定时任务 a. 延迟执⾏(⼀次) b. 固定频率执⾏ c. scheduleAtFixedRate VS scheduleWithFixedDelay 4. 定时任务单线程 5. 单线程线程池 6. 根据当前CPU⽣成线程池 7. Threa…

线程池原理常用四大线程池及七大参数

目录 前言常用的四种线程池newCachedThreadPool——可缓存线程池newFixedThreadPool————指定线程数量newSingleThreadExecutor————单线程的ExecutornewScheduleThreadPool——定时线程池 线程池七大参数corePoolSize——核心线程最大数maximumPoolSize——线程池最大线…

创建线程池的七种方式

在 Java 语言中,并发编程往往都是通过床架线程池来实现的,而线程池的创建方式也有很多种,每种线程池的创建方式都对应了不同的使用场景。总结来说线程池的创建可以分为两大类: 通过 Executors 创建 通过 ThreadPoolExecutor 创建…

Java中常用的四种线程池

在Java中使用线程池,可以用ThreadPoolExecutor的构造函数直接创建出线程池实例,在Executors类中,为我们提供了常用线程池的创建方法。 ​ 接下来我们就来了解常用的四种: newFixedThreadPool 首先,看一下这种线程池的…

5种常用的线程池

目录 0 概述1 newCachedThreadPool(可缓存的线程池)2 newFixedThreadPool(固定大小的线程池)3 newScheduledThreadPool(可做任务调度的线程池)4 newSingleThreadPool(单个线程的线程池&#xff…

java中的线程池有哪些,分别有什么作用?

阅读完本篇文章会知道如下三点: 1.进程-线程简单介绍 2.java的线程池是什么,有哪些类型,作用分别是什么 3.使用线程池的优点 1.进程-线程的简单介绍 进程 什么是进程呢? 进程是计算机中的程序关于某数据集合的一次运行活动&…

线程池有几种创建方式?

总体来说线程池的创建可以分为以下两类: 通过 ThreadPoolExecutor 手动创建线程池通过 Executors 执行器自动创建线程池。 而以上两类创建线程池的方式,又有 7 种具体实现方法,这 7 种实现方法分别是: Executors.newFixedThre…

创建线程池有哪几种方式

通常开发者都是利用Executors提供的通用线程池创建方法,去创建不同配置的线程池,主要区别在于不同的 Executors目前提供了5种不同的线程池创建配置: 1、newCachedThreadPool(),它是用来处理大量短时间工作…

Java常见的5种线程池

在开发过程中我们常常需要使用到多线程来提高我们代码处理某些任务的效率,最基本的两种创建多线程的方式分别是继承Thread类和实现Runnable接口。但是创建线程和销毁线程的系统开销比较大,而且过多的线程会占用过多的内存等资源。在《阿里巴巴Java开发手…

4种常用线程池介绍

一. 线程池简介 1. 线程池的概念: 线程池就是首先创建一些线程,它们的集合称为线程池。使用线程池可以很好地提高性能,线程池在系统启动时即创建大量空闲的线程,程序将一个任务传给线程池,线程池就会启动一条线程来执…

面试突击:线程池有几种创建方式?推荐使用哪种?

在 Java 语言中,并发编程都是通过创建线程池来实现的,而线程池的创建方式也有很多种,每种线程池的创建方式都对应了不同的使用场景,总体来说线程池的创建可以分为以下两类: 通过 ThreadPoolExecutor 手动创建线程池。…

线程池的分类(5种)

Java面试高频提问点 问题一:线程池的创建方式 文章目录 Java面试高频提问点前言一、线程池的分类1.newCachedThreadPool2.newFixedThreadPool3.newSingleThreadExecutor4.newScheduleThreadPool5.newSingleThreadScheduledExecutor 总结 前言 近期因为上海疫情原因…