Android
祁华平
这个作者很懒,什么都没留下…
展开
-
Java反射机制在Android自动化测试框架的应用
在我们谈到这个问题时,我们不得不用的例子就是Robotium原创 2014-06-08 08:13:54 · 1940 阅读 · 0 评论 -
【资源集合帖】Android 性能测试-FPS
测试背景: APP 在测试机运行一段时间后出现手机发烫、卡顿、高 CPU 占有率的现象。将应用切入后台进行 CPU 数据的监测,结果显示,即使应用不进行任何操作,应用的 CPU 占有率都会持续的增长卡顿的原因大致有:布局性能不好,内存垃圾回收机制(GC)--内存抖动(大量的内存在短期内占用和释放),CPU占用过高,硬件加速,过度绘制参考网址:https://gith原创 2017-11-03 14:07:55 · 661 阅读 · 0 评论 -
how to solve adb_devices_no_permissions
IntroductionIf you're developing on Ubuntu Linux, you need to add a udev rules file that contains a USB configuration for each type of device you want to use for development. In the rules file, ea原创 2017-11-03 14:18:47 · 211 阅读 · 0 评论 -
填充手机--压力测试必备
一次填充多少: 下面是1MB×24371=2.4G的例子,这个大家可以自己掌控计算一下。adb shelldd if=/dev/zero of=/sdcard/fillup bs=1024k count=24371 所以如果你要填充哪个分区,如果是/data分区dd if=/dev/zero of=/data/tmpfile bs=1024k count=24371原创 2017-11-03 14:23:07 · 361 阅读 · 0 评论 -
Android performance data collection
Ⅰ、总CPU和进程cpu来源:busybox top -b -n 1选择原因:比top命令执行响应速度高,耗时0.2S左右,top -t需要3s左右;并且精度到0.1,花括号内有正在处理的进程参考Ⅱ、总内存来源: /proc/meminfo取关注的项:MemFree,Buffers,Cached,Active,Inactive,Active(anon),In转载 2017-11-03 14:24:38 · 465 阅读 · 0 评论 -
RobotFramework + UiAutomator多设备协作自动化实现
安装环境使用环境ubuntu14.04请参考:https://github.com/huaping/StabilityKPI安装基础库:sudo apt-get install python-pip mplayer2 libudev-devsudo pip install robotframeworksudo pip install uiautomator安原创 2017-11-03 14:26:27 · 1796 阅读 · 0 评论 -
Tips:无线连接ADB
此方法用于不方便使用USB线连接的时候,比如充电的时候抓取log 具体方法:连接Wifi,查看wifi 地址可以使用adb得到adb shell ifconfig wlan0连接USB线adb tcpip , listening on TCP on the specified port不如adb tcpip 5555adb connect :5555 拔掉usb线原创 2017-11-03 14:29:57 · 226 阅读 · 0 评论 -
Battery test on phone
前提:userdebug版本已经获取root (adb root, adb remount)或eng版本 脚本echo "">/data/local/tmp/battery.logwhile [ 0 -eq 0 ];do local Temperature=$(dumpsys battery | grep temperature |busyb原创 2017-11-04 10:20:37 · 310 阅读 · 0 评论 -
自动化测试在测试部门的策略
【就本公司的一篇论述,每个公司不同情况也不同】先说软件测试工作的本质意义是什么?保证软件质量?肯定不是!测试不能保证软件质量,开发才是。软件测试的目的是展示软件质量状况.自动化测试的概念:计算机软件,替代人类简单记录、识别、分析结果的工具,在软件过程中,为了保障软件的可靠性、可用性、健壮性以及高性能,便出现了“测试自动化”这个概念似乎自动化测试是个趋势,把人为驱动的原创 2017-11-04 10:27:27 · 983 阅读 · 0 评论 -
测试组自动化解决方案论述
就本公司情况及人员配置的一个测试策略本公司自动化包含终端UI随机压力测试, 稳定性测试, 性能自动化, Android兼容性自动化, 服务接口自动化, 服务接口压力, Web UI测试自动化, 端到端自动化稳定性测试自动化方案根据用户场景设计最常用的测试用例,根据比重,不断的循环测试,进5*7*24/7*7*24小时测试,根据业界及运营商要求, MTBF KPI值定位为400小原创 2017-11-04 10:36:54 · 378 阅读 · 0 评论 -
手机磁盘IO读写速度测试(OTG)
U盘读写速度步骤前提OTG线,被测试手机必须是USB3.0的OTG线插入usb线,使用adb rootadb remountadb tcpip 5555adb connect 手机的IPadb shell 来进入wifi shell读取速度首先确认U盘mount的使用mount命令得出如下外置磁盘的硬件mount文件为原创 2017-11-12 12:32:50 · 10652 阅读 · 0 评论 -
设置GPS位置
adb shell settings put secure location_providers_allowed gps,networkadb shell am start -a android.intent.action.SET_CUSTOM_MOCK_LOCATION -d gps://lat-long For Android 6.0To Enable use :原创 2017-11-12 12:30:58 · 2336 阅读 · 0 评论 -
Top popular android test automation tools introduction
Test Automation ModeTest Frameworks on Android from Google•Android •Instrumentation •ActivityTesting •Contentprovider Testing •ServiceTesting•Monkey and Monkeyrunner •The UI/A...原创 2014-06-08 08:39:08 · 1584 阅读 · 0 评论 -
利用Robot Framework和Python wrapper of Android uiautomator的Android测试自动化
现在有很多工具可以实现BDD,原创 2014-06-07 20:56:54 · 2576 阅读 · 0 评论 -
Android内存监控点滴
在android测试过程中,我们通常需要监控内存使用情况,有时候还需要我们请原创 2014-06-07 23:07:57 · 1361 阅读 · 0 评论 -
Android App Crash类型
一般来说App Crash类型有1. Java Crash: Uncaught Exception检查 Android System log是否有“FATAL EXCEPTION xxxx” / “am_crash” 检查“java.lang.xxx”是哪种exception 发生了检查“at xxxx”是在哪儿发生了exceptionE/AndroidRunt原创 2015-07-12 14:49:34 · 3002 阅读 · 0 评论 -
Android应用CPU使用监控
通常我们在测试的时候需要监控app的cpu使用情况,无论在App使用过程中或者在闲置状态(用户按Home之后)。这样可以看到应用对系统的资源占用,也可以间接地发现电量使用问题。adb shell dumpsys cpuinfo 就可以得到当期啊系统的的所有cpu占用,这样可以每隔一秒钟获得一次,提取数据重定向到一个文本文件里再用gnuplot把这组数据画成趋势图,就能看到其原创 2015-07-12 15:10:37 · 1140 阅读 · 0 评论 -
Performance冷启动简单测试
所谓冷启动:即首次启动,一般用户第一感受就是应用程序第一次启动时间长短所以衡量一个程序第一次启动时间意义很重要界面与界面切换也很重要,我们可以设计自动化打开不同的Activity界面Adb log里面会有相应的字符串打印出来I/ActivityManager( 619): Displayed com.android.browser/.BrowserActivity: +1s393原创 2015-07-12 15:42:55 · 896 阅读 · 0 评论 -
Android安全--运行时验证签名
我们都知道现在疯狂地利用dex2jar、apktool等工具进行的反编译二次打包,除了做代码混淆之外,我们还得做一些事情让他们难度上升,时间成本上升,当然这些都是简单的想法,还是能够被搞掉的,这些是防止那些自动工具破解。思想是这样的:在运行时, android PackageManger允许我们得到已安装应用程序的签名,利用检查签名的指纹,然后在程序中存上一个原装指纹可以放到此处,可以放到服务翻译 2015-07-20 10:24:26 · 1212 阅读 · 0 评论 -
Android应用安全测试点滴
一般使用模拟器进行测试,因为root权限不受限制1. 反编译流行的工具有apktool,dex2jar,jd-gui等首先,安全的应用代码需要做混淆2.签名经过反编译的apk需要重新签名,如果一个安全的应用要求能够识别别修改后的apk并停止运行3. android:exported = true要检查是否可以跳过安全检查,比如有安全要求的应用要特别的原创 2015-07-19 16:32:12 · 561 阅读 · 0 评论 -
Android应用安全之运行环境检查
上文是关于运行时签名检查,这一节我们讨论运行时环境检查,一般我们应用被破解都是在调试模式下进行的,所以对于调试模式下的判断可以断了此路首先Release版本debuggable的检查必须的,不能有debuggable存在于发布的产品中,这也是CTS的一部分。其次,应用程序需要实时判断环境变化,使用模拟器或者已经破解了的手机(这个还没有好的办法,因为其可能改变系统属性)进行调试运行的判断,方翻译 2015-07-20 10:47:22 · 2269 阅读 · 0 评论 -
Android应用内存泄漏与分析
本文就android内存泄漏种类,典型的泄漏区域,和怎么分析,以及配合一些例子进行分析android内存泄露种类有1)Native leak ----- Global Reference(GREF) overflow2) Java heap leak 2.1) java.lang.OutOfMemoryError2.2) java.lang.OutOfMemoryError原创 2015-07-20 17:00:02 · 1088 阅读 · 0 评论 -
性能专项-CPU占用
top静态分析使用命令adb shell top -t -s cpu -m 15 -d 1 -n 3User 18%, System 11%, IOW 0%, IRQ 1%User 53 + Nice 32 + Sys 53 + Idle 301 + IOW 1 + IRQ 6 + SIRQ 2 = 448PID TID USER PR NI CPU% S VSS RS原创 2017-11-12 12:19:30 · 2096 阅读 · 0 评论 -
Top 5 Crashes on Android App
1. java.lang.NullPointerException预防办法,只能开发小心,必须使用android lint等静态工具查验,onResume出现的最多,因为应用放到后台后,丢失一些内存,一些引用等很正常,解决办法是在onPause中添加像一个本地的cache或数据库,再用onResume就可以了。一些由于寻找其他数据,比如activity,sensor data,ca翻译 2017-11-12 12:25:49 · 241 阅读 · 0 评论 -
Tips:几个有用的android shell svc命令
所有的执行需要root权限adb root adb shell打开关闭wifiadb shell svc wifi enable打开wifiadb shell svc wifi disable关闭wifiadb shell打开关闭数据data打开数据网络:adb shell svc data enable关闭数据网络:adb shell svc data d原创 2017-11-12 12:27:01 · 2704 阅读 · 0 评论 -
性能测试专项 - 屏幕绘制性能-帧率测试 FPS测试
查看应用的屏幕绘制速度, 能够看到卡顿–其实就是丢帧的现象当系统系能变差,或在应用设计缺陷导致绘制时间过长, FPS就会变差,帧率就会变差系统要求每帧时间要小于16ms, 如果大于16毫秒的话, 系统就会有差的用户体验根据android 自带的adb命令adb shell dumpsys gfxinfo 来获取必须首先打开gfxinfo抓取Settings原创 2017-11-04 10:38:50 · 24896 阅读 · 0 评论