首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

推荐一款好用的APP性能测试工具——Monkey!

常用操作命令简介 如下截图所示: -p 包名:指定应用程序。...--pct-trackball {+百分比}:3 翻译轨迹,轨迹事件包括一系列的随机移动,以及偶尔跟随在移动后面的点击事件 例子:adb shell monkey -p com.htc.Weather...:翻译忽略崩溃,当应用程序崩溃或发生失控异常时,monkey将继续运行直到计数完成。...--ignore-timeouts:翻译忽略超时,当应用程序发生任何超时错误(如ANR,即Application Not Responding)时,monkey将继续运行直到计数完成。...:IllegalAccessError 内存不足错误:OutOfMemoryError 堆栈溢出错误:StackOverflowError 特殊场景说明: 应用程序 app 的压力/健壮性测试时:单个apk

6K21

使用WebRTC开发Android Messenger:第1部分

然后,我浏览了可用的对象类型,以查看是否存在明显可用于移动指令指针或改善错误功能的东西。结果,我什么都没找到。...我不确定现在要进行什么操作,所以我在Android上触发了数十次CVE-2020-6389,以查看是否存在超过16位宽的地址崩溃,希望它们能为我提供一些方法在除了覆盖无效的16位值的指针之外,此错误可能会影响代码的行为...StunMessage类的成员如下。...这可能可以适用于在崩溃的情况下立即重生的应用程序,但是对于停止重生的应用程序实用性却要差很多,除非存在一定的延迟,而这在Android上很常见。...但是,大多数传出数据包都是在堆栈上生成的,因此无法使用堆损坏BUG对其进行更改。 我还考虑过使用崩溃Oracle来破解ASLR,但我认为使用这些特定的错误不太可能成功。

