1page.title=Integrating with Android CTS
2@jd:body
3
4<!--
5    Copyright 2015 The Android Open Source Project
6
7    Licensed under the Apache License, Version 2.0 (the "License");
8    you may not use this file except in compliance with the License.
9    You may obtain a copy of the License at
10
11        http://www.apache.org/licenses/LICENSE-2.0
12
13    Unless required by applicable law or agreed to in writing, software
14    distributed under the License is distributed on an "AS IS" BASIS,
15    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16    See the License for the specific language governing permissions and
17    limitations under the License.
18-->
19
20<div id="qv-wrapper">
21  <div id="qv">
22    <h2>In this document</h2>
23    <ol id="auto-toc">
24    </ol>
25  </div>
26</div>
27
28<p>Android CTS release packages (available from
29<a href="{@docRoot}compatibility/cts/downloads.html">Android Compatibility
30Downloads</a>) include deqp tests and require a subset of these tests (known as
31the <code>mustpass</code> list), to pass. For devices that do not support a
32target API or extension, tests are skipped and reported as passing.</p>
33
34<p>The <code>mustpass</code> list includes OpenGL ES 3.0, OpenGL ES
353.1, OpenGL ES 3.2, and the Android Extension Pack tests. <code>mustpass</code>
36files can be found under the <code>android/cts</code> directory in the deqp
37source tree. You can run deqp tests through the <code>cts-tradefed</code>
38utility with the following command:</p>
39
40<pre>
41$ cts-tradefed run cts --plan CTS-DEQP
42</pre>
43
44<h2 id=duplicating_runs_without_cts>Duplicating runs without CTS</h2>
45
46<p>To replicate the CTS run, install the deqp APK of the CTS package and use the
47following command:</p>
48
49<pre>
50$ adb -d shell am start -n com.drawelements.deqp/android.app.NativeActivity -e \
51cmdLine "deqp --deqp-case=dEQP-GLES3.some_group.* --deqp-gl-config-name=rgba8888d24s8 --deqp-log-filename=/sdcard/dEQP-Log.qpa
52</pre>
53
54<p>The important part is the <code>--deqp-gl-config-name=rgba8888d24s8</code>
55argument, which requests the tests be run on an RGBA 8888 on-screen surface
56with a 24-bit depth buffer and an 8-bit stencil buffer. Remember to set
57the desired tests using the <code>--deqp-case</code> argument.</p>
58
59<h2 id=mapping_of_the_cts_results>CTS results mapping</h2>
60
61<p>In the Android CTS, a test case can end up in one of three states: passed,
62failed, or not executed (the deqp has more result codes available). CTS
63automatically maps deqp result codes to CTS results:</p>
64<ul>
65<li>A CTS pass can include <code>Pass</code>, <code>NotSupported</code>,
66<code>QualityWarning</code>, and <code>CompatibilityWarning</code>.</li>
67<li>A CTS failure can include <code>Fail</code>, <code>ResourceError</code>,
68<code>Crash</code>, <code>Timeout</code>, and <code>InternalError</code>.</li>
69</ul>
70