Symbian3/PDK/Source/GUID-548CEA7C-20BA-5C8E-9971-134AD518CA22.dita
author Dominic Pinkman <Dominic.Pinkman@Nokia.com>
Tue, 30 Mar 2010 11:56:28 +0100
changeset 5 f345bda72bc4
parent 3 46218c8b8afa
child 14 578be2adaf3e
permissions -rw-r--r--
Week 12 contribution of PDK documentation_content. See release notes for details. Fixes Bug 2054, Bug 1583, Bug 381, Bug 390, Bug 463, Bug 1897, Bug 344, Bug 1319, Bug 394, Bug 1520, Bug 1522, Bug 1892"

<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
<!-- This component and the accompanying materials are made available under the terms of the License 
"Eclipse Public License v1.0" which accompanies this distribution, 
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
<!-- Initial Contributors:
    Nokia Corporation - initial contribution.
Contributors: 
-->
<!DOCTYPE concept
  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
<concept xml:lang="en" id="GUID-548CEA7C-20BA-5C8E-9971-134AD518CA22"><title>Graphics Test Technology </title><prolog><metadata><keywords/></metadata></prolog><conbody><p>This topic provides information about the Graphics test technology area. It describes the test philosophy, the types of test that this test technology area contains, what is being tested and the test environment in which the tests are run. This topic is intended to provide an overview of the test technology area, its coverage, how to set up the test environment, and how to find further information about the test suites offered by this test technology area. </p> <p> <b>Note:</b> Any mention of <codeph>epoc32</codeph> is offset by <codeph>%EPOCROOT%</codeph>, which represents the full path to where the <codeph>epoc</codeph> tree is installed. </p> <section><title>Graphics test technology area scope</title> <p>The test suites test the following components in the graphics technology area: </p> <ul><li id="GUID-0C563E3F-92FF-5BF1-86F9-65572BE2FCF4"><p> <b>The Font and Bitmap Server (FBSERV ) API</b>, which allows an application to access and control fonts and bitmaps on the device. </p> </li> <li id="GUID-6BB29083-9E1B-57FA-A945-1356681DF959"><p> <b>The Window Server (WSERV) API</b>, which allows an application to run on more than one screen and specifies on which screen of the device it is to be viewed. </p> </li> <li id="GUID-2BE7344F-DA00-5DF8-9DDA-03395B09B0C3"><p> <b>BitGDI</b>. BitGDI provides a concrete implementation of the graphics context class and some graphics devices classes. </p> </li> <li id="GUID-048C67C1-7C7D-5C2F-B2F0-F981AD9265BC"><p> <b>The Font Store (FntStore)</b>, which contains the typeface store. </p> </li> </ul> <p>The scope of testing is as follows: </p> <ul><li id="GUID-710EF200-ADAC-5CAC-8E9B-862AF295114B"><p> <b>Published API testing</b>  </p> <p>The test suites test published APIs. The test suites can be used as a regression test suite and also as part of a compatibility testing program. </p> </li> <li id="GUID-5B07A77D-8B62-5DC8-983E-588EFB606F2A"><p> <b> Test omissions</b>  </p> <p> <codeph>CClickMaker</codeph>, <codeph>CAnim</codeph>, <codeph>CAnimDll</codeph>, <codeph>CAnimGc</codeph>, <codeph>CFreeTimerWindowAnim</codeph>, <codeph>CSpriteAnim</codeph> and <codeph>CWindowAnim</codeph> are omitted because they are implemented by the device creator. </p> </li> </ul> </section> <section id="GUID-C6514CB8-6AB0-5F5A-92EE-A4F0A946D7D9"><title>Graphics test technology environment</title> <p><b>Device setup </b> </p> <p>The device under test (for example, a hardware platform, phone or emulator) must have an appropriate build of the Symbian platform or a Symbian UI (S60, UIQ or MOAP). </p> <p><b>PC setup </b> </p> <p>To build and run the test code, the PC must have installed a Symbian platform or application developer kit or equivalent, the Symbian Product Developer Toolkit (PDT) and relevant compilers (such as RVCT or GCCE). </p> <p><b>Network environment setup </b> </p> <p>None. </p> <p><b>Test dependencies </b> </p> <p>Test data for each test suite can be found in the following location: </p> <ul><li id="GUID-F9CAE0BC-8E4C-58D3-A37E-76F6F7FDB61F"><p> <filepath>...\graphics\graphicsapitest\graphicssvs\fbserv\testdata</filepath> </p> </li> <li id="GUID-6D6BA3E8-F28D-552F-89B8-7F65A5E42182"><p> <filepath>...\graphics\graphicsapitest\graphicssvs\wserv\testdata</filepath> </p> </li> <li id="GUID-3B3D024F-B033-5463-9185-2FF448959ACB"><p> <filepath>...\graphics\graphicsapitest\graphicssvs\bitgdi\testdata</filepath> </p> </li> <li id="GUID-52DB48C8-3FF8-5B70-8992-BF521E0F0CDC"><p> <filepath>...\graphics\graphicsapitest\graphicssvs\fntstore\testdata</filepath> </p> </li> </ul> <p>For links to information about each test suite, see <xref href="GUID-2B2788AF-0C0D-5D84-B587-F1A04A005141.dita">Graphics Verification Suite Component</xref>. </p> <p>There is a global environment file, <filepath>t_graphics.ini</filepath>, which contains configurable parameters and their default values. You can configure these parameters by modifying the default values. Details about each parameter can be found in the file comments. These files can be found in the following location: </p> <p> <filepath>...\graphics\graphicsapitest\graphicssvs\testdata\&lt;armv5|winscw&gt;</filepath> </p> <p>When using Test Driver, communication between the PC and the Symbian platform device under test is enabled using <codeph>STAT</codeph>. Therefore, the device under test must have <codeph>STAT</codeph> installed. For information on the STAT tool, see <b>Symbian Verification Suite &gt; TestDriver &gt; Using TestDriver &gt; Communicating with the device &gt; STAT plug-in</b>. </p> </section> <section><title>Building and execution</title> <p>The following illustrates the Graphics Test Suite hierarchical structure after the build process. This structure can be seen in <filepath>%EPOCROOT%\epoc32\testdriver\testproduct</filepath> after building the test suite. </p> <p> <b>Note:</b> For information about the TestDriver output, see <b>Symbian Verification Suite &gt; TestDriver &gt; Using TestDriver &gt; Results &gt; Viewing the test results</b>. </p> <codeblock id="GUID-FF31D666-C3AA-5D1E-A5BD-FA46B6DFDC66" xml:space="preserve">
&lt;Component&gt; - Graphics 
  &lt;Sub-component&gt; - Fbserv
    &lt;suite&gt;-graphics-fbserv-bitmaputil-publicapi-suite
    &lt;suite&gt;-graphics-fbserv-fbsbitmap-publicapi-suite
    &lt;suite&gt;-graphics-fbserv-fbscolor256bitmaputil-publicapi-suite
    &lt;suite&gt;-graphics-fbserv-fbsfont-publicapi-suite
    &lt;suite&gt;-graphics-fbserv-fbssession-publicapi-suite
    &lt;suite&gt;-graphics-fbserv-fbstypefacestore-publicapi-suite
    &lt;Sub-component&gt;-Wserv
    &lt;suite&gt;-graphics-wserv-wsscreendevice-publicapi-suite
    &lt;suite&gt;-graphics-wserv-wssprite-publicapi-suite
    &lt;suite&gt;-graphics-wserv-wspointercursor-publicapi-suite
    &lt;suite&gt;-graphics-wserv-frame-publicapi-suite
    &lt;suite&gt;-graphics-wserv-anim-publicapi-suite
    &lt;suite&gt;-graphics-wserv-animdll-publicapi-suite
    &lt;suite&gt;-graphics-wserv-animgfwe-publicapi-suite
    &lt;suite&gt;-graphics-wserv-animwindowfunctions-publicapi-suite
    &lt;suite&gt;-graphics-wserv-animgeneralfunctions-publicapi-suite
    &lt;suite&gt;-graphics-wserv-animspritefunctions-publicapi-suite
    &lt;suite&gt;-graphics-wserv-events-publicapi-suite
    &lt;suite&gt;-graphics-wserv-backedupwindow-publicapi-suite
    &lt;suite&gt;-graphics-wserv-blankwindow-publicapi-suite
    &lt;suite&gt;-graphics-wserv-windowgc-publicapi-suite
    &lt;suite&gt;-graphics-wserv-windowgroup-publicapi-suite
    &lt;suite&gt;-graphics-wserv-wsbitmap-publicapi-suite
    &lt;suite&gt;-graphics-wserv-wsgraphicmsgbuf-publicapi-suite
    &lt;suite&gt;-graphics-wserv-wsgraphicbitmap-publicapi-suite
    &lt;suite&gt;-graphics-wserv-session-publicapi-suite
    &lt;suite&gt;-graphics-wserv-soundplugin-publicapi-suite
    &lt;suite&gt;-graphics-wserv-directscreenaccess-publicapi-suite
    &lt;suite&gt;-graphics-wserv-dsasession-publicapi-suite
    &lt;suite&gt;-graphics-wserv-wsgraphicbitmapanimation-publicapi-suite
    &lt;suite&gt;-graphics-wserv-window-publicapi-suite
  &lt;Sub-component&gt;-Bitgdi
    &lt;suite&gt;-graphics-bitgdi-fbsbitmapdevice-publicapi-suite
    &lt;suite&gt;-graphics-bitgdi-fbsscreendevice-publicapi-suite
    &lt;suite&gt;-graphics-bitgdi-fbsbitgc-publicapi-suite
    &lt;suite&gt;-graphics-bitgdi-polygonfiller-publicapi-suite
    &lt;suite&gt;-graphics-bitgdi-FbsBitGcFont-publicapi-suite
    &lt;suite&gt;-graphics-bitgdi-FbsBitGcBitmap-publicapi-suite
    &lt;suite&gt;-graphics-bitgdi-FbsDevice-publicapi-suite
  &lt;Sub-component&gt;-FntStore
    &lt;suite&gt;-graphics-fntstore-fontstore-publicapi-suite
    &lt;suite&gt;-graphics-fntstore-bitmapfont-publicapi-suite
    &lt;suite&gt;-graphics-fntstore-OpenFontRasterizerContext-publicapi-suite
