章节:自动化基础篇——电池续航自动化测试上&&下

主要讲解内容及笔记:

一、影响手机电量的因素和理论:

下面是一个表格:当今主流手机显示屏技术、机型与功耗对照表:

 
技术  类型  主流机型  功耗
 LCD  LCD+LED背光   四颗星
 TFT-LCD   三颗星 
 IPS iphone  三颗星 
 SLCD HTC、三星Nexus S(19023)  两颗星 
 OLED  AMOLED  三星Nexus S(19020) 一颗星
 Super  AMOLED  三星 一颗星 

技术参数的含义:

1、LCD——液晶显示屏(liquid crystal display)

2、OLED——有机发光二极管(Organic Light Emitting Diode)

类型里面的参数含义:

1-1)LCD+LED背光:

(1)LED(发光二极管(light-emitting diode))

(2)背光(LED背光是指用LED(发光二极管)来作为液晶显示屏的背光源。和传统的CCFL(冷阴极管)背光源相比,LED具有低功耗、低发热量、亮度高、寿命长等特点,有望近年彻底取代传统背光系统

(3)背光具体含义:在电子工业中,背光是一种照明的形式,常被用于LCD显示上。背光式和前光式不同之处在于背光是从侧边或是背后照射,而前光顾名思义则从前方照射。他们被用来增加在低光源环境中的照明度和电脑显示器、液晶荧幕上的亮度,以和CRT显示类似的方式产生出光。

1-2)TFT-LCD:

TFT(Thin Film Transistor)LCD即薄膜场效应晶体管LCD。液晶平板显示器,特别TFT-LCD,是目前唯一在亮度、对比度、功耗、寿命、体积和重量等综合性能上全面赶上和超过CRT(CRT种使用阴极射线管(Cathode Ray Tube)的显示器)的显示器件,它的性能优良、大规模生产特性好,自动化程度高,原材料成本低廉。

1-3)IPS:

IPS(In-Plane Switching,平面转换)技术是目前世界上最先进的液晶面板技术。 IPS就是表面附着了一层树脂的膜,如同人带眼镜一样。相比其他面板技术(如TN面板和VA面板),IPS屏的特别之处在于不是预先给液晶分子定向成为透光模式,而是定向成为不透光的模式,透光的多少通过与液晶分子定向方向垂直的电极决定,电压越高,扭转的分子就越多,从而实现光线的精确控制。

1-4)SLCD:

SLCD是英文Splice Liquid Crystal Display的缩写,即拼接专用液晶屏。

2-1)AMOLED:

AMOLED(有源矩阵有机发光二极体或主动矩阵有机发光二极体,英语:Active-matrix organic light-emitting diode),是一种应用于电视和移动设备中的显示技术。其中OLED(有机发光二极体)描述的是薄膜显示技术的具体类型-有机电激发光显示,AM(有源矩阵体或主动式矩阵体)指的是背后的像素寻址技术。截至2011年,AMOLED技术被用在移动电话和媒体播放器

2-2)Super AMOLED

AMOLED屏幕具备着响应速度快,自发光,显示效果优异以及更低电能消耗的优点。而早期AMOLED屏幕所面临的面板尺寸有限以及寿命相比TFT较短的缺陷也在不断革新的技术支持下缩短着差距。三星推出的全新Super AMOLED(全称:Super Active Matrix/Organic Light Emitting Diode)超炫屏,相比传统AMOLED炫屏而言,摒弃了之前触控感应层+显示层的架构设计,操控更为灵敏。此外,取消玻璃覆盖层还带来了更佳的阳光下显示效果。同时,Super AMOLED还搭载了 mDNIe(移动数字自然图像引擎)技术能从任意角度观看并做出快速的反应。

注:bat面试技巧——按照官网文档,话不在多,说到点上才是

1)如何较少电量问题:

(1)取消广播

(2)用wifi

(3)减少服务更新服务

2)小米手机为何省电?

秘诀在于:尽可能缩短对一切资源占用的时间

例如,尽可能减少:

(1)CPU消耗(轮询线程?什么是轮询线程?什么情况下需要轮询线程?如何做到减少轮询?root权限又是什么?如何获取?android底层是如何处理的?

一定要阅读android源码才行啊,加油!!想办法上去官网)

