㈠ Android app安全性能测试怎么做
1)软清答件拦信文件检测;2)应用静态扫描;3)应用动态行为检测4)一键生成检测报告以上四步就是爱内测平台对安卓app的性能测试的答衡慧技术方法
㈡ APP如何做性能测试
工具/原料
apk文件
APP加密网站
方法/步骤
安装、卸载测试:安装测试、卸载测试。测试软件在不同操作系统(Palm OS、Symbian、linux、Android、iOS、Black Berry OS 6.0、Windows Phone 7)下安装是否正常。软件安装后的是否能够正常运行,安装后的文件夹及文件是否写到了指定的目录里。
㈢ loadrunner12怎么做app性能测试
一、LR配置
1)LR设置代理,利用手机录制脚本
1-协议选择Web(HTTP/HTML)协议即可
2-录制开始前,对Recoding Options中的Port Mapping配置如下
a.新建New Entry
注意事项:
1.手机与电脑必须在同一网段内
2.手机配置的代理端口号需与LR中Traffic Forwarding配置的端口号一致
3.在选择Traffic Forwarding的端口号时,不能使用已被占用的端口号
4.LR配置完成后,先启动录制,再去修改手机的代理
(转载)
㈣ 如何快速高效地进行APP性能监测工作
APP性能监控是将APP运行时产生的性能数据进行告掘辩获取及处理和分析,通过平台发现应用对用户影响最大的性能问题并袜缺通过云端对性能数据进行存储、分析,以邮件、微信方式推送。APP性能监控是模拟用户真实操作场景对APP在实际运行中的性能数据,比如:响应耗时、数据流量、CPU占用率等,进行持续性监控。想要快速高效地对APP进行性能监测那你可以了解下听云APP,通过植入探针主动探测移动应用性能,采集真实用户移动设备上的应用性能,通过实时呈现多维立体的性能数据并自动分析,降低APP上线后的维护成本,帮助开散猜发者及时发现应用性能隐患。
㈤ app的性能测试怎么测试
(1) 非功能测试 app测试的一个重要方面是app的非功能需求。移动app在推出市场或进行进一步开发前,测试人员有一定的职责做该类需求的跟踪工作。早期开发阶段要进行的第一个测试应该是实用性测试。通常是由alpha用户或同事进行的。走进一家咖啡馆或餐厅,问问里面的人他们的app使用情况。让他们看看现阶段开发的第一个版本并收集反馈,看看用户是否能很好地使用新功能,以便得出第一印象。(2) 功能测试 每项开发的新功能都需要进行测试。app测试中功能测试是一个重要方面。测试人员应该要进行手动测试和后期的自动化测试维护。刚开始测试时,测试员必须把app当做"黑盒"一样进行手动测试,看看提供的功能是否正确并如设计的一样正常运作。除了经典软件测试,像点击按钮、提交订单看看会发生什么,测试员还必须执行更多功能的app测试。 除了整个手动测试过程,测试自动化对移动app也很重要。每个代码变化或新功能都可能影响现存功能及它们的状态。通常手动回归测试时间不够,所以测试员不得不找一个工具去进行自动化回归测试。现在市面上有很多自动化测试工具,有商业的也有开源的,面向各个不同平台,如Android,iPhone,WindowsPhone7,BlackBerry以及移动Webapp。根据开发策略和结构,品质管理测试专家需找出最适合他们环境的自动化工具。(3) 客户端性能测试 一个App做的好不好,不仅仅只反应在功能上。被测的app在中低端机上的性能表现也很重要。比如:一个很好玩的游戏或应用,只能在高端机上流畅运行,在中低端机上卡的不行,也不会取得好的口碑。 关于App的性能测试,我们比较关注的参数有:CPU,内存,耗电量,流量,FPS。同时也需关注一下App的安装耗时和启动耗时。目前大家可能比较困惑的一个问题,多高的CPU,内存,耗电量,流量,FPS才算是符合发布的值呢?这里可以告诉大家,可以参考精品游戏的一些数值,将自己研发的app与业内精品的app数据做对比。(4) 适配兼容测试市面上目前存在的移动设备五花八门,
㈥ 手机上的app性能测试怎么测
您好,方法提到APP的性能测试这个概念比较笼统,因为APP的性能测试分为服务器端的性能和手机端的性能测试。下面,我们先从服务器端的性能测试开始说起,服务器端的性能测试可以通过LoadRunner或Jmeter工具进行测试,为方便起见,可以以Jmeter工具为例子说一下App服务器端的性能测试流程。首先,确定app的性能测试功能点,一般会选择使用比较频繁的功能做性能测试比如查询,提交数据。然后,根据该功能点的接口测试需求,或使用fiddler抓包,在jmeter上构造向服务器发送的请求数据,配置好相关的设置,并做好服务器的监控。(以我们实际项目为基准,本项目是搭建在linux上的,用的是nmon工具做监控),最后运行测试,测试完之后,收集CPU,内存等信息,集合聚合报告的内容,分析性能测试结果。至于手机端的性能测试流程则比较简单,首先需要在服务器上提前安装监控工具(iTest/GT),接着启动监控工具,监控被测应用.接着需要清空先前的logcat日志记录,清空日志的命令是:adb logcat -c.接着来获取logcat日志:adb logcat -v time > E:\share\logcat.log.如何做App的性能测试再接着使用monkey运行被测应用:adb shell monkey -p your.package.name -v 500 > E:\share\monkey.log (获取app的包名和activity名称: adb logcat -v time | findstr START 脚本中,cmp= 后面的值就是 包名) (ctrl+c 终止命令)最后根据监控图,检查CPU,内存,流量,电量是否符合性能指标。如果不符合,就把不符合指标的报表和对应的logcat发给开发进行定位。
㈦ APP启动性能优化
一、浅谈APP启动性能优化原因
1、引起性能问题的原因
随着项目不断的快速迭代,往往会造成App启动卡慢现象,因为可能在App主进程启动阶段或者在主界面启动阶段放了很多初始化其他业务的逻辑,而这些业务落地可能一开始并不需要用到;
2、为什么要做启动速度优化
App启动卡慢会影响一个App的卸载率和使用率;
启动速度快会给人一种轻快的感觉,减少用户等待时间;
如果一个App从点击桌面图标到看到主界面花了10秒,请问你能接受么?忍耐不好的估计直接就卸载了,或者没等打开就直接Home键按出去,然后杀进程了;这样一来App卸载率提升了,使用率下降了。所以对于有大量用户的App来说,这些性能细节是很重要的;
APP启动性能优化工具的选择
作为APP的开发者,我使用的一直都是一款友盟+软件,U-APM 是友盟+推出的App稳定性监控、性能监控和云真机测试平台。通过轻量级的集成接入即可拥有实时、可靠、全面的应用崩溃、ANR、自定义异常等捕获能力,及卡顿、启动分析等性能能力,支持多场景、多通道智能告警监控,帮助开发者高效还原异常、卡顿用户的访问路径和业务现场,缩短故障排查时间。
二、分析怎么做启动优化
1、启动过程简单分析
App从点击桌面图标到我们看到App的主界面整个过程中经过了哪些步骤,哪些地方是我们可以优化的地方;
2、从启动过程找简嫌出优化点
App启动过程中我们优化的地方包括主进程启动流程和主界面启动流程,主进程启动就是Application的创建过程,主界面启动就是MainActivity的创建过程;
只需要分别对这两个部分进行优化即可:
Application中attachBaseContext最早被调用伍弯,随后是onCreate方法,尽量在这两个方法中不要有耗时操作;
三、启动优化步骤
1、Application中加入异步线程
是把不必要提前做的操作放到异步线程中去做,也就是我们经常做的异步加载;
2、主页面加入异步线程和延迟加载功能
与Application的优化思路一样,也是封装onSyncLoad和onAsyncLoad方法对现有代码进行一个分类,但是这两个方法的调用时机要晚一点,是在主界面首屏绘制完成的时候调用。这个步骤也需要new一个Thead,属于额外的开销,不过这不影响我们整体性拦橘手能;
3、态加载布局:主布局文件优化
把主界面中不需要第一次就用到的布局全部使用动态加载的方式来处理,使用ViewStub或者直接在使用时动态addView的方式;
4、主布局文件深度优化
Activity在加载布局的时候,会对整个布局文件进行解析,测量(measure),布局(layout)和绘制(draw),所以设计简单合理的布局尤为重要。几个重要的优化如下:
减少布局层级
减少首次加载View的数量
减少过度绘制
5、页面功能的分模块化和懒加载
一个页面上有很多功能模块,最好每个功能模块都单独的分开,模块之间用接口进行数据沟通;
按需加载所需要的功能,不要打开一个页面都加载所有的功能;
加载完所需要的功能,如果是一次性加载不需要保持在内存中,尽快销毁掉,形成良好的习惯。
APP启动性能优化是一条持续之路,通过优化我们可以了解到影响启动性能的因素有哪些,这样我们平时在编码的过程中就会多注意自己的代码性能。开发者可利用友盟+U-APM对APP启动进行监控,另外友盟+U-APM还提供云真机测试能力,助力开发者从研发测试质量验收到线上问题复现排查,保障应用品质,提升测试效率。在云真机测试期间自动采集崩溃信息,提供详尽的崩溃报告协助筛查,真正实现监控测试全流程深度打通。
㈧ 如何打造一个高性能Hybrid App
方案选择从这个点出发,我们需要考虑,以怎样的形式来提前拿到资源包(css,js,html,通用的图片等),减少这些静态资源的网络请求,增加加载速度。无非就是一下两点:1.将资源包在app打包阶段直接植入2.在运行时动态下载资源包单纯从业务层来说,如果你的业务够简单,其实第一种方式已经完全满足,每次需要新增页面就重新发版嘛,虽然显得有点愚笨,但是还是能满足的。但是从长远的角度来说,我们要做到尽可能的动态化,动态化是客户端的热点,我们要做到尽量不依赖于版本更新来实现动态化。对于iOS来说,更新机制本身就非常缓慢,要通过app store的审核有时候还需要靠人品,更何况用户也不一定买账,他们不一定会更新我们的app。在这样的情况下,第二种方案就会显得更加友好。设计加载流程那么,该怎么设计一套完整的解决方案来满足运行时动态下载资源包呢。抽出细节,大体上可以归结为下图所示的结构图:app与服务端交互我来解释下这个图,我是建立在客户端已经实现socket层协议,所以能与server保持长连接以至于server能主动push数据的情况,实现这种协议蛮复杂的。实际上如果没有这个协议,那就需要client找时机主动去server请求(app启动时请求一次?或者是每隔一段时间请求一次,取决于你),本闭念文以后者为例。下面我来演示下一个完整的下载新资源包的过程:1.运营小妹觉得某节日要到了,需要发布一个新的页面,然后在运营后台生成资源包轿哪困,运营后台会自动更新config,其中包括资源包的version,是否强制关闭加载本地资源包(降级策略,防止这个组件本身有BUG),还有一些hotpatch脚本。并且将资源包根据里面的内容部署到remote database。2.在合适的时机,client发起http请求向server查询是否有新版本的资源包,并带上本地的config。3.server根据config里的选项,比对从client拿到的config,发现客户端是旧版本的config,OK,则下发新的config给client,并且发送从database里拿到的资源包(为了加快速度,可以部署到CDN)。4.client拿到最新的资源包后,在本地进行解密,解压等操作,并映射成对应ULR相对于本地的local file url。比如:http://www..com这个网址下的静态资源文件在本地的的file://dsalkfjsldfjalsd/目录下。至此,已经完成资源包的下载。拦截并加载本地资源包那么有了资源包后,怎么能让app像native页面的速度去加载H5呢。其实原理就是对H5请求进行拦截,如果本地已经有对应的静态资源文件,则直接加载,这样就能达到“秒开”webview的效果。对于iOS而言,这就需要用到NSURLProtocol这个神器了。接下来,分析下它到底是什么东西,缓笑我们怎么利用它达到上述效果。NSURLProtocol能够让你去重新定义苹果的URL加载系统(URL Loading System)的行为,URL Loading System里有许多类用于处理URL请求,比如NSURL,NSURLRequest,NSURLConnection和NSURLSession等。当URL Loading System使用NSURLRequest去获取资源的时候,它会创建一个NSURLProtocol子类的实例,你不应该直接实例化一个NSURLProtocol,NSURLProtocol看起来像是一个协议,但其实这是一个类,而且必须使用该类的子类,并且需要被注册。–从网上拷贝的换句话说,NSURLProtocol能拦截所有当前app下的网络请求,并且能自定义地进行处理。废物不多说,上代码:NSURLProtocol的子类这里只介绍与我们需求相关的NSURLProtocol方法。搞了这么多,其实最核心的就是前四个方法:+ (BOOL)canInitWithRequest:(NSURLRequest *)request这个方法的作用是判断当前protocol是否要对这个request进行处理(所有的网络请求都会走到这里,所以我们只需要对我们产生的request进行处理即可)。+ (NSURLRequest *)canonicalRequestForRequest:(NSURLRequest *)request这个方法其实很强大,它可以对request进行预处理,比如对header加一些东西什么的,我们这里没什么要改的,所以直接返回request就好了。– (void)startLoading重点是这个方法,我们这里需要做一件事,就是自己拼装httpResponse,并且返回给url load system,然后到了webview那一层,会收到response,对于webview而言,加载本地和走网络拿到的response是完全一样的。所以上述代码展示了如何拼装一个httpResponse,当组装完成后,需要调用self.client将数据传出去。何为self.client,这个东西其实就是protocol与url load system交互的一个对象,系统提供给我们的,这样理解就够了。需要注意的是,细心的读者会看到else里会有一段代码:[NSURLProtocol setProperty:@YES forKey: inRequest:newRequest];这个是干什么用的?else的作用是当本地不存在这个文件时,则主动重新发请求,此时又会调用canInitWithRequest,如果不设置flag,则会无限递归了。所以你懂得。当然,重新发请求自然要实现NSURLConnectionDelegate。
㈨ Android App性能优化之耗电优化
在移动设备中,电池的重要性不言而喻,没有电什么都干不成。对于操作系统和设备开发商来说,去追求更长的待机时间,耗电优化一直没有停止。而对于一款应用来说,并不能忽略耗电问题,特别是那些被归为“电池杀手”的应用,最终的结果是被卸载。因此,应用开发者在实现需求的同时,需要尽量减少电量的消耗(本文针对Android App进行分析)。 App耗电的原因其实很多,这里我就讲以下几种优化方案,优化方案的反面就是他的原因了,几种优化方案如下: 1.合理的使用wake_lock锁,wake_lock锁主要是相对系统的休眠(这里就是为了省电,才做休)而言的,意思就是我的程序给CPU加了这个锁那系统就不会休眠岁脊了,这样做的目的是为了全力配合我们程序的运行。有的情况如果不这么做就会出现一些问题,比如微信乎袭渗等及时通讯的心跳包会在禅世熄屏不久后停止网络访问等问题。所以微信里面是有大量使用到了wake_lock锁。 2.使用jobScheler2,集中处理一些网络请求,有些不用很及时的处理可以放在充电的时候处理,比如,图片的处理,APP下载更新等等; 3.计算优化,避开浮点运算等。 4.数据在网络上传输时,尽量压缩数据后再传输,建议用FlatBuffer序列化技术,这个比json效率高很多倍,不了解FlatBuffer,建议找资料学习一下。 App耗电分析所用到的工具 App耗电高说到底无非是因为代码不合理造成的,其中存在的一些问题,我们通过调试也很难定位到。在这里,我给大家分享一款工具,那就是“友盟+u-apm”应用性能监控平台了,是为了帮助开发者监测app应用使用的。它可以实时监测到app性能方面的问题,定位到问题所在处,开发者可以针对问题进行解决并修复。 友盟还通过轻量级的集成接入即可拥有实时、可靠、全面的应用崩溃、ANR、自定义异常等捕获能力,及卡顿、启动分析等性能能力,支持多场景、多通道智能告警监控,帮助开发者高效还原异常、卡顿用户的访问路径和业务现场,缩短故障排查时间。 另外,友盟还提供了云真机测试能力,提供了海量Android、iOS真机,通过资源集中管理,合理调度分配,为开发者提供发版前测试、发现线上问题后复现等场景使用,助力开发者平衡成本与需求,提升研发效率。助力开发者从研发测试质量验收到线上问题复现排查,保障应用品质,提升测试效率。在云真机测试期间自动采集崩溃信息,提供详尽的崩溃报告协助筛查,真正实现监控测试全流程深度打通。为移动开发者提供了灵活地测试操作界面,支持ADB调试、WEB远程调试、扫码、抓包、虚拟定位等测试功能,并提供了测试报告供开发者后续查看。 友盟作为一款监测工具,可以帮助各位开发者监测app性能问题,还可以减轻开发者的负担和压力,简直就是开发者的“得力小帮手”!
㈩ 如何对安卓市场App进行性能测试
对App性能测试一般来说有:安装和启动时间、内存实时监控、卡顿、闪退、崩溃、CPU的占用、流量的耗用等等,传统的方式比较费时费力,想要对App进行性能监测你可以了解下听云App,通过植入探针主动探测移动应用性能,帮助开发者及时发现应用性能隐患,采集真实用户移动设备上的应用性能,帮助企业了解真实的用户体验,跟踪App应用移动设备端用户进行屏幕操作时的交互性能,还可以深入追踪HTTP错误、网络错误和崩溃原因,从而提高APP的质量。