blob: a0571a5725a5d013194bfa4f7911ad7fd22d901a [file] [log] [blame]
page.title=Integrating with Android CTS
@jd:body
<!--
Copyright 2015 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<div id="qv-wrapper">
<div id="qv">
<h2>In this document</h2>
<ol id="auto-toc">
</ol>
</div>
</div>
<p>Android CTS release packages (available from
<a href="{@docRoot}compatibility/cts/downloads.html">Android Compatibility
Downloads</a>) include deqp tests and require a subset of these tests (known as
the <code>mustpass</code> list), to pass. For devices that do not support a
target API or extension, tests are skipped and reported as passing.</p>
<p>The <code>mustpass</code> list includes OpenGL ES 3.0, OpenGL ES
3.1, OpenGL ES 3.2, and the Android Extension Pack tests. <code>mustpass</code>
files can be found under the <code>android/cts</code> directory in the deqp
source tree. You can run deqp tests through the <code>cts-tradefed</code>
utility with the following command:</p>
<pre>
$ cts-tradefed run cts --plan CTS-DEQP
</pre>
<h2 id=duplicating_runs_without_cts>Duplicating runs without CTS</h2>
<p>To replicate the CTS run, install the deqp APK of the CTS package and use the
following command:</p>
<pre>
$ adb -d shell am start -n com.drawelements.deqp/android.app.NativeActivity -e \
cmdLine "deqp --deqp-case=dEQP-GLES3.some_group.* --deqp-gl-config-name=rgba8888d24s8 --deqp-log-filename=/sdcard/dEQP-Log.qpa
</pre>
<p>The important part is the <code>--deqp-gl-config-name=rgba8888d24s8</code>
argument, which requests the tests be run on an RGBA 8888 on-screen surface
with a 24-bit depth buffer and an 8-bit stencil buffer. Remember to set
the desired tests using the <code>--deqp-case</code> argument.</p>
<h2 id=mapping_of_the_cts_results>CTS results mapping</h2>
<p>In the Android CTS, a test case can end up in one of three states: passed,
failed, or not executed (the deqp has more result codes available). CTS
automatically maps deqp result codes to CTS results:</p>
<ul>
<li>A CTS pass can include <code>Pass</code>, <code>NotSupported</code>,
<code>QualityWarning</code>, and <code>CompatibilityWarning</code>.</li>
<li>A CTS failure can include <code>Fail</code>, <code>ResourceError</code>,
<code>Crash</code>, <code>Timeout</code>, and <code>InternalError</code>.</li>
</ul>