(2)唤醒频率(weaklock,什么是weaklock,函数?这个主要是指什么唤醒?屏幕还是什么?)

(3)联网时长(失败重试?是指失败后不重试?)

(4)屏幕、GPS、相机使用时间(这个如何做到呢?这个不应该是由人员来控制的吗?我想用多长时间的相机?还是说我开启前减少开启不必要的东西?然后关闭后尽快结束,不逗留)

(5)SD卡读写

具体些,在onPause()方法中可以:

(1)停止持续耗费CPU的操作,如动画?这个如何停止?指的是什么动画?

(2)释放系统资源,如摄像头?摄像头进程什么时候存在?还是说所谓退出其实并没有退出

注:所谓测试电量最终目的也是为了如何减少电量,从根源出发,了解原因,才能真正遏制电量流失,否则用什么电量管家之类的测试出来又有什么意义呢?

如何愿意测,就自己尝试写代码去测试,阅读源码是第一步!

注:解读android系统的无节操行径——http://blog.csdn.net/21cnbao/article/details/7686907

(1)负责一个挂掉的service重启

android四大组件是独立的,界面关掉(UI主线程退出),serviece还是可以随意跑啊

二、a:整机电池续航-脱离数据线(所谓的电池续航,就是说尽量从各个方面控制电量,减少电量损耗)

包括以下多个点:(得自己找代码看,主要是可以对竞品机器进行一个整机的相同操作的处理,查看电量消耗情况)

1、屏幕点亮关闭——难点

以用户习惯切入,确立用例,大概用户会做哪些操作?

2、飞行模式自动切换

3、网络连接自动切换(3G和2G)——难点(反射)

(1)概念解析:什么是反射?在代码中具体如何做到反射?

4、WiFi和蓝牙开启关闭

5、短信发送

6、彩信发送——难点

7、音乐播放器开启关闭

8、SD卡

9、视频播放

10、摄像头

11、E-Mail

12、 通话——难点

三、进程级别监控预备知识

省电,就是要减少CPU的消耗

复习概念:CPU频率、CPU时间片

希望精确量化应用程序对CPU的消耗,首先需要固定CPU频率,然后获取执行操作进程所占用的CPU时间片总数

1、固定CPU频率:

/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq

2、测试开始前和结束后获取进程在用户态和系统态消耗的时间片总数

cat /proc/1/stat

生成的结果:-1后面的数字第6+第7的总和

四、b:单进程电池续航-插usb

纳尼?没看懂。。。。找机会继续啃,主要还是要看开发文档,还得自己写代码!!!!

五、总结

涉及到一些面试技巧:

1、影响电量的因素?

(1)手机本身使用材质

(2)广播(一定要在使用的时候再去动态创建)

(3)3G和WiFi(用WiFi,少用3G,又花钱又费电,不是好玩意)

(4)减少服务

2、怎么让手机保持唤醒状态?(浅度休眠和深度休眠会是不一样的)

3、怎么做电量测试?到app级别的

4、做电量测试是要考虑瞬间值还是平均值?

废话,当前平均值,举个例子就是:瞬间值到10000,其他全是1;就比如说有一姑娘或小伙,都是有某一瞬间是漂亮或者帅的,但是我们说他是什么样的,还是要关注生活当中大部分情况下的啊

5、电量对比怎样做?参考和标准如何?

答案就是:以世界主流为参考和标准

网易云课堂:

http://study.163.com/course/courseLearn.htm?courseId=712011#/learn/video?lessonId=878098&courseId=712011

http://study.163.com/course/courseLearn.htm?courseId=712011#/learn/video?lessonId=878099&courseId=712011

金阳光测试

新浪微博:金阳光woody

         

          网站地址

1、百度搜:金阳光测试

2、官网:www.goldensunshine.cc

微信公众号

