虽然对Android手机的实际体验而言,“不服跑个分”有些片面(详见《跑分逆天?审视Android手机自嗨式宣传!》),但不可否认的是它能以最快速且直观的方式展现手机理论性能的方式,足不出户就能完成和其他机型的对比。
毕竟,不是所有用户都有时间和条件去卖场真实体验每一款感兴趣的手机。
下面,我们就从跑分软件的分类,对媒体们常用的跑分APP加以介绍吧。
————综合跑分类APP————
如何快速判断多款手机之间综合性能的强弱?最简单的方法就是看它们在综合跑分类APP中的成绩,而安兔兔和鲁大师,就是国内知名度最高的跑分软件之二。
安兔兔评测
所需权限:电话、短信、相机、存储空间、读取手机识别码
安兔兔评测提供了鉴别手机真伪、压力测试和功能测试(电池耗损、屏幕坏点等)等功能,但其最为核心的还是对手机综合性能的考量,点击APP界面上方的“立即测试”,待下载安兔兔3D测试资源后就能进行跑分了。
安兔兔评测的成绩由五部分组成,分别是总成绩、CPU、GPU、UX和MEM。其中,总成绩就是我们拿来和其他手机比对的数据,自然是越高越好。CPU和GPU分别考察的是处理器的运算和3D游戏性能,MEM体现内存和闪存性能,而UX则是用户体验测试。UX测试包含数据安全,数据处理,策略游戏,图像处理、界面延迟测试、网页渲染测试和二维码扫描测试等内容,系统优化层面的权重较高,所以也最容易成为“注水”拔高总成绩的对象。
为了便于大家比较,笔者整理了在售Android手机处理器在安兔兔跑分中的TOP10以及它们的具体分数,感兴趣的朋友不妨和自己的或打算入手的手机对比一番。
安兔兔和鲁大师这类综合性跑分APP都集成了各种广告和推送,鲁大师甚至还会修改锁屏界面。因此,如果你还不想卸载它们,记得在APP的设置选项中关闭这些臃肿功能的入口。此外,安兔兔和鲁大师每一次大的版本升级(如安兔兔V6→V7)都会改变测试内容,从而对成绩造成非常大的影响而失去可比性。因此,跑分对比的前提,就是跑分APP的大版本一致。
鲁大师评测
所需权限:电话、短信、位置信息、相机、读取手机识别码
鲁大师评测提供了性能评测、体验评测、AI性能评测(即下文的AIMark)、VR评测和HTML5评测,其中性能评测是其核心考核项目,首次运行还需要下载测试专用的数据包。和安兔兔相似,鲁大师的性能评测同样被细分为了总成绩、CPU、GPU、内存和存储四个部分,只是它将体验和浏览器测试单独提出来作为两个额外的测试项目,所以总成绩的参考价值更高,至于其他项目的内容,感兴趣的朋友可以自行跑跑看。
需要注意的是,鲁大师评测里的广告较多,很多特色功能都会诱导你再安装其他APP。所以在评测完成后建议直接卸载,避免其在后台浪费更多资源,而下面则是鲁大师评测排行榜。
————CPU跑分类APP————
细心的朋友不难发现,综合跑分类APP似乎不够严谨,比如骁龙675的定位明明低于骁龙710,但它在安兔兔跑分中的总成绩却比骁龙712还要高。因此,如果你非常在意CPU或GPU的单项成绩,还是需要依靠更加专业和精准的APP加以测试。
GeekBench 4
所需权限:短信
GeekBench 4是最专业且跨平台的处理器评测软件之一,其测试处理器过程中的负载都是仿照现实生活中的应用而定制的,这些负载测试利用复杂的设计,可避开内存和系统等其他软硬件的影响,从而可最大限度还原CPU的真实性能。在最新版本的GeekBench 4中还加入了针对GPU的运算跑分,但在参考价值上就没有其CPU测试具备说服力了。
运行GeekBench 4需要手机处于联网状态(记得赋予该APP联网权限),否则将提示无法连接服务器而拒绝执行。
通过GeekBench 4的跑分对比,我们不难分析出骁龙675反超骁龙7系的原因——骁龙675的CPU架构为Kryo 460,是基于Cortex A76内核“魔改”而来。作为对比,骁龙7系所用的Kryo 360架构都是从Cortex A75魔改而来,所以它们单就CPU一项而言自然要处于下风。
小提示: 考察CPU性能的基准APP还包括BaseMark、JetStream、Octane和Speedometer等,只是它们在国内没什么知名度,本文就不再赘述了。
————GPU跑分类APP————
随着各种手游大作的兴起,智能手机GPU性能的权重也在不断提升。因此,如果你更在意游戏体验,在同价位的手机之间,优先挑选GPU子项分数更高的产品准没错。
3DMark
所需权限:短信、存储空间
3DMark是PC上大名鼎鼎的基准测试软件,作为它的Android版自然也是可靠的保证,首次安装运行该APP时需要下载数据包。3DMark目前主打的测试项目为Sling Shot Extreme,可选以Vulkan或OpenGL ES3.1的API运行,包括多个渲染目标、实例化渲染、统一缓冲区和变换反馈,测试包含大面积照明和景深,并使用计算着色器来获得后处理效果。
考虑到手机屏幕分辨率存在720P、1080P、2K和4K的差异,而分辨率越高对GPU渲染的压力也就越大,同款处理器的手机之间屏幕分辨率越低跑分越高,非常不公平。因此,运行3DMark时推荐选择“Unlimited”(离屏)测试,该模式下3DMark能无视分辨率对性能的影响而跑出更加真实的分数。
3DMark默认测试的时间较长,如果你想缩短等待时间,可以点击APP主页右上角的图标进入设置界面,取消“包含演示”的勾选即可。
3DMark
从对比来看,麒麟家族处理器的GPU在OpenGL ES3.1 API接口下的性能要普遍弱于同级别的骁龙家族,但在Vulkan API接口下的性能则非常抢眼,比较意外的是作为新品的骁龙675,其GPU性能甚至还不如骁龙660。可见,如果你更喜欢玩游戏,主流价位还是搭载骁龙7系的手机更值得选。
VRMark
所需权限:电话、短信、存储空间、读取手机识别码
虽然最近一年来VR的热度大减,但这并不妨碍它是手机“硬件杀手”的事实——没有强悍的CPU和GPU组合很难驾驭未来的VR大作。和3DMark一样,VRMark同样来自Futuremark,也是Android上最权威的VR性能基准测试软件,首次安装运行时需要下载数据包,然后点击界面上的运行按钮就能等待成绩出炉了。
Amber Room是更具前瞻性的VR测试项目,建议以此为准
Futuremark官网并没有VRMark的数据库,而小编以前也没有刻意测试过这个项目,所以暂时无法提供相关的排行信息。但从骁龙710在Amber Room测试才能跑出20fps的成绩来看,想要流畅运行至少需要麒麟980或更高级别的处理器支持。
GFXBench
所需权限:短信、相机、存储空间
在智能手机领域,GFXBench的影响力甚至要在3DMark之上,其最新的版本为GFXBench 5.0,同样支持OpenGL和Vulkan两种API,在霸王龙、曼哈顿、Car Chase的基础上新增了High Tier和Normal Tier模式下的全新测试场景Aztec Ruins,测试时建议选择离屏模式。
可惜,GFXBench在国内没有服务器,无论是登录官网下载还是运行GFXBench安装数据包都需要修改VPN才能继续,所以不建议普通用户尝试。GFXBench的测试排名和3DMark相似,只是骁龙675的成绩终于可以无限接近于骁龙660了。
————办公和续航类APP————
手机跑分越高代表理论性能越强,但这并不代表它的“生产力”更高,在运行办公类APP时系统层面的优化更加重要。如果你经常在手机上编辑文档、视频,处理邮件和其他工作事宜,PCMark的成绩参考价值会更高一些。
PCMark
所需权限:短信
没错,PCMark也是来自Futuremark,其目前主打的测试项目为“工作2.0”(需要下载数据包),包含网页浏览、视频编辑、编辑文档、图片编辑和数据操作几个部分,可以充分调用手机软硬件的资源,CPU和GPU绝对性能的权重有所降低,所以可以更加真实地反映一款手机在日常办公中的潜力。
PCMark同时还提供了续航测试功能,限制好手机屏幕亮度,将手机电池充到80%以上就能运行,该APP会反复运行工作2.0中的测试项目直至手机电量降低到20%,根据电消耗量和实际运行的时间,推算出这款手机的理论续航成绩(最好晚上睡觉前测试,早上睡醒正好查看成绩)。
可惜,PCMark的续航测试存在很多Bug,测试期间非常容易被手机的消息通知、省电机制(如后台清理)、低电量提醒、待机熄屏等功能打断,哪怕将PCMark添加到锁屏保护和清理内存白名单也难以避免。
————闪存性能评分软件————
在手机领域,虽然SoC越来越强,内存和存储空间越来越大,摄像头都能拍月亮了,但就存储性能而言,却始终是其综合表现的最大短板。目前手机圈流行的闪存主要以eMMC5.1、UFS2.1单通道、UFS2.1双通道和UFS3.0为主,我们可以通过AndroBench对其性能进行量化对比。
AndroBench
所需权限:短信
AndroBench是一款容量很小却很强大的闪存性能基准测试软件,在手机安装后我们只需点击“Run ALL Benchmarks”按钮,等待1分钟左右就能测试完毕。这款APP的测试项目包含顺序读写、随机(4K)读写和数据库性能,读写测试的单位为MB/s,数字越高越好,而数据库测试单位为s,数字越低越好。
手机闪存分类
在新款手机常用的闪存中,eMMC5.1的性能最低,它经常与骁龙4系、骁龙6系、骁龙7系、麒麟6系、麒麟7系、联发科Helio P系列搭配,主要定位在2000元价位以内的主流市场;UFS2.1根据通道数量的不同,性能存在很大的差距。其中,单通道UFS2.1主要和骁龙7系结合,定位中高端,双通道UFS2.1主要和骁龙8系、麒麟9系结合,定位高端;作为最顶级的UFS3.0,在2019年Q1才刚刚量产,它是骁龙855的梦幻装备,暂时仅被三星Galaxy Fold和一加7系列所猎装。相同的闪存,根据NAND颗粒(如MLC、TLC、QLC等)和容量不同,其读写速度会存在一定的差异,一般情况下相同闪存颗粒时是容量越大性能越强。
————AI性能评分软件————
从“先拍照后对焦”到“3D面部建模捏脸”,从“语音助手”到“智能识图”,AI在手机上的应用已经越来越多。对于消费者来说,要想辨别市面上各色手机的AI性能,仅仅依靠使用体验来判断是远远不够的,而且目前很多AI运用都基于算法底层,很难直接感受到。这时候,让AI性能“有分可查”就显得非常重要了。
AIMark
所需权限:电话、短信、存储空间、读取手机识别码
AImark是鲁大师评测的一个子项分支,可以独立下载单独的测试APP,如今已经升级到了2.0版。AImark2.0沿用了成熟的Inception V3、ResNet34神经网络模型,取消VGG16,新增SSD、DEEPLABV3+测试项。首次运行AIMark时需要联网并下载数据包,然后该APP就能自动完成测试流程并给出最终的得分。
安兔兔AI评测
所需权限:电话、短信、相机、存储空间、读取手机识别码
和AIMark相比,安兔兔AI评测更加注重AI在实际应用中的效率,它的评测分别针对图片分类以及对象识别。其中图像识别分类是基于Inception v3神经网络进行,测试200张图片的类别,而对象识别是基于Mobilenet ssd神经网络进行,测试数据为一段600帧的视频。在安兔兔AI评测中,麒麟系的处理器跑分明显偏低,而安兔兔官方暂时还未发布该APP的跑分排行,所以笔者只能从CFan评测过的手机中加以对比。
AI Benchmark
所需权限:短信、存储空间
AI BenchMark在国外用户非常认可的一项AI跑分软件,它使用了包括MobileNet -V1、InceptionV3、Resnet - V1等在内的9种神经网络模型进行测试。具体项目包含2个物体识别分类、2个超分辨率,其余是人脸识别、图像去模糊、语义图像分割、图片增强和内存极限测试。
小结
看到这里,相信大家已经对Android平台中常见的跑分软件有了直观的认识。跑分只是量化手机理论性能的一种手段,它并不能反映手机真实的使用体验(如操作流畅度、发热控制等),因此它只能作为我们选购手机时的一个参考,在品牌知名度、设计、配置和功能相近的前提下,跑分越高的手机自然就越值得入手。
随着移动互联网的高速发展,App应用非常火,测试工程师也会接触到各种app应用。除了人工测试之外,也可以通过一些测试工具来提高我们的测试效率,以下对于我用过或听过的app测试工具做了一个统一整理,欢迎补充。
官网: http://appium.io/
Github地址: https://github.com/appium/appium
介绍:
Appium是一个开源的、跨平台的自动化测试工具。支持自动化iOS,Android和Windows桌面平台上的原生、移动Web和混合应用。 开发者可以使用WebDriver兼容的任何语言编写测试脚本,如Java,OC,JS,PHP,Python,Ruby,C#,Clojure 和Perl语言。是做UI自动化测试必须要掌握的工具之一。
官网: http://airtest.netease.com/介绍: Airtest是网易游戏推出的一个UI自动化测试工具,适用于游戏和应用,支持的平台为Windows,Android和iOS。Airtest提供了跨平台的API,包括安装应用、模拟输入、断言等。 基于图像识别技术定位UI元素,你无需嵌入任何代码即可进行自动化测试。 并且测试脚本运行后可以自动生成详细的HTML测试报告。
Github地址: https://github.com/openatx/uiautomator2介绍:
uiautomator2 是一个可以使用Python对Android设备进行UI自动化的库。其底层基于Google uiautomator,Google提供的uiautomator库可以获取屏幕上任意一个APP的任意一个控件属性,并对其进行任意操作。
地址: https://developer.android.google.cn/studio/test/monkey
介绍:
Monkey 是一个在模拟器或设备上运行的程序,可生成伪随机用户事件(例如点击、轻触或手势)流以及很多系统级事件。使用 Monkey 以随机且可重复的方式对正在开发的应用进行压力测试。
地址: https://developer.android.google.cn/studio/test/monkeyrunner
介绍:
monkeyrunner 工具提供了一个 API,用于编写可从 Android 代码外部控制 Android 设备或模拟器的程序。使用 monkeyrunner,可以编写一个 Python 程序去安装 Android 应用或测试软件包,运行它,向其发送按键,截取其界面的屏幕截图,并将屏幕截图存储到工作站中。monkeyrunner 工具主要用于在功能/框架级测试应用和设备以及运行单元测试套件,但也可以自由地将其用于其他目的。
Github地址: https://github.com/zhangzhao4444/Maxim
介绍:
Maxim是基于monkey做的二次开发,相较原生monkey,相对智能。除了保留原生monkey已有的功能外,可深度遍历控件,可自定义黑白名单,可设定执行时长,增加防睡眠/防假死机制、防跳出/防误点状态栏及下拉状态栏等。
Github地址: https://github.com/lgxqf/UICrawler
介绍: 基于Appium的App UI遍历 & Monkey 工具,支持Android和Ios移动App,或H5或微信等应用。v2.3版已支持 Appium 1.16.0, Java-client 7.3.0。
官网: https://gt.qq.com/
介绍:
腾讯开源的APP的随身调测平台,支持ios和android。直接运行在手机上,可对APP进行快速的性能测试(CPU、内存、流量、电量、帧率/流畅度等等)、开发日志的查看、Crash日志查看、网络数据包的抓取、APP内部参数的调试、真机代码耗时统计等。
官网: https://perfdog.qq.com/
介绍:
腾讯游戏部门开发的移动全平台iOS/Android性能测试、分析工具平台。手机无需ROOT/越狱,手机硬件、游戏及应用APP也无需做任何修改,极简化即插即用。
PerfDog支持iOS和Android,支持移动平台所有应用程序(游戏、APP应用、浏览器、小程序、小游戏、H5、后台系统进程等)、Android模拟器、云真机等性能测试。PC上PerfDog可多开,单PC可同时测试多台手机。目前免费体验,谁用谁香。
Github地址: https://github.com/alipay/SoloPi
介绍: SoloPi是一个无线化、非侵入式的Android自动化工具。除了公测版的录制回放、性能测试、一机多控三项主要功能之外,SoloPi还提供了数据 Mock,性能加压、网络模拟、智能 Monkey等功能,能为测试开发人员节省宝贵时间。
官网: https://wetest.qq.com/product/qnet
介绍:
QNET是腾讯wetest 服务平台推出了一款 App 弱网测试工具,该工具无需ROOT手机,无需连接数据线,以独立app的方式,为用户提供给快捷、可靠、功能完善的弱网络模拟服务(2G网络、极差网络、连续丢包、正常网络、4G网络、100%丢包等)。另外QNET还支持TCP/UDP网络协议抓包。
官网: https://www.telerik.com/fiddler
介绍:
Fiddler是一款大家熟知且功能强大的抓包工具。通过设置代理,能够记录客户端与服务器端所有 http(s)通讯。可以针对捕获到的请求进行分析、设置断点、篡改请求及返回数据,还可以设置网络丢包和延时进行弱网络模拟等等。
官网 : https://www.charlesproxy.com/
介绍:
Charles是HTTP代理/ HTTP监视器/反向代理,可以查看其计算机与Internet之间的所有HTTP和SSL / HTTPS通信。可对截取的请求及响应进行分析、支持修改请求参数、支持弱网络模拟。
官网 :https://www.testin.cn/
介绍 :
Testin是国内较早涉足云测试领域的平台之一。终端种类及数量都比较全面。提供远程真机测试、标准/深度/遍历兼容测试、自动化测试、测试专家驻场等。支持Android与iOS系统。但目前仅少部分服务为免费,绝大多数服务为收费项目。
官网: https://utest.21kunpeng.com/home
介绍:
腾讯旗下的云测试服务平台,拥有超过3000台真机实验室,覆盖市面99%主流机型。拥有十年终端测试服务经验,提供兼容性测试、自动化测试、云真机、设备分享等多种服务方式。
官网: http://mtc.baidu.com/
介绍:
百度MTC是百度开放平台旗下的移动云测试中心。提供超过1500款热门机型。提供的测试服务种类有兼容性测试、性能测试、功能测试。并且提供了脚本录制工具,类似Testin。
百度MTC的服务目前主要为收费服务。
官网: https://www.aliyun.com/product/mqc
介绍:
阿里MQC是阿里巴巴旗下的移动测试平台。提供大量热门机型,支持Android及iOS系统。提供兼容性测试、功能测试、性能测试以及稳定性测试。
官网: https://owasp.org/www-project-zap/
介绍:
OWASP ZAP是目前最流行的免费APP移动安全测试工具,由全球数百个志愿者管理维护。该工具支持多种脚本语言类型,易安装,可以在APP的开发和测试阶段自动查找安全漏洞。
Github地址: https://github.com/FSecureLABS/drozer
介绍:
Drozer是一个由 MWR 安全团队维护开源的软件,该软件是针对Android平台的安全审计和攻击框架。安全人员可通过drozer自身提供的一些module完成一些基础的安全测试功能,同时也可以根据需求实现自己的module,甚至可以在利用drozer提供的框架实现一些自动化审计功能。
Github地址: https://github.com/MobSF/Mobile-Security-Framework-MobSF介绍:
MobSF是一款自动化移动App安全测试工具,适用于 iOS和Android,可熟练执行动态、静态分析和Web API测试。可用于对Android和iOS应用进行快速安全分析。
Github地址: https://github.com/linkedin/qark
介绍:
QARK是一个静态代码分析工具,旨在识别基于Java的Android应用程序的潜在安全漏洞和关注点。QARK还试图提供动态生成的ADB(Android调试桥)命令,以帮助验证其检测到的潜在漏洞。它甚至可以动态地创建一个定制的测试应用程序,以即用APK的形式,确定潜在问题。
10+2款高级APP自动化测试工具集合,帮助程序员更好的进行移动应用测试!
1. Appium(免费)
一款开源的移动测试自动化工具,适用于Android和iOS系统。
链接:http://appium.io/
2. Robotium(免费)
开源测试工具Robotium,可测试所有版本和子版本的Android应用程序。
链接:https://github.com/robotiumtech/robotium
3. MonkeyRunner(免费)
专门为在框架或功能级别的设备设计的应用程序测试工具。
链接:https://developer.android.com/studio/test/monkeyrunner/index.html
4. UI Automator(免费)
UI Automator是用于测试应用程序的用户界面以及UI自动创建的Android UI测试工具,最近被谷歌开发扩展。
链接:https://developer.android.com/topic/libraries/testing-support-library/index.html#UIAutomator
5. Selendroid(免费)
Selendroid是一个测试自动化软件,适用于Android系统的本地应用程序和移动web的UI混合测试。
链接:http://selendroid.io/
6. Oracle的MonkeyTalk(收费)
MonkeyTalk的功能是自动化Android和iOS应用程序的功能测试。
链接:https://www.oracle.com/corporate/acquisitions/cloudmonkey/index.html
7. Testdroid(99刀/月)
Testdroid是测试iOS和Android设备应用的最佳平台之一,它拥有不同屏幕的分辨率、OS版本和HW平台。
链接:http://bitbar.com/testing/
8. Calabash(免费)
Calabash测试.NET、 Ruby、 Flex、 Java以及其他的编程语言相关的应用程序效率更高。
链接:http://calaba.sh/
9. Frank(免费)
Frank只允许测试iOS应用,值得一提的是它的开源框架结合了JSON和Cucumber。
链接:https://github.com/moredip/Frank
10. SeeTest(有试用版本)
SeeTest Automation是一个跨平台的解决方案,允许在不同的设备上运行相同的脚本。
链接:https://experitest.com/
+1. KIF for iOS(免费)
KIF是为iOS移动应用UI测试开发的一个框架,可利用内置iOS中可访问的API模拟真实的用户交互。在Objective-C中写的测试对iOS程序员来讲已经很熟悉,但苹果转向Swift使得其对Objective-C的使用处于劣势。
链接:https://github.com/kif-framework/KIF
+2. iOS Driver for iOS(免费)
iOS Driver利用Selenium和WebDriver 的API来测试iOS移动应用,默认在模拟器上运行。这些模拟器可使执行命令速度更加快、可伸缩性更强。但当前版本与设备一同工作导致了执行缓慢。
iOS的主要优势在于不需要修改应用程序源代码,也无需在测试设备上加载其他应用程序。iOS Driver被设计为在Selenium网格节点运行,而Selenium网格节点支持并行GUI测试,可提高测试速度。
链接:https://ios-driver.github.io/ios-driver/
发表评论