CTS认证详解(cts是什么认证)

一、CTS认证是什么?

CTS(Compatibility Test Suite)认证是一个由Google官方推出的安卓软件兼容性测试,其目的是保证设备的可靠性和稳定性。一旦厂家取得了CTS认证,就表明其设备已经符合了Google官方所要求的各种技术规范和要求。

进入Google官网开发者中心,在CTS页面上,用户可以下载所需的CTS软件包,进行设备的兼容性测试。市场上的所有安卓设备,都必须通过CTS认证,才有资格运行Google Play及其相关应用。

例如,如果用户的设备未通过CTS认证,即使已经root,仍然不能访问Google Play等Google服务。

二、CTS测试覆盖范围

CTS测试涵盖了所有Android主要通用服务组件(如Activity、Intent等)、硬件抽象层、驱动程序和ROM系统镜像等多个方面。同时,CTS也覆盖了大量的系统API、Java类、包括底层OpenGL ES(OpenGL for Embedded Systems)的实现。

其测试内容主要包括自动化测试和手动测试。

1、自动化测试

自动化测试是指通过CTS提供的各种工具,在CTS认证标准下,自动运行大量的测试软件,对厂家的设备进行全面的测试。其中覆盖范围包括:Power On Self Test(POST)测试、Native API测试、Java API测试、图形与多媒体测试、网络测试、传感器测试、多点触控测试等。

例如,CTS提供了多种针对性的测试工具,例如monkey test,可以自动模拟人的点击操作,并在设备上不断运行测试应用程序,以便从系统稳定性、性能、耗电量、兼容性等多个方面进行测试。

2、手动测试

手动测试是指通过人工测试,检查Android应用程序在设备上的运行情况,以及测试符合情况。

手动测试的必要性在于,Android平台中的特殊情况无法通过自动化测试全部覆盖到。在手动测试过程中,测试人员需要详细检查不同版本的界面、各种通知、不同分辨率的设备、不同的字体、文字大小等,判断是否符合CTS认证标准。如果不符合标准,需要对设备进行相应的修改。

三、CTS测试流程

CTS测试流程包括大量的测试用例,其测试内容分为两部分,其中部分为兼容性测试,部分为功能测试。

1、兼容性测试

兼容性测试是指要求设备满足CTS制定的以下标准要求:运行Android ROM的设备必须支持各种底层驱动程序、资源、列出各种已知的API、程序库,还需要运行其他非Google应用的厂商依赖项。

例如,设备需要支持Android SDK最新版本的API层及以下,底层必须满足CTS基本规范,包括:内存限制、UI响应速度、照相机、视频、蓝牙等硬件功能的性能规范,以及性能测试的评估标准。

2、功能测试

功能测试是指,设备需要支持CTS测试,且能够参与各种Google授权的服务,如Google帐户、Google Play Store、Google Wallet等所有Google批准的安卓服务。

测试内容主要包括:设备电源测试、基于照相机的硬件测试、Wi-Fi、蓝牙、移动网、NFC等硬件功能性能测试。”

四、一个CTS测试案例


package com.example.android.samplects;

import android.util.Log;

import com.android.compatibility.common.util.AbiUtils;
import com.android.compatibility.common.util.CpuFeatures;
import com.android.compatibility.common.util.DeviceInfo;
import com.android.compatibility.common.util.PropertyUtil;
import com.android.compatibility.common.util.TestUtils;

import junit.framework.TestCase;

import java.util.Map;

public class SampleDeviceTests extends TestCase {

    public void testDeviceMake() throws Exception {
        String expectedMake = PropertyUtil.getProperty("ro.product.manufacturer").toLowerCase();
        String actualMake = DeviceInfo.getDeviceMake().toLowerCase();
        Log.d(TestUtils.TAG, String.format("Expecting %s, got %s", expectedMake, actualMake));
        assertTrue("Device Make mismatch", expectedMake.equals(actualMake));
    }
    ...
}

五、总结

CTS认证是Google官方推出的安卓软件兼容性测试,测试范围涵盖了所有安卓主要通用服务组件、硬件抽象层、驱动程序和ROM系统镜像等多个方面。用户可以通过自动化测试和手动测试方法进行测试,检查设备的可靠性、稳定性、兼容性、性能、耗电量、各种硬件功能等标准,符合标准的设备才能获得Google Play Services认证,具备访问Google Play等Google服务的能力。

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注