app电池续航上&&下--Android自动化测试学习历程的更多相关文章

  1. 自动化预备知识上&&下--Android自动化测试学习历程

    章节:自动化基础篇——自动化预备知识上&&下 主要讲解内容及笔记: 一.需要具备的能力: 测试一年,编程一年,熟悉并掌握业界自动化测试工具(monkey--压力测试.monkeyrun ...

  2. MonkeyRunner原理初步--Android自动化测试学习历程

    章节:自动化基础篇——MonkeyRunner原理初步 主要讲解内容及笔记: 一.理论知识和脚本演示 最佳方式是上官网文档去查看monkeyrunner的介绍,官网上不去,就找了一个本地的androi ...

  3. Robotium原理初步--Android自动化测试学习历程

    章节:自动化基础篇——Robotium原理初步(第四讲) 主要讲解内容与笔记: 一.基于控件 1.spinner——下拉菜单 2.TabHost——左右滑动选择菜单,类似电话本 3.Gallery—— ...

  4. 跨进程(同一app不同进程之间通信)——Android自动化测试学习历程

    视频地址:http://study.163.com/course/courseLearn.htm?courseId=712011#/learn/video?lessonId=877122&co ...

  5. Android-Junit-Report测试报告生成——Android自动化测试学习历程

    视频地址: http://www.chuanke.com/v1983382-135467-384869.html 这个内容其实已经在用了,我在上一篇文章robotium—只有apk文件的测试中已经讲过 ...

  6. Instrumentation类——Android自动化测试学习历程

    这里需要把Instrumentation类的视频的上.中.下三集一起看,把内容总结一下... 视频地址: http://study.163.com/course/courseLearn.htm?cou ...

  7. 百度Cafe原理--Android自动化测试学习历程

    主要讲解内容及笔记: 一.Cafe原理 Cafe是一款自动化测试框架,解决问题:跨进程测试.快速深度测试 官网:http://baiduqa.github.io/Cafe/ Cafe provides ...

  8. Appium原理初步--Android自动化测试学习历程

    章节:自动化基础篇——Appium原理初步(第七讲) 本期关键词: Appium.跨语言跨平台.Bootstrap 主要讲解内容及笔记: 一.what is appium 一种封装了uiautomat ...

  9. Selenium原理初步--Android自动化测试学习历程

    章节:自动化基础篇——Selenium原理初步(第五讲) 注:其实所有的东西都是应该先去用,但是工具基本都一样,底层都是用的最基础的内容实现的,测试应该做的是: (1)熟练使用工具,了解各个工具的利弊 ...

随机推荐

  1. 1011 World Cup Betting (20 分)

    1011 World Cup Betting (20 分) With the 2010 FIFA World Cup running, football fans the world over wer ...

  2. Intellij IDEA 中如何查看maven项目中所有jar包的依赖关系图

    Maven 组件界面介绍 如上图标注 1 所示,为常用的 Maven 工具栏,其中最常用的有: 第一个按钮:Reimport All Maven Projects 表示根据 pom.xml 重新载入项 ...

  3. 第3章 文件I/O(7)_高级文件操作:存储映射

    8. 高级文件操作:存储映射 (1)概念: 存储映射是一个磁盘文件与存储空间的一个缓存相映射,对缓存数据的读写就相应的完成了文件的读写. (2)mmap和munmap函数 头文件 #include&l ...

  4. CentOS修改TimeZone

    查看: date -R +0800   修改: sudo rm -rf /etc/localtime sudo cp /usr/share/zoneinfo/America/Los_Angeles / ...

  5. ajax控制页面跳转

    一开始我是这么写的,一直报错,跳转路径解析不了,显示为问号: 前台html: <form> <table style="margin: 200px auto;"& ...

  6. re模块 ,random模块

    # 在python中使用正则表达式 # 转义符 : 在正则中的转义符 \ 在python中的转义符# 正则表达式中的转义 :# '\(' 表示匹配小括号# [()+*?/$.] 在字符组中一些特殊的字 ...

  7. 转载 spring事务增强

    1.预备知识 aop概念请参考[http://www.iteye.com/topic/1122401]和[http://jinnianshilongnian.iteye.com/blog/141859 ...

  8. selenium+python自动化97--unittest参数化(paramunittest)

    前言 paramunittest是unittest实现参数化的一个专门的模块,可以传入多组参数,自动生成多个用例 前面讲数据驱动的时候,用ddt可以解决多组数据传入,自动生成多个测试用例.本篇继续介绍 ...

  9. openstack 基镜像与差异镜像的整合

  10. linux系统更新rpm包问题 ,报错rhn-check-2.0.2-5.el7.noarch has missing requires of yum-rhn-plugin >= ('0', '1.6.4', '1')

    报错信息: rhn-check-2.0.2-5.el7.noarch has missing requires of yum-rhn-plugin >= ('0', '1.6.4', '1') ...