【vts】 VtsFastbootVerification
請升級adb/fastboot到最新版 (Ubuntu版本需要18.04版本以上,adb需要是41的) 刷GSI時記得清一下緩存 fastboot-w 請確保以下兩條命令 執(zhí)行OK的,再跑VTS fastboot reboot bootloader fastboot reboot fastboot
【gts】GtsSuspendAppsTestCases 2 cases failed
com.google.android.suspendapps.gts.SuspendPackagesTest#testOpCameraOnSuspend fail java.lang.AssertionError: Op CAMERA allowed while package is suspended.
com.google.android.suspendapps.gts.SuspendPackagesTest#testOpRecordAudioOnSuspend fail java.lang.AssertionError: Op RECORD_AUDIO allowed while package is suspended.
-- Google Patch:
https://android.googlesource.com/platform/frameworks/av/+/b0de569edd2d27b8dae9e3048f9c131b6ebc2d45
https://android.googlesource.com/platform/frameworks/base/+/873e19f63f97dbb74db499c1145a1102b1ce8fda【vts】GraphicsComposerHidlCommandTest.SET_COLOR_TRANSFOR
Fail:hardware/interfaces/graphics/composer/2.1/vts/functional/VtsHalGraphicsComposerV2_1TargetTest.cpp:681
-- 這個測試項是做SET_COLOR_TRANSFORM,但是driver層沒有相關(guān)代碼,導(dǎo)致了失敗。可申請patch【cts】CtsVideoTestCases testH263Goog0Qual0176x0144 & testMpeg4Goog0Qual0176x0144 fail
junit.framework.AssertionFailedError: rms error is bigger than the limit
-- 更新Mainline Media Module;合入patch:https://android-review.googlesource.com/c/platform/frameworks/av/+/1116737/【vts】SystemVendorTest.ServedHwbinderHalsAreInManifest_32bit
test/vts-testcase/hal/treble/vintf/SystemVendorTest.cpp:78 Expected: (manifest_hwbinder_hals_.find(name)) != (manifest_hwbinder_hals_.end()), actual: 8-byte object <68-65 21-FE 7F-00 00-00> vs 8-byte object <68-65 21-FE 7F-00 00-00> android.hardware.radio.config@1.0::IRadioConfig/default is being served, but it is not in a manifest.
-- ALPS04839613【ITS】ITS test effects 測試fail
對于scene2/test_effects測試fail。 EFFECTS = {0: 'OFF', 1: 'MONO', 2: 'NEGATIVE', 3: 'SOLARIZE', 4: 'SEPIA', 5: 'POSTERIZE', 6: 'WHITEBOARD', 7: 'BLACKBOARD', 8: 'AQUA'}
-- 這些effects mode 目前平臺并沒有支持,ISP中有對應(yīng)的flow,但是并沒有做實際的處理;因此測試中會出現(xiàn)一些effect 沒有效果導(dǎo)致fail
方案:刪除相對應(yīng)的imgsensor_metadata的配置【gts】GtsWebViewHostTestCases 4 cases failed
gms包的問題,可更換apk【cts】android.video.cts.VideoEncoderDecoderTest#testAvcGoog0Perf0720x0480 fail
-- XML 提供的 google avc codec framerate range 不符合 CTS 預(yù)期
調(diào)整 XML:google avc codec framerate range <MediaCodec name="c2.android.avc.encoder" type="video/avc" update="true"><Limit name="measured-frame-rate-720x480" range="11-25" /> https://source.android.com/devices/media/oem.html#2_achievable_frame_rates_for_video_codecs
【cts】USB Audio Peripheral Attributes Test fail
通過OTG連接audio box,提示屬性不匹配
下面的字符串少了空格,請加上空格后測試。 564 std::string patternCTS2 = "AudioBox 44 VSL"; 565 std::string patternCTS3 = "AudioBox 22 VSL";
【cts】CtsViewTestCases 測試fail
CTS/VTS 檢測edgeColor fail fail log: android.view.cts.PixelCopyTest#testDialogProducer fail java.lang.AssertionError: Bottom edge; expected=ffffff00, actual=ff424242 android.view.cts.PixelCopyTest#testDialogProducerCopyToRGBA16F fail java.lang.AssertionError: Bottom edge; expected=ffffff00, actual=ff8b8b8b
https://android-review.googlesource.com/c/platform/cts/+/1254104【cts】testFlashTurnOff fail
該項測試要求: flash從on->off的狀態(tài)是[4,2], 從off->on(flash_mode_torch下發(fā)之前),flash的狀態(tài)要求是[2,4] 從off->on的狀態(tài)是[4,3] 而在測試過程中因為開關(guān)燈延遲的原因,導(dǎo)致AP 拿到的flash state 不符合預(yù)期。
【cts】How to fix SELinuxHostTest#testNoBugreportDenials fail
這是因為從Android Q開始 Google 新增了對dumpstate denials 的檢查(AOSP/667966, AOSP/742461), 如果在執(zhí)行Bugreport命令后,有出現(xiàn)dumpstate 的avc denied log,該測項就會fail.
1. 確認相關(guān)目錄/文件是Google原生的還是MTK的還是客制化的,找對應(yīng)owner確認相關(guān)目錄/文件是否有在使用,若沒有在使用,則移除之。若有在使用,則要確認它的SELinux context 是否有正確配置。若context未正確配置,請在file.te和file_contexts中分別做定義和綁定操作;2. 評估dumpstate對它的訪問是否是合理的/預(yù)期的,如不需要授權(quán)(即不需要加allow rules),則需要添加對應(yīng)的dontaudit rule來避免印出avc denied log。如:dontaudit dumpstate apex_mnt_dir:dir getattr;3. 若確實需要允許給dumpstate對它的訪問,則需要添加對應(yīng)的allow rule。如:allow dumpstate mnt_expand_file:dir getattr;
【vts】vendor.mediatek.hardware.presence@1.0::IPresence not available.
這類報錯的原因是,VTS工具檢測到此HIDL service alive,但是此service 對應(yīng)的HIDL在manifest中沒有定義 在Q版我們有對Presence做了refactor, Presence hidl service是不會被使用的, 所以可以將以下這兩個file中的 /device/mediatek/vendor/common/device.mk /device/mediatek/common/device.mk 這三行給拔掉 volte_uce_ua vendor.mediatek.hardware.presence@1.0.so DEVICE_MANIFEST_FILE += $(LOCAL_PATH)/project_manifest/manifest_presence.xm 以及移除掉以下這兩個file: /device/mediatek/vendor/common/project_manifest/manifest_presence.xml /device/mediatek/common/project_manifest/manifest_presence.xml
【cts】android.hardware.camera2.cts.ExtendedCameraCharacteristicsTest#testRecommendedStreamConfigurations fail
patch:ALPS04828678
【vts】VtsHalDrmV1_2Target 申請patch
【cts-v】How to decide whether the Audio Input Routing Notifications Test passed or not?
CTS Verifier 測試中,安裝CTS verifier apk后,進入Audio Input Routing Notifications測項 按照要求操作,先點擊Yes,然后點擊Record,再插入帶麥克風(fēng)的有線耳機,然后拔掉耳機,再點Stop。 這個過程是測試手機錄音設(shè)備能否在有線耳機和手機麥克風(fēng)之間正常切換,在操作過程中,由于點擊record或插拔耳機的操作順序不同,也許下方message中的數(shù)值會有所不同,但這個數(shù)值不是改CTS Verifier的目的,所以不用關(guān)心,只把握住測項的目的,符合測試要求,就是pass的。
【cts】android.media.cts.ImageReaderDecoderTest#testGoogH264Image
java.lang.RuntimeException: while c2.android.avc.decoder decoding swirl_132x130_h264: {color-format=2135033992, track-id=1, level=256, mime=video/avc, frame-count=31, profile=65536, language=und, display-width=132, csd-1=java.nio.HeapByteBuffer[pos=0 lim=9 cap=9], durationUs=2583333, display-height=130, width=132, max-input-size=1597, frame-rate=12, height=130, csd-0=java.nio.HeapByteBuffer[pos=0 lim=28 cap=28]}
Apply ALPS05081495 (2 patches) to update Google c2 h264/h265 decoder【CTSV】Audio Frequency Voice Recognition Test fail
Adjust UL total gain of VR for test case PASS 200 (32) -> 152 (20)
也可以再透過audio tuning tool 操作,去選取camera recording修改analog gain值,再抓取tuning tool 修改好的XML檔。
【cts】android.hardware.camera2.cts.CaptureRequestTest#testDigitalZoomPreviewCombinations fail
加入以下判斷條件: //just for fix google camera ,preview & capture always capture intent MINT32 rawType = 0; // ERawType_Proc+ char AppPackageName[256]={'\0'};+ ::property_get("com.android.camera2", AppPackageName, "com.mediatek.com");+ if(strcmp(AppPackageName,"com.android.camera2") == 0){ IMetadata::IEntry entry(MTK_P1NODE_RAW_TYPE); sp<IMetaStreamBuffer> pStremBuf = request.vIMetaBuffers[0]; IMetadata* pMetadata = pStremBuf->tryWriteLock(LOG_TAG); //tryReadLock ==> tryWriteLock @@ -415,7 +418,7 @@ submitRequest(AppRequest& request) MY_LOGE("Preview:MTK_P1NODE_RAW_TYPE:%d",entry.itemAt(0,Type2Type<MINT32>())); } pStremBuf->unlock(LOG_TAG,pMetadata); }
【vts】[Vsim]VtsTrebleVendorVintfTest
如果是Vsim項目 這個問題是因為AOSP在run VTS之前會強制把手機切成DSDS,但是VTS case還是會按照TSTS測試,所以造成fail。
Google有一筆change修改這個問題: https://android-review.googlesource.com/c/platform/frameworks/base/+/1217995/
【vts】VtsHalGraphicsMapperV2_1Target
1. DDK 的部分: 在 gralloc 模塊新增兩個 function, 以處理 VTS 測試所需的檢查: gralloc_validate_buffer_size (..) 以及 gralloc_get_transport_size(..)
2. AOSP 的部分: 增加對返回値的判斷: Platform/hardware/ graphics/mapper/2.1/utils/passthrough/include/mapper-passthrough/2.1/Gralloc0Hal.h
【vts】VtsHalKeymasterV4_0Target
Tee問題引起的,需要找對應(yīng)vendor解決
【cts】CtsTelephonySdk28TestCases android.telephony.sdk28.cts.CellInfoTest#testCellInfoSdk28 fail
需要申請patch ALPS04841218
【cts】[kernel3.18]VtsKernelNetTest failed
Failed是因為沒有enable CONFIG_XFRM_STATISTICS,所以找不到/proc/net/xfrm_stat'。 Google要求Q至少kernel4.9,而且CONFIG_XFRM_STATISTICS是在kernel4.9 default enable的,k50s project是kernel3.18,default沒開這個config
【vts】VideoEncHidlTest.EncodeTestBufferMetaModes_OMX.google.h264.encoder_video_encoder.avc(default)_32bit fail
ALPS04938922
- 待續(xù)