</codeblock> <p>The hierarchical test suite structure facilitates easy build and execution of the complete test suite or part of it. For example, if the path specified is: </p> <ul><li id="GUID-A4E772A6-8D55-5364-94A6-83B0266347B2"><p> <codeph>&lt;graphics.panicless&gt;</codeph> the entire graphics test suite is built with the exception of panicking test cases. For more information, see <xref href="GUID-C7A155FB-AD0B-5419-968D-071FE8386654.dita#GUID-C7A155FB-AD0B-5419-968D-071FE8386654/GUID-E2D69628-C103-54DB-9CE4-EB746CD62BEB">Test environment and execution</xref> in <xref href="GUID-C7A155FB-AD0B-5419-968D-071FE8386654.dita">T_FBServAPI Regression Test Suite</xref>. </p> </li> <li id="GUID-791ED401-85CD-559E-BE54-03BE81B16576"><p> <codeph>&lt;graphics.panic&gt;</codeph> only the panicking test cases are built in the entire Graphics test suite. For more information, see <xref href="GUID-C7A155FB-AD0B-5419-968D-071FE8386654.dita#GUID-C7A155FB-AD0B-5419-968D-071FE8386654/GUID-E2D69628-C103-54DB-9CE4-EB746CD62BEB">Test environment and execution</xref> in <xref href="GUID-C7A155FB-AD0B-5419-968D-071FE8386654.dita">T_FBServAPI Regression Test Suite</xref>. </p> </li> <li id="GUID-4569CF0D-49D4-5843-9FA5-31E79BFF163A"><p> <codeph>&lt;graphics.[panic|panicless].fbserv&gt;</codeph> all the six <b>FBSERV suites</b> are built and run. </p> </li> <li id="GUID-CABE329D-A578-5D49-99F1-FEC25A0848B9"><p> <codeph>&lt;graphics.[panic|panicless].fbserv.graphics-fbserv-bitmaputil-publicapi-suite
                &gt;</codeph> the <filepath>graphics-fbserv-bitmaputil-publicapi-suite</filepath> is built and run. </p> </li> </ul> </section> <section id="GUID-9C664110-449B-510C-A9C6-352A97F225C1"><title>General environment setup</title> <p>The following shows the general environment setup for both <codeph>WINSCW</codeph> and <codeph>ARMV5</codeph>. </p> <ul><li id="GUID-665D099D-5499-5CBC-9269-8BA496B071D9"><p>Ensure that all the parameters in this <filepath>t_graphics.ini</filepath> file are set to the correct values. For more information on test data, refer to the <xref href="GUID-548CEA7C-20BA-5C8E-9971-134AD518CA22.dita#GUID-548CEA7C-20BA-5C8E-9971-134AD518CA22/GUID-C6514CB8-6AB0-5F5A-92EE-A4F0A946D7D9">Graphics test technology environment</xref> section above. </p> </li> <li id="GUID-ACD45D26-565A-5D1C-A47A-01294CB60E43"><p>The entire Graphics test component can be built from the following location: </p> <p> <filepath>...\graphics\graphicsapitest\graphicssvs\group\...</filepath>  </p> </li> <li id="GUID-82C4B589-4E89-50DC-B2FE-6F94FE83FB82"><p>Individual test components can be built from the respective group directory: </p> <ul><li id="GUID-2864EB7B-7CBF-554D-AC6E-448F0C958227"><p> <filepath>...\graphics\graphicsapitest\graphicssvs\fbserv\group</filepath> </p> </li> <li id="GUID-D4F55FF8-4126-5738-84B2-78E863444827"><p> <filepath>...\graphics\graphicsapitest\graphicssvs\wserv\group</filepath> </p> </li> <li id="GUID-6842C86C-6756-5682-BED6-53E3C036249C"><p> <filepath>...\graphics\graphicsapitest\graphicssvs\bitgdi\group</filepath> </p> </li> <li id="GUID-7CA3A102-E88C-5A52-AD80-F354404C778E"><p> <filepath>...\graphics\graphicsapitest\graphicssvs\fntstore\group</filepath> </p> </li> </ul> </li> <li id="GUID-8BE2D7BE-D684-5C50-B4E4-FEE2A841FF16"><p>Run the following commands: </p> <p><userinput>bldmake bldfiles</userinput> </p> <p><userinput>abld test build [winscw|armv5] [urel|udeb]</userinput> </p> </li> </ul> </section> <section id="GUID-99B28A99-4ECD-5E72-A662-781CFBF55D58"><title>Steps to build and run tests using TestDriver</title> <p>Communication between the PC and the Symbian platform device under test is enabled using <codeph>STAT</codeph>. Therefore, the device under test must have <codeph>STAT</codeph> installed. See <b>Symbian Verification Suite &gt; TestDriver &gt; Using TestDriver &gt; Communicating with the device &gt; STAT plug-in</b> for more information. </p> <p>Use the following steps to build and run the tests: </p> <ul><li id="GUID-5FF25718-EE4B-5C35-B0A6-878D60768FB9"><p> <b>For ARMV5: </b>  </p> <p>The ROM image is built on the PC and transferred to the hardware board through the MMC card. See the STAT plug-in documentation for details on the various methods of communication between the PC and hardware. </p> </li> <li id="GUID-029965C8-5210-5A2C-9B84-0266C5C8BE10"><p>Configure the test driver using the automated scripts of the <filepath>testdriversetup.bat</filepath>, which can be found in <filepath>\graphicsapitest\graphicssvs\group\...</filepath>. </p> <p> <filepath>testdriversetup.bat</filepath> calls <filepath>testdriversetup.pl</filepath>, which applies an appropriate set of configuration parameters. </p> </li> <li id="GUID-176F5CFA-A9D6-5534-8D3E-92B11E54FBDD"><p> <b>Build the test code:</b>  </p> <p>To build the test code, perform the following steps: </p> <ol id="GUID-2E3B483F-7291-50C9-A3BE-00F4C234810F"><li id="GUID-3E59D8A1-ADAA-5434-AD38-5E69AAF7CAFC"><p>Navigate to the <filepath>\graphicsapitest\graphicssvs\group</filepath> directory and run the following commands: </p> <p><userinput>bldmake bldfiles</userinput> </p> <p><userinput>abld test export</userinput> </p> </li> <li id="GUID-90EDB832-2F83-5249-A6C5-AAA21DC0E7FE"><p>Run the following testdriver command, which can be executed from any location: </p> <p><userinput>testdriver build [–p [winscw|armv5]] [–b [udeb|urel]] –s graphics.[panic|panicless].[fbserv|wserv[.&lt;test suite name &gt;]]</userinput> </p> </li> </ol> </li> <li id="GUID-0BDF90F2-6499-56FE-9D90-B700A154A063"><p> <b>Build the ROM image:</b>  </p> <ul><li id="GUID-03DB47E9-2D4E-56FE-8C69-B3AFCCBC94C0"><p> <b>For ARMV5:</b>  </p> <p><userinput>buildrom -D_STARTUPMODE2 -D_EABI=ARMV5 -DRVCT -DUSE_STRONG_CRYPTOGRAPHY &lt;h2|h4hrp&gt; techview_statapi td_graphics</userinput> </p> </li> </ul> </li> <li id="GUID-1CF5ADB0-B3BD-53EC-ACDF-F08BA0082A46"><p> <b>Run the test:</b> To run the test on an emulator (WINSCW), run the following command: </p> <p><userinput>testdriver run</userinput> </p> <p>To run the test on hardware (ARMV5), run the following command: </p> <p><userinput>testdriver run -t &lt;transport service used&gt;</userinput> </p> <p>The transport service can be one of the following: </p> <ul><li id="GUID-70B8FA50-7C6F-58EF-BCE2-A201123C56D8"><p> <codeph>serial&lt;COM port number that is connected to the
                     board&gt;</codeph>. </p> </li> <li id="GUID-7FAC4A54-BF29-51F8-974C-D049ADEFBA41"><p> <codeph>bt&lt;COM port number for BT dongle&gt;</codeph>. </p> </li> <li id="GUID-4286EF0B-01C6-525B-AFDE-A6884836C313"><p> <codeph> usb&lt;mapped port number&gt;</codeph>. </p> </li> </ul> </li> </ul> <p>Refer to <b>Symbian Verification Suite &gt; TestDriver &gt; Using TestDriver &gt; Communicating with the device &gt; STAT plug-in</b> for more information. </p> <p> <b>Note:</b> All scripts and test data are automatically removed from the system drive of the device under test after execution. </p> </section> <section id="GUID-E8F07638-C0CE-57E8-8A93-F82B337C375E"><title> Steps to build and run tests manually (tests built into ROM)</title> <p>The steps to build and run tests manually are as follows: </p> <ul><li id="GUID-B659F851-5324-5851-95EA-ED451B95BA1F"><p> <b>Build the ROM: </b>  </p> <ul><li id="GUID-87E1D5C7-238F-5139-B531-96E6D8C1423C"><p> <b>For ARMV5:</b>  </p> <p><userinput>buildrom -D_EABI=ARMV5 –DRVCT -DUSE_STRONG_CRYPTOGRAPHY &lt;h2|h4hrp&gt; techview t_graphics</userinput> </p> </li> </ul> </li> <li id="GUID-7EDD06D4-A658-5BD3-AC3E-8FE339F4F6F1"><p> <b>Setup Scripts:</b>  </p> <p> <filepath>setup_t_graphics.script</filepath> is used to execute the entire graphics test suite. </p> <p>The following setup scripts are used to run the class-specific test suites: </p> <ul><li id="GUID-591BBC0A-83AB-5F2C-970A-0EF1C65E5677"><p> <filepath>setup-GRAPHICS-FBSERV-BitmapUtil-PublicApi.script</filepath>  </p> </li> <li id="GUID-22A34787-8BC7-5E65-B3E7-828750F8CCF4"><p> <filepath>setup-GRAPHICS-FBSERV-FbsBitmap-PublicApi.script</filepath>  </p> </li> <li id="GUID-8597A057-2E08-5D3C-9970-533050165AB1"><p> <filepath>setup-GRAPHICS-FBSERV-FbsColor256BitmapUtil-PublicApi.script</filepath> </p> </li> <li id="GUID-38208CCD-EA4C-53CE-9A7F-E25607EC3340"><p> <filepath>setup-GRAPHICS-FBSERV-FbsFont-PublicApi.script</filepath>  </p> </li> <li id="GUID-4F6C835C-F620-5752-AB62-240EF729E83F"><p> <filepath>setup-GRAPHICS-FBSERV-FbsSession-PublicApi.script</filepath>  </p> </li> <li id="GUID-4513DCDA-5CC4-5910-BB95-D24E8D6DB367"><p> <filepath>setup-GRAPHICS-FBSERV-FbsTypefaceStore-PublicApi.script</filepath> </p> </li> <li id="GUID-F8DD250F-125F-53F8-8212-D4DF9AD892EF"><p> <filepath>setup-GRAPHICS-FBSERV-PublicApi.script</filepath>  </p> </li> <li id="GUID-0DA4677B-547F-5B66-A1F1-FB485DA4A571"><p> <filepath>setup-T-GRAPHICS-WSERV-PublicApi.script</filepath>  </p> </li> <li id="GUID-2D922C27-675B-5626-95FD-25ACAB54CA58"><p> <filepath>setup-T-GRAPHICS-BITGDI-PublicApi.script</filepath>  </p> </li> <li id="GUID-CAD97F59-5F24-5469-BA27-5506DC4E4EB2"><p> <filepath>setup-T-GRAPHICS-FNTSTORE-PublicApi.script</filepath>  </p> </li> </ul> </li> <li id="GUID-0AD4A0F5-A99D-5DD0-B138-41B28D769CB8"><p> <b>Running Scripts on an emulator (WINSCW):</b> Change the directory to <filepath>%EPOCROOT%\epoc32\release\winscw\&lt;urel|udeb&gt;</filepath>  </p> </li> <li id="GUID-53418811-DB19-5D82-9D4B-12C85F2DCB00"><p> <b>Running Scripts on hardware (ARMV5):</b> Open <codeph>eshell</codeph>. </p> </li> <li id="GUID-09567A60-BC50-5458-ADDF-2C7531A48BEA"><p> <b>Execute the tests:</b>  </p> <p><userinput>testexecute ...\graphics\setup_&lt;test suite name&gt;.script</userinput> </p> <p><userinput>testexecute ...\graphics\&lt;test suite name&gt;.script</userinput> </p> <p>Refer to <xref href="GUID-2B2788AF-0C0D-5D84-B587-F1A04A005141.dita">Graphics Verification Suite Component</xref> for links to information about the various test suites. </p> </li> </ul> </section> <section><title>Buildrom overflow error</title> <p>The default ROM size for an OMAP (H2, H4) board is currently up to 32 MB. </p> <p>If the ROM is greater than 32MB and less than 64MB in size, the <filepath>h2.oby</filepath> or <filepath>h4hrp.oby</filepath> file can be modified, depending on the device. The value of <codeph>"ROMMEGS"</codeph> must be set to the desired ROM size. This value must be specified in hexadecimal format. </p> <p>Images executing in RAM consume part of the 64MB of available system memory. Therefore it is important to ensure that there is enough memory remaining to run the operating system and the required application. The availability of memory can vary dynamically depending on usage, so making ROMs that are close to the limit is risky and can slow down the execution rate dramatically. Alternatively, a custom ROM can be built with only a subset of the tests included. </p> <p> <b>Note:</b> The above options must also be available for other, non-OMAP, platforms. </p> </section> <section><title>Build and execute tests on phone directly using a .pkg file </title> <p><b>For ARMV5: </b> </p> <ol id="GUID-26EEF989-6ED3-596D-9CF7-E688E70110F1"><li id="GUID-29FFABDD-D954-568B-BDC2-EB24ADB977B5"><p> <b> EShell and TestExecute:</b>  </p> <p>The phone must have <codeph>eshell</codeph> and <codeph>testexecute</codeph> installed. </p> </li> <li id="GUID-ABAB9A4A-F879-59C5-9FFE-9226107017B7"><p> <b> Certificate files:</b>  </p> <p>Ensure the <filepath>.cer</filepath> and <filepath>.key</filepath> files are placed into the <filepath>/epoc32/pkg/</filepath> directory on the PC and rename them as the ones used in the <filepath>makesisfiles.bat</filepath> file. </p> </li> <li id="GUID-D30D2EB7-3864-58F2-80FE-E2597F794578"><p> <b>Create and install SIS-file:</b>  </p> <p>Execute <filepath>makesisfiles.bat</filepath> from <filepath>/epoc32/pkg/</filepath> directory. </p> <p><userinput>makesisfiles.bat</userinput> </p> <p>This creates <filepath>t_fbservapi.sis </filepath> file. The file must be copied to an MMC card, transferred to the phone and executed. </p> <p>When the <filepath> t_fbservapi.sis</filepath> file is executed, the graphics test suite is installed on the device. </p> <p> <b>Note:</b> If there is no SIS installer available, you can use a different tool (such as STAT desktop, which can be found in <filepath>%EPOCROOT%\epoc32\tools\stat\statdesktop.exe</filepath>) to install the <filepath>.sis</filepath> file. </p> </li> <li id="GUID-06135FF7-BD79-5765-BB94-DB216E84B554"><p> <b> Running Scripts: </b>  </p> <p>Run the test scripts. For more information refer to <xref href="GUID-548CEA7C-20BA-5C8E-9971-134AD518CA22.dita#GUID-548CEA7C-20BA-5C8E-9971-134AD518CA22/GUID-E8F07638-C0CE-57E8-8A93-F82B337C375E">Steps to build and run tests manually (tests built into ROM)</xref>. </p> </li> </ol> </section> <section><title>Selective execution of test cases using TCS files</title> <p>Test cases can be executed selectively using a <filepath>.tcs</filepath> file. The <filepath>.tcs</filepath> file contains the IDs of test cases: </p> <ul><li id="GUID-DD0FE250-C280-5A89-9172-0F0B41F72C52"><p>to be excluded from a test run </p> </li> <li id="GUID-DB79CDB3-7E17-5476-BCCE-559DA7BBDF26"><p>to be executed on their own. Therefore, excluding all other test cases in the test script from a test run. </p> </li> </ul> <p>The test case IDs can be specified as a range, a list, or a combination of both, where each range or individual test case ID is delimited by a new-line character. </p> <p>For example, a range of test case IDs can be specified as: </p> <p> <codeph>GRAPHICS-FBSERV-FbsBitmap-PublicApi-0021:
          GRAPHICS-FBSERV-FbsBitmap-PublicApi-0052</codeph>  </p> <p>Test cases from 21 to 52 (3 and 12 included) are either excluded or are the only ones to be executed during a test run. </p> <p>A list of test cases IDs can be: </p> <p> <codeph>GRAPHICS-FBSERV-FbsBitmap-PublicApi-0062</codeph>  </p> <p> <codeph>GRAPHICS-FBSERV-FbsBitmap-PublicApi-0070</codeph>  </p> <p> <codeph>GRAPHICS-FBSERV-FbsBitmap-PublicApi-0079</codeph>  </p> <p>A combination of range and list can be: </p> <p> <codeph>GRAPHICS-FBSERV-FbsBitmap-PublicApi-0052:GRAPHICS-FBSERV-FbsBitmap-PublicApi-0055</codeph> </p> <p> <codeph>GRAPHICS-FBSERV-FbsBitmap-PublicApi-0062</codeph>  </p> <p> <codeph>GRAPHICS-FBSERV-FbsBitmap-PublicApi-0070</codeph>  </p> <p> <codeph>GRAPHICS-FBSERV-FbsBitmap-PublicApi-0079</codeph>  </p> <p> <codeph>GRAPHICS-FBSERV-FbsBitmap-PublicApi-0097:GRAPHICS-FBSERV-FbsBitmap-PublicApi-0098</codeph> </p> <p>There are two <filepath>.tcs</filepath> files, which are located in: </p> <ul><li id="GUID-BD255308-15B1-5C2F-A529-7105817EE3F3"><p> <filepath>...\graphics\graphicsapitest\graphicssvs\config\t_graphics.tcs</filepath> </p> </li> <li id="GUID-E5B02EED-620F-5F24-92F2-42C0568F4E67"><p> <filepath>...\graphics\graphicsapitest\graphicssvs\config\t_graphics_panic.tcs</filepath> </p> </li> </ul> <p>The <filepath>t_graphics.tcs</filepath> file is used to exclude test cases that do not cause panic, and the <filepath>t_graphics_panic.tcs</filepath> file is used for test cases that cause a panic. </p> <p> </p> <p>For more information about the exclusion of panicking test cases, see <xref href="GUID-C7A155FB-AD0B-5419-968D-071FE8386654.dita#GUID-C7A155FB-AD0B-5419-968D-071FE8386654/GUID-E2D69628-C103-54DB-9CE4-EB746CD62BEB">Excluding panicking test cases</xref> in <xref href="GUID-C7A155FB-AD0B-5419-968D-071FE8386654.dita">T_FBServAPI Regression Test Suite</xref>. </p> <p>For more information regarding location, see <xref href="GUID-C7A155FB-AD0B-5419-968D-071FE8386654.dita#GUID-C7A155FB-AD0B-5419-968D-071FE8386654/GUID-1AA76383-F01D-5B89-9186-3431AA0489D5">TCS files source tree location</xref> in <xref href="GUID-C7A155FB-AD0B-5419-968D-071FE8386654.dita">T_FBServAPI Regression Test Suite</xref> and <xref href="GUID-D119FBFE-D959-53A1-9D6B-D64CB63C41C9.dita#GUID-D119FBFE-D959-53A1-9D6B-D64CB63C41C9/GUID-55D35149-D771-5295-B41B-25DF1039B402">TCS files source tree location</xref> in <xref href="GUID-D119FBFE-D959-53A1-9D6B-D64CB63C41C9.dita">T_WServAPI Regression Test Suite</xref>. </p> <p>Only the <filepath>.tcs</filepath> files are modified when using the test driver for test execution. When executing the tests manually, the following test execute command illustrates the usage of the <filepath>.tcs</filepath> file: </p> <p><userinput>testexecute %EPOCROOT%\epoc32\release\winscw\&lt;urel/udeb&gt;\&lt;test suite name&gt;.script –[tcx|tci] %EPOCROOT%\epoc32\release\winscw\&lt;urel/udeb&gt;\&lt; t_graphics/ t_graphics_panic&gt;.tcs</userinput> </p> <p>The <codeph>-tcx</codeph> switch is used to execute all the tests in the specified script excluding the test cases specified in the <filepath>.tcs</filepath> file. While the <codeph>–tci</codeph> switch is used to execute only the tests specified in the <filepath>.tcs</filepath> file from the specified script. </p> </section> <section><title>Test results</title> <p><b>Test results log file location </b> </p> <p>After running the test, the result logs can be found on the system drive of the device in the <filepath>\logs\testexecute\</filepath> directory. If the tests are run manually using TestDriver on the PC, results can be found in the following location: </p> <p> <filepath> %EPOCROOT%\epoc32\TestDriver\results\</filepath> or </p> <p> <filepath>%EPOCROOT%\epoc32\winscw\c\logs\testexecute</filepath>  </p> <p>If the test are run manually, when you use TestDriver a new test result folder is created for each test run. This means that old results are not overwritten when you run a new test. An HTML log file can be found for each script contained in the suite, in its own subfolder. </p> <p>Each test case in the script contains one test block, which performs a number of actions on an API. The log displays the percentage of test cases that have passed successfully. Ideally the script should have a 100% pass rate. </p> <p><b>How to interpret the test results </b> </p> <p>Each test suite produces its own HTML log file containing the results of the test run (see <xref href="GUID-548CEA7C-20BA-5C8E-9971-134AD518CA22.dita#GUID-548CEA7C-20BA-5C8E-9971-134AD518CA22/GUID-68DC949A-E69E-5E1D-B7B1-EB3AECE0DAF3">Platform Focused Components</xref> section). When examining the log file, check the results at the bottom of the file first. This gives a summary of the number of tests in the suite that have passed, failed or caused panic. In the body of the log, passed tests are highlighted in green, failed tests in red and tests causing panic are highlighted in blue. </p> <p>If a test fails or results in a panic, you can find out why it failed or panicked by examining each step in the test. The steps are listed between <codeph>START_TESTCASE</codeph> and <codeph>END_TESTCASE</codeph> tags. The steps that pass have the word <codeph>INFO</codeph> followed by some information regarding the step. A failing step instead has the word <codeph>ERROR</codeph>, followed by an explanation of the error (usually with an error code). If a panic occurs, there may be no textual explanation for the problem except the panic code (within the blue highlighted text). </p> <p>When this test suite is run on a real device, some tests may fail due to device limitations. For example, because the device does not have the correct hardware (such as no modem exists for a test that needs one) or lacks the right software plugins to run the test. This can be spotted if the log displays that a test has failed with <codeph>-5</codeph> error (<codeph>KErrNotSupported</codeph>). This means that the functionality in this test is not supported on the device used. </p> <p>Please refer to <b>Symbian Verification Suite &gt; TestDriver &gt; Using TestDriver &gt; Results &gt; Viewing the test results</b> for more information on TestDriver results. </p> </section> <section id="GUID-68DC949A-E69E-5E1D-B7B1-EB3AECE0DAF3"><title> Platform focused components</title> <p>The following tables show which classes are tested on the various Symbian releases. </p> <p> <b> FBSERV classes tested on Symbian versions</b>  </p> <table id="GUID-2EC2C920-4D33-55FC-A257-B6CE0F17AA90"><tgroup cols="6"><colspec colname="col0"/><colspec colname="col1"/><colspec colname="col2"/><colspec colname="col3"/><colspec colname="col4"/><colspec colname="col5"/><thead><row><entry/><entry>9.1</entry> <entry>9.2</entry> <entry>9.3</entry> <entry>9.4</entry> <entry>S^3</entry> </row> </thead> <tbody><row><entry><p> <codeph>CFbsBitmapUtil</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>CFbsBitmap</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>CFbsColor256BitmapUtil</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>CFbsFont</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>RFbsSession</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>CFbsTypefaceStore</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> </tbody> </tgroup> </table> <p> <b> WSERV classes tested on Symbian versions</b>  </p> <table id="GUID-263472F0-B8E8-55AB-9F7D-B87884DF7053"><tgroup cols="6"><colspec colname="col0"/><colspec colname="col1"/><colspec colname="col2"/><colspec colname="col3"/><colspec colname="col4"/><colspec colname="col5"/><thead><row><entry/><entry>9.1</entry> <entry>9.2</entry> <entry>9.3</entry> <entry>9.4</entry> <entry>S^3</entry> </row> </thead> <tbody><row><entry><p> <codeph>RBackedUpWindow</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>RBlankWindow</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>RWsSession</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>CWindowGc</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>RWindowGroup</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>Rwindow</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>CWsBitmap</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>CWsGraphicBitmap</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>TWindowInfo</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>RSoundPlugIn</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>CWsScreenDevice</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>RDirectScreenAccess</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>CDirectScreenAccess</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>RWsSprite</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>RWsSpriteBase</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>RWsPointerCursor</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>CWsGraphicBitmapAnimation</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>CFrame</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>RAnimDll</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>RAnim</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>MAnimGeneralFunctions</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>MAnimGeneralFunctionsWindowExtension</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>MAnimSpriteFunctions</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p> <codeph>MAnimWindowFunctions</codeph>  </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> </tbody> </tgroup> </table> <p> <b> BitGDI classes tested on Symbian versions</b>  </p> <table id="GUID-11FAFB6E-D152-54B9-8B29-6DD72ED75C50"><tgroup cols="3"><colspec colname="col0"/><colspec colname="col1"/><colspec colname="col2"/><thead><row><entry/><entry>S^2</entry> <entry>S^3</entry> </row> </thead> <tbody><row><entry><p>CFbsBitGc </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p>CFbsBitGcBitmap </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p>CFbsBitGcFont </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p>CFbsBitmapDevice </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p>CFbsDevice </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p>CFbsScreenDevice </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p>CPolygonFiller </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> </tbody> </tgroup> </table> <p> <b>Font Store classes tested on Symbian versions</b>  </p> <table id="GUID-5375D996-3E44-53D0-8CA5-9A712043F702"><tgroup cols="3"><colspec colname="col0"/><colspec colname="col1"/><colspec colname="col2"/><thead><row><entry/><entry>S^2</entry> <entry>S^3</entry> </row> </thead> <tbody><row><entry><p>CBitmapFont </p> </entry> <entry><p>x</p> </entry> <entry><p>x </p> </entry> </row> <row><entry><p>CFontStore </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> <row><entry><p>COpenFontRasterizerContext </p> </entry> <entry><p>x</p> </entry> <entry><p>x</p> </entry> </row> </tbody> </tgroup> </table> </section> </conbody><related-links><link href="GUID-C7A155FB-AD0B-5419-968D-071FE8386654.dita"><linktext>T_FBServAPI Regression Test Suite</linktext> </link> <link href="GUID-D119FBFE-D959-53A1-9D6B-D64CB63C41C9.dita"><linktext>T_WServAPI Regression Test Suite</linktext> </link> <link href="GUID-0F4D2856-5CD2-51C8-B310-BE05D69301C0.dita"><linktext>BitGDI Test Suite</linktext> </link> </related-links></concept>