##########################################################
cts测试的一些命令:
1 2 3 4 5 6 7 |
sudo chmod a+x copy_media.sh ./copy_media.sh all adb install CtsDeviceAdmin.apk ./cts-traded run cts --plan CTS //CTS全量测试 run cts -c .... -m ..... // 单项测试 run cts --continue-session sessionID //fail项测试 |
##########################################################
cts测试前需要注意的事项:
1) 固定版本:BUILD_FINGERPRINT
baseline/build/core/Makefile
baseline/vendor/XXX/m2222/区域选择/buildinfo.sh
echo "ro.build.fingerprint=Aaaa/ass/ass:$PLATFORM_VERSION/$BUILD_ID/$BF_BUILD_NUMBER:$TARGET_BUILD_VARIANT/$BUILD_VERSION_TAGS"
vendor/vvv/XXX/m2222/ProjectConfig.mk
MTK_SIGNATURE_CUSTOMIZATION=yes;
vendor/XXX/m2222/区域选择/gms.mk
修改clientID及gms包的版本
2) 查看手机 flash的大小
当>=1G时确认下是否需要使用多用户~
3) 手机助手会影响很多网络问题过不了
vendor/myos/configs/p2222/区域/configs.mk
MYOS_APE_PHONEASSIST_SUPPORT=yes--->no
##########################################################
cts测试遇到的问题点:
1) -testExternalStorageNone/testExternalStorageRead/testExternalStorageWrite
测试sd卡存储功能的,在测试的时候可以将sd卡格式化再测试;
多用户的话,由于几个宏控的设置导致sd卡不能存储,mtk那边release了一个sdcard0.c文件,需要修改一下~
设置:platform.xml文件不需要修改
*.rc文件将export前面的#去掉:device/xxxx/vvvv2342_34c_r/init.project.rc
2) -testBuildFingerprint
没有固定版本号的报错信息;
修改: baseline/vendor/XXX/m2222/区域选择/ProjectConfig.mk和buildinfo.sh
其中ProjectConfig.mk是将宏控打开:MTK_SIGNATURE_CUSTOMIZATION = yes
buildinfo.sh中将echo "ro.build.fingerprint=$BUILD_FINGERPRINT" 修改成
echo "ro.build.fingerprint=Xxxx/xx/xxx:$PLATFORM_VERSION/$BUILD_ID/$BF_BUILD_NUMBER:$TARGET_BUILD_VARIANT/ $BUILD_VERSION_TAGS"
3) -testOctane
设置默认浏览器为chrome
4) -testDumpProtected/testTrafficStatsForLocalhost
多测试几便就能通过~
5) -testNoAttributesAfterLastPublicAttribute/testDnsWorks
前者可以豁免,后者是将网络转换成IPV6就可以测试通过;
6) -testGetWithId/testGet
跑单项抓log,根据log信息来确定问题点:
run cts -c android.media.cts.CamcorderProfileTest -m testGetWithId
adb logcat > ./testGet_FAIL.txt 一般问题是在某些像素的照片不支持所导致~
Log里的关键字可以搜索(1024x768)is not supported
更改该文件baseline/vendor/mediatek/proprietary/custom/xxxx/hal/D1/sendepfeature/xxx_mipi_raw/config.ftbl.xxx_mipi_raw.h
7) -testBatchAndFlush/testBatchAndFlushWithMultipleSensors
陀螺仪和传感器方面的测试,首先确认机型是否支持该项功能,然后再进行测试修改;
如果支持传感器功能则需要进行校准后进行测试该项,否则将宏关闭,多测试几遍会pass。
baseline/vendor/XXX/m2222/区域选择/ProjectConfig.mk
CUSTOM_KERNEL_GYROSCOPE = yes-->将yes删掉
安装GameCube.apk做一下校准,过程:安装GameCube.apk-->进入GameCube.apk -->选择“orienttion Sensor” -->"Raw Output" -->查看Accurcy的值
正常的为: high / medium /low,若看到的是unkonw, 可以拿手机在各个方向晃几下,显示正常了再开始测试即可。(尽可能离机箱远一些)
8) -testAeRegions/testAfRegions/testTakePicture/testTouchForFocus/testBurstVideoSnapshot
这几项使用来测试相机的,首先保证测试的环境:光线充足,摄像头未被遮挡等;
9)-testIsRunning/- testGetAnimatedFraction/testGetAnimatedValue/testGetAnimatedValue_PropertyName
动画播放fail,首先确认设置-->开发者选项-->窗口动画缩放/动画程序时长调整/过渡动画缩放是否设置为1x
setting-->Developer options-->Window animation scale/Transition animation scale/Animation duration scale-->1x
10) -testIsRunning
googe patch的问题
修改:baseline/frameworks/av/media/libstagefright/ACodec.cpp
#define MP3_MULTI_FRAME_COUNT_IN_ONE_INPUTBUFFER_FOR_PURE_AUDIO 2
#define MP3_MULTI_FRAME_COUNT_IN_ONE_INPUTBUFFER_FOR_VIDEO 1
#define MP3_MULTI_FRAME_COUNT_IN_ONE_OUTPUTBUFFER_FOR_PURE_AUDIO 2
#define MP3_MULTI_FRAME_COUNT_IN_ONE_OUTPUTBUFFER_FOR_VIDEO 1
将原来的1修改成2;
11)-testOtherH263FlexArbitraryH/testOtherH263FlexArbitraryW/testOtherH263FlexMaxMax/testOtherH263SurfNearMaxMax....
fail的原因是263有些音频格式不支持,修改:baseline/device/mediatek/xxxx/media_codecs.xml
12)-testNoAttributesAfterLastPublicAttribute
查看此次做了什么修改,需要还原才能解决。
可以从此路径开始搜索 baseline/vendor/xxxx/requirment/区域/app/Mms/res/xml/notificationpreferences.xml
##########################################################
GTS测试
1)--com.google.android.webview.xts.WebViewTest
testWebViewFrameworkConfigSettingIsSet/testWebViewIsPreinstalled/testWebViewIsSignedWithCorrectKeys/testWebViewIsSystem
修改:vendor/google/products/gms.mk
或者vendor/XXX/m2222/区域选择/gms.mk
PRODUCT_PREBUILT_WEBVIEWCHROMIUM := no-->yes
这些测试项都是测试是否有正确安装GMS包的webview,除了改成yes 之外,把相关部分复原为gms.mk中的原始的设定, 重新 build 后进行测试;
2)--testSecurityPatchFound
修改:baseline/vendor/XXX/m2222/区域选择/buildinfo.sh
加上:echo "ro.build.version.security_patch=$PLATFORM_SECURITY_PATCH"
3)--com.google.android.xts.afw.AfwRequiredAppsOverlaysTest
testContactsRequiredManagedDeviceOverlay/testDialerRequiredManagedDeviceOverlay/testLauncherRequiredManagedDeviceOverlay
修改:1.baseline/vendor/google/products/gms_overlay/packages/apps/ManagedProvisioning/res/values/vendor_required_apps_managed_device.xml
2.baseline/vendor/google/products/gms_overlay/packages/apps/ManagedProvisioning/res/values/vendor_required_apps_managed_profile.xml
1.添加: <item>com.android.contacts</item>
<item>com.android.dialer</item>
<item>com.ape.launcher3</item>
去掉:<!--item>com.google.android.contacts</item--> <!-- Google Contacts -->
2.添加:<item>com.android.contacts</item>
去掉<!--item>com.google.android.contacts</item--> <!-- Google Contacts -->