Android6.0_r9 CTS 测试 一

来源:互联网 发布:地形图矢量化软件 编辑:程序博客网 时间:2024/06/03 12:29
  

                             网上关于6.0版本的GMS认证资料还是比较少,最近正好在搞GMS认证,记录下自己的一些心得,希望能帮到需要用的朋友。


  不得不说,如果以前没搞过GMS认证的,搞这个东西是个很蛋疼的事情,从前期的测试的准备文档,测试工具,测试条件,测试fail项的解决,无不说明这个东西的麻烦。

           好在网上的相关的资料也不少。如果公司不是大公司,有着和Google合作的大公司,做认证都需要找第三方实验室帮忙认证。那我们自己需要提供一些东西给实验室,这个根据实验室的具体要求来,每个实验室并不一定完全相同。

      但是如下三个东西,每个实验室是需要提供的。

     1、CTS测试报告 (100%pass)

     2、GTS测试报告 (100%pass)

     3、CTS Verifier报告(全部pass)


 一、CTS测试

     CTS为GMS认证最基本的测试,也是最难的测试,6.0版本的总共有127027项,完整测试一次需要20来个小时。

      下面是我遇到的一些问题,总结下:

          

                                                           Android.accessibilityservice

    1、testActionNextAndPreviousAtGranularityParagraphOverText

     2、testActionNextAndPreviousAtGranularityWordOverEditTextWithContentDescription

     3、testSingleAccessibilityFocusAcrossWindows

    都是Google issue问题,单跑pass即可。


                                                   

                                                           android.adminhostside

    1、testPermissionPrompts

                根据Log提示,删除对应的APK就好了。


                                                         

                                                         android.app.usage    

     1、testAppDetails       
      2 、testUidDetails

                 插入3G联通卡,即可通过测试。


                                                      

                                                          android.bluetooth

    1、 testBasicBleScan/testBatchScan/testOpportunisticScan/testScanFilter

               这个是因为蓝牙的搜索能力,在5S内必须搜索到三个蓝牙设备,如果没有,就fail。

        如果测试不过,可以用三台设备,装上一个辅助的APK。就可以通过


          

                                                       android.calllog

    1、testSingleCallBackup

               Google issue,概率性会fail,单跑可以pass

   


                                                    

                                                      android.camera

    1、testAllocationFromCameraFlexibleYuv     

    2、testAvailableStreamConfigs

   3、testBasicRecording

   4、testBurstVideoSnapshot 

   5、testRecordingFromPersistentSurface

   6、testVideoSnapshot          
                    关于Camera的fail项就比较复杂了

   首先测试环境需要比较明亮的环境,如果环境比较昏暗就可能影响测试,testAllocationFromCameraFlexibleYuv      testVideoSnapshot  会fail,

   Case 1: 最大picture size 小于 最大preview size

   Case 2: 配置的preview size的宽高不满足2的整数倍(平台要求要设置为16整数倍)

   Case 3: 最大preview size和picture size比例要一致

   注意每个摄像头对应的config文件,比如说我使用的是ov8865_mipi_raw ,那对应的文件就是config.ftbl.ov8865_mipi_raw.h

  /  Video Size
    FTABLE_CONFIG_AS_TYPE_OF_DEFAULT_VALUES(
        KEY_AS_(MtkCameraParameters::KEY_VIDEO_SIZE),
        SCENE_AS_DEFAULT_SCENE(
            ITEM_AS_DEFAULT_("640x480"),
            ITEM_AS_VALUES_(
                "176x144",      "320x240",      "352x288",      "480x320",      "640x480",
                "720x480",      "864x480",      "1280x720",     "1920x1080",
                "1280x736",     "1920x1088",
            )
        ),
    )

所有的Video size,必须在 Preview size 和picture size中都包含。不然有可能引起fail


camera这块也很容易出现fps range的fail,在对应的范围上加上(20000,20000)

//  Preview Frame Rate Range
    FTABLE_CONFIG_AS_TYPE_OF_USER(
        KEY_AS_(MtkCameraParameters::KEY_PREVIEW_FPS_RANGE),
        SCENE_AS_DEFAULT_SCENE(
            ITEM_AS_DEFAULT_("5000,30000"),
            ITEM_AS_USER_LIST_(
                "(15000,15000)",
                "(20000,20000)", //for cts
                "(24000,24000)",
                "(5000,30000)",
                "(30000,30000)",
            )
        ),

这样基本的问题可以解决

 




 

                                     


                 

 



     











2 0