【转】android cts failed items
原文网址:http://blog.csdn.net/linsa0517/article/details/19031479
Fail的一些修改
1、直接设置问题
|
estUnknownSourcesOffByDefault |
fail |
junit.framework.AssertionFailedError: Deviceshould not ship with 'Unknown Sources' enabled by default.expected:<0> butwas:<1> atandroid.provider.cts.Settings_SecureTest.testUnknownSourcesOffByDefault(Settings_SecureTest.java:183) |
这种fail最好解决,直接按照字面理解就OK,设置---安全---默认关闭:未知来源。
2、permission
|
-- testSensorFeatures |
fail |
junit.framework.AssertionFailedError:PackageManager#hasSystemFeature(android.hardware.sensor.accelerometer)returns true but SensorManager#getSensorList(1) shows sensors []expected:<true> butwas:<false> atandroid.app.cts.SystemFeaturesTest.assertFeatureForSensor(SystemFeaturesTest.java:300) |
一般情况修改 - > frameworks/base/data/etc/*.xml 文件,例如
android.hardware.camera.xml,platform.xml等文件,这边的文件定义了设备具有的一些权限。
--------------------------------------------------------------------------------------------------------------------
android.app.cts.SystemFeaturesTest#testSensorFeatures FAIL
junit.framework.AssertionFailedError: PackageManager#hasSystemFeature(android.hardware.sensor.light) returns true but SensorManager#getSensorList(5) shows sensors [] expected:<true> but was:<false>
原因:手机无光感
解决方法:去除..\mediatek\config\{PROJECT}\android.hardware.sensor.light.xml及
android.hardware.sensor.proximity.xml文件中相应选项
3、由测试而引起的非测试项出错
|
-- testRecordingHint |
fail |
java.lang.RuntimeException: start failed. atandroid.media.MediaRecorder.start(Native Method) |
这种情况要根据Logcat去查看RuntimeException的具体错误。通常可以先不改,因为很难查错。
4、网络问题
|
-- test_isReachable |
fail |
java.net.UnknownHostException: Unable to resolvehost "www.google.com": No address associated with hostname atjava.net.InetAddress.lookupHostByName(InetAddress.java:426) |
这类问题是由于国内的网络无法访问国外网站导致的,最好的办法就在公司搭建一个VPN,链接出去。
5、系统文件权限
|
-- testAllFilesInSysAreNotWritable |
fail |
junit.framework.AssertionFailedError: Foundwritable: [/sys/devices/platform/malata_ts.0/tsclass/tsclass0/ts_power,/sys/devices/platform/malata_ts.0/tsclass/tsclass0/ts_en_file,/sys/devices/platform/malata_ts.0/tsclass/tsclass0/ts_Calibrate] atandroid.permission.cts.FileSystemPermissionTest. testAllFilesInSysAreNotWritable(FileSystemPermissionTest.java:364) |
|
-- testNoSetuidTcpdump |
fail |
junit.framework.AssertionFailedError at android.security.cts.BannedFilesTest. assertNotSetugid(BannedFilesTest.java:59) |
这些问题是系统文件权限的问题,解决方法比较土,就是全局搜索该文件,查看那些对该文件操作的脚本,然后修改即可。
上面两个fail的解决方法是:
a. 修改kernel/drivers/input/touchscreen/malata_ts.c
__ATTR(ts_power, 0777, NULL,ts_set_point),
__ATTR(ts_en_file, 0777, NULL,ts_set_point),
__ATTR(ts_ Calibrate, 0777,NULL, ts_set_point),
b. 修改system/core/include/private/android-filesystem-config.h
{ 06755, ADD_ROOT, ADD_ROOT,“system/xbin/tcpdump”}
-------------------------------------------------------------------------------------------------
| android.app.cts.SystemFeaturesTest | ||
| -- testLocationFeatures |
fail
|
junit.framework.AssertionFailedError: PackageManager#hasSystemFeature should NOT return true for android.hardware.location.networkat android.app.cts.SystemFeaturesTest.assertNotAvailable(SystemFeaturesTest.java:375)
|
原因:未配置相对应功能(开启Location access中所有开关(gps和wifi))
解决方法:将..\frameworks\base\data\etc\android.hardware.location.gps.xml拷贝到
..\mediatek\config\{PROJECT}\android.hardware.location.gps.xml目录下并做修改
<permissions>
<feature name="android.hardware.location" /> ----打开
<feature name="android.hardware.location.network" /> ----打开
<feature name="android.hardware.location.gps" /> ---无GPS则关此项
</permissions>
6、这种情况最多的。
|
-- testFocusDistances |
fail |
junit.framework.ComparisonFailure:expected:<infinity> butwas:<auto> at android.hardware.cts.CameraTest.testFocusDistancesByCamera (CameraTest.java:1386) |
对于这个fail的原因是CTS对摄像头测试时,对摄像头进行参数设置,然后在读取参数后,参数出错。
这种情况要找到CameraTest源码,通常在source/cts/...下面,我们编译时没有编译到这里,仅查看代码,例如找到CameraTest.java,打开后找到1386行,行数一般情况下不会有出入,除非source下面的cts版本和下载的cts版本不一致才会找不到,找到testFocusDistancesByCamera,然后根据代码查看具体的测试,然后在找camera的源代码,使用Log跟踪,当然这个测试一定要结合做该模块的人一起改才行,不然很容易引起其他问题。
其中camera CTS测试代码在:
source/cts/tests/tests/hardware/src/android/hardware/cts/CameraTest.java
摄像头设置的相关代码在:Source/device/Samsung/exynos4/libcamera/下面,有SecCameraHWInterface_zoom.cpp、SecCameraHWInterface_zoom.h、SecCamera_zoom.cpp、SecCamera_zoom.h
找到之后通过修改后测试再修改后再测试直到CTS PASS。
(对于摄像头,应注意是几个摄像头,不然测试可能会对两个一起测试,这样就算一个摄像头调好了,能PASS了,另外一个过不了也是FAIL的。)
---------------------------------------------------------------------------
android.app.cts.SystemFeaturesTest#testCameraFeatures FAIL
junit.framework.AssertionFailedError: PackageManager#hasSystemFeature should NOT return true for android.hardware.camera.autofocus
原因:手机无自动对焦功能
解决方法:去除..\mediatek\config\{PROJECT}\android.hardware.camera.xml文件中
<feature name="android.hardware.camera.autofocus" />
ro.sf.lcd_density=160可以通过测试,但是Blaze Launcher菜单显示不能全屏,考虑修改api
12.Libcore cts部分
13、DisplayRefreshRateTest
| android.view.cts.DisplayRefreshRateTest | ||
| -- testRefreshRate |
fail
|
junit.framework.AssertionFailedError at android.view.cts.DisplayRefreshRateTest.testRefreshRate(DisplayRefreshRateTest.java:168) |
A3.关于这个刷帧率的问题,采用临时修改的方法
- mRefreshRate = fbDev->fps-5;
- mRefreshRate = fbDev->fps-5;
调整为:
- mRefreshRate = fbDev->fps-4;
- mRefreshRate = fbDev->fps-4;
14、
| Compatibility Test Package: android.permission | ||
| Test | Result | Details |
| android.permission.cts.FileSystemPermissionTest | ||
| -- testAllFilesInSysAreNotWritable | fail | junit.framework.AssertionFailedError: Found writable: [/sys/devices/virtual/input/input3/enable_ps, /sys/devices/pci0000:00/0000:00:03.4/i2c-5/5-0068/delay, /sys/devices/virtual/input/input3/delay_ps, /sys/devices/virtual/input/input3/enable_als, /sys/devices/virtual/input/input3/delay_als, /sys/devices/pci0000:00/0000:00:03.4/i2c-5/5-0068/enable, /sys/devices/virtual/input/input3/enable_gs] at android.permission.cts.FileSystemPermissionTest.testAllFilesInSysAreNotWritable(FileSystemPermissionTest.java:577) |
将相应的delay_ps这些文件进行设置权限,rw-r-r
15、
| Compatibility Test Package: android.view | ||
| Test | Result | Details |
| android.view.cts.DisplayRefreshRateTest | ||
| -- testRefreshRate | fail | junit.framework.AssertionFailedError at android.view.cts.DisplayRefreshRateTest.testRefreshRate(DisplayRefreshRateTest.java:198) |
可以从Log中看到需要设置的刷新率的大小。需要让驱动修改该值
16、
| android.media.cts.StreamingMediaPlayerTest | ||
| -- testHLS | fail | junit.framework.AssertionFailedError: Stream did not play successfully after all attempts at android.media.cts.MediaPlayerTestBase.playVideoWithRetries(MediaPlayerTestBase.java:196) |
| -- testHTTP_H264Base_AAC_Video1 | fail | Test failed to run to completion. Reason: 'Instrumentation run failed due to 'junit.framework.AssertionFailedError''. Check device logcat for details |
| -- testHTTP_H264Base_AAC_Video2 | fail | Test failed to run to completion. Reason: 'Instrumentation run failed due to 'junit.framework.AssertionFailedError''. Check device logcat for details |
HLS测试是这样:带宽分为200000,360000,500000, 800000, 1200000,客户端会根据当前获取的带宽值选择是否播放高清还是普通视频,
公司的带宽比较大,但实际真正的带宽可能会小好多,导致去播放高清视频是会很卡,然后失败
解决方法:
参考8x25平台做法,在system.prop里面对带宽做限制:
media.httplive.max-bw = 360000
最大带宽限制在360000,这样,测试HLS的时候,就只会去播放200000的普通视频,基本可以通过。
【转】android cts failed items的更多相关文章
- Android CTS Test failed to run to conmpletion 测试超时问题
引用“Android cts all pass 全攻略”里面的一段话: ❀ testcase timeout 测试某个testcase的时候一直出现 “........”,迟迟没有pass或者fail ...
- 监听Android CTS测试项解决方案(一)
前言: 首先这里需要详细叙述一下标题中"监听Android CTS测试项解决方案"的需求.这里的需求是指我们需要精确的监听到当前CTS测试正在测试的测试项. 因为我们知道CTS认证 ...
- 如何debug android cts
启动和关闭ADB服务(adb start-server和adbkill-server) 经作者测试,模拟器在运行一段时间后,adb服务有可能(在Windows进程中可以找到这个服务,该服务用来为模拟器 ...
- Android CTS測试Fail项改动总结(四)
Android5.1上的測试 1.android.security.cts.SELinuxDomainTest# testInitDomain fail 打印的log junit.framework. ...
- 监听Android CTS测试项解决方案(二)
二,监听当前测试项是否是Accelerometer Measurement Test测试项 通过第一种方式介绍的,我们可以得到当前处于活动状态的Activity类似监听CTS测试当前的测试项.但是由于 ...
- Unity出现 error building player exception android (invocation failed)
今天在编译Android的时候出现这个错误 error building player exception android (invocation failed) 百度谷歌之后,看到xuanyuson ...
- android CTS测试
CTS认证是获得Google推出的Android系统中Android Market服务的前提 CTS兼容性测试的主要目的和意义在于使得用户在Android系统的应用过程中,有更好的用户体验,并展现出A ...
- Android CTS 测试总结【转】
Android CTS 测试总结[转] 最近一直在做Android兼容性测试,根据Android官网给出的android-cts-manual 配置好了device后,开始测试. 首先配置软件环境: ...
- Android N和O中使用adb shell dpm set-device-owner 'com.android.cts.verifier/com.android.cts.verifier.managedprovisioning.DeviceAdminTestReceiver' setup Device Owner失败
PC端出现如下log: D:\workspace\AndroidO\CTS\CTS_Verifier>adb shell dpm set-device-owner 'com.android.ct ...
随机推荐
- 【转】Java.Math API 反正切算角度(四个象限情况要调整)
原文网址:http://hunter090730.iteye.com/blog/485770 Math.PI 记录的圆周率Math.E 记录e的常量Math中还有一些类似的常量,都是一些工程数学常用量 ...
- Asp.Net 构架(Http Handler 介绍) - Part.2
原文地址:http://www.cnblogs.com/JimmyZhang/archive/2007/09/15/894124.html 引言 在 Part.1 Http请求处理流程 一文中,我们了 ...
- OpenXML - 如何导出List<DataModel>到Excel -- Part 1
最近这几天研究OpenXML: 这是Open XML的一些介绍: Open XML 介绍:http://baike.baidu.com/view/1201978.htm 下载:http://www.m ...
- 编程之美2015初赛第一场 hihoCoder #1156 : 彩色的树(染色问题)
#1156 : 彩色的树 时间限制:2000ms 单点时限:1000ms 内存限制:256MB 描述 给定一棵n个节点的树,节点编号为1, , …, n.树中有n - 1条边,任意两个节点间恰好有一条 ...
- jQuery 之$.proxy() 方法
定义和用法 $.proxy 方法接受一个已有的函数,并返回一个带特定上下文的新的函数. 该方法通常用于向上下文指向不同对象的元素添加事件. 参数 描述 function 要被调用的已有的函数. con ...
- 【精品】Android游戏类源码大集合
Android自定义效果——随机抽奖 一个模拟抽奖的效果,用户设定若干个选项,添加之后,就可以通过程序,来帮助随机选择其中一项出来.这个类似超市里面那种指针转盘抽奖,run之后是一个动态效果图,初始快 ...
- JavaScripts学习日记——ECMAscript
1.Function对象 Function是一个很特殊的对象,特殊在该对象就像java中的方法一样,可以运行,可以传参数. 三种定义function对象的方法: 1.function fun1(a,b ...
- 阿里云主机SSD实例磁盘测试及IO调度算法调整
测试背景及环境说明 阿里云ECS 主机配置: 4C8G root@zabbix-master:~# grep -i "model name" /proc/cpuinfo model ...
- 单例模式(Singleton)详解——转载
单例模式(Singleton) 首先来明确一个问题,那就是在某些情况下,有些对象,我们只需要一个就可以了, 比如,一台计算机上可以连好几个打印机,但是这个计算机上的打印程序只能有一个, 这里就可以通过 ...
- Linux下MySql启动时报错
/opt/mysql/support-files/mysql.server startmy_print_defaults: [ERROR] Found option without preceding ...