68220
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    使用 Visual Studio App Center 持续监视应用使用情况和问题

    在页面的右上角单击 Add New,然后在下拉列表中选择 Add new app。 在如下图所示的表单中输入应用名称,然后选择 Windows、Wpf 点击 Add new app 创建应用。 ?...应用被创建后进入 Overview 页面,在这里可以找到 App Center 的入门指南,如下图所示: ?...在使用 App Center SDK,并且应用遇到导致应用崩溃的错误时,详细信息会在应用关闭之前写入本地存储。...每一个数据都可以看到详细的错误信息,Stack traces,报告时间,同一类数据的 Most affected devices 和 Most affected OS,以及每一个错误报告的更具体的信息,...处理 Crash 前面提到,崩溃时记录的数据将再重启应用时发送到 App Center。这时候我们可以对这些崩溃的信息做些操作。

    1.5K20

    Monkey基本参数介绍

    说到android移动端稳定性测试,大家通常会想到android系统自动Monkey小猴子,通过Monkey命令模拟用户触摸点击屏幕、滑动、系统按键等操作来对设备上的app进行压力测试,来测试应用的稳定性和健壮性...(滚动球事件由一个或多个随机的移动事件组成,有时会伴随着点击事件) 这个参数现在不常使用,早期的android手机出厂自带滚动球,估计有些小伙伴们见过,但现在手机几乎没有滚动球,至少我没有见过,但滚动球事件中包含曲线滑动事件...用法:adb shell “monkey -p com.Android.browser” 12、--ignore-crashes 作用:应用发生崩溃或异常时Monkey会停止运行。...用法:adb shell “monkey --ignore-crashes” 13、--ignore-timeouts 作用:应用程序发生任何超时错误(例如:ANR)时,Monkey将停止运行,设置此项...用法:adb shell “monkey -s 300” 最近测试的项目属于短视频类的,这样结合这些monkey参数和被测应用的特点(滑动和点击操作比较多)。

    1K30

    Monkey基本参数介绍

    说到android移动端稳定性测试,大家通常会想到android系统自动Monkey小猴子,通过Monkey命令模拟用户触摸点击屏幕、滑动、系统按键等操作来对设备上的app进行压力测试,来测试应用的稳定性和健壮性...(滚动球事件由一个或多个随机的移动事件组成,有时会伴随着点击事件) 这个参数现在不常使用,早期的android手机出厂自带滚动球,估计有些小伙伴们见过,但现在手机几乎没有滚动球,至少我没有见过,但滚动球事件中包含曲线滑动事件...用法:adb shell “monkey -p com.Android.browser” 12、--ignore-crashes 作用:应用发生崩溃或异常时Monkey会停止运行。...用法:adb shell “monkey --ignore-crashes” 13、--ignore-timeouts 作用:应用程序发生任何超时错误(例如:ANR)时,Monkey将停止运行,设置此项...用法:adb shell “monkey -s 300” 最近测试的项目属于短视频类的,这样结合这些monkey参数和被测应用的特点(滑动和点击操作比较多)。

    69520

    Android Service完全解析,关于服务你所需知道的一切(下)

    Start Service按钮或Bind Service按钮,程序就会阻塞住并无法进行任何其它操作,过一段时间后就会弹出ANR的提示框,如下图所示。...为什么点击Start Service按钮程序就不会崩溃,而点击Bind Service按钮就会崩溃呢?...现在重新运行程序,并点击一下Bind Service按钮,可以看到打印日志如下所示: ? 由此可见,我们确实已经成功实现跨进程通信了,在一个进程中访问到了另外一个进程中的方法。...); 这里在构建Intent的时候是使用MyService.class来指定要绑定哪一个Service的,但是在另一个应用程序中去绑定Service的时候并没有MyService这个类,这时就必须使用到隐式...那么如果我想传递一个自定义的类该怎么办呢?这就必须要让这个类去实现Parcelable接口,并且要给这个类也定义一个同名的AIDL文件。

    802100

    Android Service完全解析,关于服务你所需知道的一切(下)

    Start Service按钮或Bind Service按钮,程序就会阻塞住并无法进行任何其它操作,过一段时间后就会弹出ANR的提示框,如下图所示。...为什么点击Start Service按钮程序就不会崩溃,而点击Bind Service按钮就会崩溃呢?...现在重新运行程序,并点击一下Bind Service按钮,可以看到打印日志如下所示: ? 由此可见,我们确实已经成功实现跨进程通信了,在一个进程中访问到了另外一个进程中的方法。...); 这里在构建Intent的时候是使用MyService.class来指定要绑定哪一个Service的,但是在另一个应用程序中去绑定Service的时候并没有MyService这个类,这时就必须使用到隐式...那么如果我想传递一个自定义的类该怎么办呢?这就必须要让这个类去实现Parcelable接口,并且要给这个类也定义一个同名的AIDL文件。

    56840

    app自动化面试题

    一个应用程序可以包含许多活动,比如事件的点击,一般都会触发一个新的Activity。...只有需要在多个应用程序间共享数据时才需要内容提供者。例如:通讯录数据被多个应用程序使用,且必须存储在一个内容提供者中。它的好处:统一数据访问方式。...服务的运行不依赖于任何用户界面,即使程序被切换到后台,或者用户打开了另一个应用程序,服务扔然能够保持正常运行,不过服务并不是运行在一个独立的进程当中,而是依赖于创建服务时所在的应用程序进程。...百度了一下,查到和App崩溃相关的几个因素:内存管理错误,程序逻辑错误,设备兼容,网络因素等,如下: 1.内存管理错误:可能是可用内存过低,app所需的内存超过设备的限制,app跑不起来导致App crash...Appium是一个免费分发的开源移动应用UI测试框架,可以对android及ios系统的app进行自动化测试 12 解释移动应用程序中如何查找DOM元素 要找到DOM元素,使用“UIAutomateviewer

    1.4K20

    Xamarin 学习笔记 - 配置环境(Windows & iOS)

    Xamarin使得你可以使用C#创建原生的应用。 在文章的另一部分,我将从定义硬件和软件需求开始入手,即便是你没有任何的移动端开发经验,也能够开始了解如何开始构建一个移动应用。...你可以在安装时选择需要的组件,或许你会选择不安装Android SDK,因为你已经在Windows平台下安装过了。...然而如果你从不使用Windows,那么你必须安装Android SDK,这一过程将在以下章节做进一步的阐述,在Mac上安装Android SDK,你将不会遇到任何麻烦。...Portable 类库允许你书写代码并生成可以在不同平台下共享的类库,包括Xamarin.iOS,Xamarin.Android,以及Windows Phone。...一旦发布并使用了应用程序,开发人员就想知道发生了什么并且在发生崩溃时易于维护,你可以从应用程序的字段中获取崩溃报告中的实时堆栈跟踪。

    6.2K20

    几款Android 应用自动化测试工具「建议收藏」

    如果应用程序产生了应用程序不响应ANR(application notresponding)的错误,Monkey将会停止并报错,如果应用程序崩溃Crash或接收到任何失控异常,Monkey也会停止并报错...④ 提交 Monkey 的PR 在执行Monkey命令时发生Crash或者ANR时需要提交PR,具体提交MonkeyPR的规则如下: a....(滚动球事件由一个或多个随机的移动事件组成,有时会伴随着点击事件) 注:不常使用参数,现在手机几乎没有滚动球,但滚动球事件中包含曲线滑动事件,在被测程序需要曲线滑动时可以选用此参数。...6、–ignore-timeouts 作用:通常,应用程序发生任何超时错误(如“Application Not responding”对话框)Monkey将停止运行,设置此项,Monkey将继续发送事件给系统...8、–kill-process-after-error 作用:通常,当Monkey由于一个错误而停止时,出错的应用程序将继续处于运行状态。设置此项,将会通知系统停止发生错误的进程。

    7.6K20

    APP测试之Monkey压力测试(一)

    同时,Monkey还对测试中的系统进行监测,对下列三种情况进行特殊处理(自动停止): (1)如果限定了Monkey运行在一个或几个特定的包上,那么它会监测试图转到其它包的操作,并对其进行阻止; (2)如果应用程序崩溃或接收到任何失控异常...,Monkey将停止并报错; (3)如果应用程序产生了应用程序不响应(application not responding)的错误,Monkey将会停止并报错; 按照选定的不同级别的反馈信息,在Monkey...(1)Monkey程序由Android系统自带,使用Java语言写成,在Android文件系统中的存放路径是: /system/framework/monkey.jar; (2)Monkey.jar程序是由一个名为...说明:用于指定当应用程序崩溃时(Force& Close错误),Monkey是否停止运行。...,有时还伴随有点击)。

    3.1K30

    Android性能优化:这是一份全面 & 详细的性能优化指南(含内存优化、布局优化等)

    前言 在 Android开发中,性能优化策略十分重要 因为其决定了应用程序的开发质量:可用性、流畅性、稳定性等,是提高用户留存率的关键 本文全面讲解性能优化中的所有知识,献上一份 Android性能优化的详细攻略...具体介绍如下: 更快:应用程序 运行得更加流畅、不卡顿,能快速响应用户操作 更稳定:应用程序 能 稳定运行 & 解决用户需求,在用户使用过程中不出现应用程序崩溃(Crash) 和 无响应(ANR)的问题...优化方向 针对上述性能指标,本文主要讲解的优化方向如下: 下面,我将针对每一种性能指标,详细讲解其优化方案 4....应用程序响应速度慢 关于ANR的简介如下 优化方案 使用多线程,将大量 & 耗时操作放在工作线程中执行 多线程的方式 包括:AsyncTask、继承 Thread类、实现 Runnable接口、Handler...稳定性 影响Android 应用稳定性的原因有很多,主要是:应用崩溃(Crash)、应用无响应(ANR) 这2个错误的结果将导致程序无法使用 下面,将主要讲解该2个优化方向:应用崩溃(Crash)、应用无响应

    6.9K12

    在 Android Instant App(安卓即时应用程序)中启用 ProGuard (混淆)

    问题剖析 - 两种不同的构建方式 在一个典型的场景中,在模块化应用程序并使用新的 Gradle 插件后,您的项目结构将如下所示: ? 一个典型的多功能安装 + 即时应用程序项目。...例如:base feature 编译,代码缩减和打包发生时无需查看 feature 1 和 2 中包含的任何代码。...我建议在处理 ProGuard(混淆)错误前熟读 Android Studio 文档,ProGuard (混淆)手册 以及我的上一篇文章 。...我们可以通过任何手段摆脱哪些来自框架的类(我们不需要包含这些规则,因为它们不是应用程序 APK 的一部分),比如 android.app.Activity?...请记住通过运行应用程序并检查所有可能的情况来彻底进行测试,因为某些错误只能在运行时发生。 ---- 希望本指南能够让你更好地理解为什么 ProGuard(混淆)可以使你的即时应用程序崩溃。

    2.6K30

    Android StrictMode 详解

    Android 2.3提供一个称为严苛模式(StrictMode)的调试特性,Google称该特性已经使数百个Android上的Google应用程序受益。它将报告与线程及虚拟机相关的策略违例。...可以强制用警告代替崩溃(crash),也可以仅将警告计入日志,让你的应用继续执行 StrictMode最常用来捕捉应用程序的主线程,它将报告与线程及虚拟机相关的策略违例。...虚拟机策略(VmPolicy)由一个类似的 Builder类创建,如下代码所示。和线程策略(ThreadPolicy)不同的是,虚拟机策略(VmPolicy)不能通过一个对话框提供警告。...如果你将严苛模式(StrictMode)封装在一个类里,并捕捉这个错误,当严苛模式(StrictMode)无效时,你能忽略它。...如下代码显示了如何在你的应用中使用这个封装类 import android.content.Context; import android.content.pm.ApplicationInfo

    62120

    遍历 AccessibilityNodeInfo 报 StackOverflowError

    如果移动端访问不佳,请使用 ==> Github Pages 版。...在使用 AccessibilityService 遍历包含 WebView 的 AccessibilityNodeInfo 时会在某些情况下必现 StackOverflowError 的错误,导致应用崩溃...0x00 异常 最近使用 Android 的 AccessibilityService 做一些自动化操作时发现,在部分机器上遍历包含 WebView 页面的 AccessibilityNodeInfo...时,某些页面必定会引起 StackOverflowError 错误,经过一番查证,定位到主要与系统所使用的 Android System WebView 版本有关,属于 WebView 的 Bug。...查看 Android System WebView 版本(以下2种方法任一均可): 应用程序 菜单:显示系统应用程序 点击列表中的:Android System WebView 详情页内包含版本 开发者选项

    99331

    安卓入门-第二章-探究活动

    ,即点击桌面应用程序图标时首先打开的就是这个活动。...现在重新运行程序,在FirstActivity的界面点击一下按钮,你会发现,程序崩溃了!这是你第一次遇到程序崩溃,可能会有些束手无策。别紧张,其实大多数的崩溃问题都是很好解决的,只要你善于分析。...在logcat界面查看错误日志,你会看到如图2.16所示的错误信息。 ?  错误信息中提醒我们,没有任何一个活动可以响应我们的Intent,为什么呢?...比如说我在自己定义的活动中加入:android:scheme="http" />,那么当其他软件点击了一个网站触发,那么就会询问是否使用自己之前所定义的活动。...(android.os.Process.myPid()); } } 通过以上的基活动类被各个子类活动类继承,我们确保了: 子类活动对象在创建过程中调用父类的onCreate方法时,会将子类对象加入到此

    3K20

    Android Context完全解析,你所不知道的Context的各种细节

    Application Context的设计 基本上每一个应用程序都会有一个自己的Application,并让它继承自系统的Application类,然后在自己的Application类中去封装一些通用的操作...的实例了,打印结果如下所示: ?...应用程序一启动就立刻崩溃了,报的是一个空指针异常。看起来好像挺简单的一段代码,怎么就会成空指针了呢?...在构造方法中调用Context的方法就会崩溃,在onCreate()方法中调用Context的方法就一切正常,那么这两个方法之间到底发生了什么事情呢?...好了,关于Context的介绍就到这里吧,内容还是比较简单易懂的,希望大家通过这篇文章可以理解Context更多的细节,并且不要去犯使用Context时的一些低级错误。

    1.7K90

    Appium+python自动化(十九)- 猴哥失散多年的混血弟弟还是妹妹- Monkey(猴子)参数(超详解)

    2.5调试类参数 1.应用程序崩溃后继续发送事件 如果你希望monkey在应用程序崩溃后继续发送事件,则需要用到--ignore-crashes命令 $ adb shell monkey --ignore-crashes... 在设置此选项后,当应用程序崩溃或发生失控异常时,monkey将继续运行直到计数完成。...$ adb shell monkey --ignore-timeouts --ignore-timeouts:在设置此选项后,当应用程序发生任何超时错误(如ANR,即Application...$ adb shell monkey --ignore-security-exceptions --ignore-security-exceptions:在设置此选项后,当应用程序发生任何权限错误...您的肯定就是我进步的动力。如果你感觉还不错,就请鼓励一下吧!记得点波 推荐 哦!!!(点击右边的小球即可) ?

    64341

    Android Context完全解析,你所不知道的Context的各种细节

    Application Context的设计 基本上每一个应用程序都会有一个自己的Application,并让它继承自系统的Application类,然后在自己的Application类中去封装一些通用的操作...的实例了,打印结果如下所示: ?...应用程序一启动就立刻崩溃了,报的是一个空指针异常。看起来好像挺简单的一段代码,怎么就会成空指针了呢?...在构造方法中调用Context的方法就会崩溃,在onCreate()方法中调用Context的方法就一切正常,那么这两个方法之间到底发生了什么事情呢?...好了,关于Context的介绍就到这里吧,内容还是比较简单易懂的,希望大家通过这篇文章可以理解Context更多的细节,并且不要去犯使用Context时的一些低级错误。

    89920
    领券