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