T_FBServAPI Regression Test Suite

This topic describes the T_FBServAPI Graphics test suite and explains how to set up the test environment.

Note: Any mention of epoc32 is offset by %EPOCROOT%, which is the full path to where the epoc tree is installed.

Test suite overview

T_FBServAPI provides regression tests for the following classes:

Test approach

The purpose of the test suite is to provide regression testing of the public (PublishedAll) APIs of the Font and Bitmap Server (FBSERV) classes. The testing includes negative testing to confirm that the correct errors are returned when incorrect parameters are provided. The tests are automated and do not require user intervention.

Coverage omissions

The SCharWidth, SEpocBitmapHeader and TBitmapfileCompression structures are not tested because they do not define any methods.

Test suite details

Test script source tree location

Descriptions of the test cases can be found in the test scripts in the following locations:

  • ...\graphics\graphicsapitest\fbserv\scripts\GRAPHICS-FBSERV-BitmapUtil-PublicApi.script

  • ...\graphics\graphicsapitest\fbserv\scripts\GRAPHICS-FBSERV-FbsBitmap-PublicApi.script

  • ...\graphics\graphicsapitest\fbserv\scripts\GRAPHICS-FBSERV-FbsBitmap-PublicApi.script

  • ...\graphics\graphicsapitest\fbserv\scripts\GRAPHICS-FBSERV-FbsFont-PublicApi.script

  • ...\graphics\graphicsapitest\fbserv\scripts\GRAPHICS-FBSERV-FbsSession-PublicApi.script

Test script EPOC tree location

When the tests are built for the emulator or hardware (winscw/armv5), the scripts are exported to the following location:

%EPOCROOT%\epoc32\data\Z\graphics\

Test script build location

When the tests are built, the scripts are built in the following location:

%EPOCROOT%\epoc32\release\<winscw|armv5>\<udeb|urel>\Z\graphics

Test data source tree location

The test suite contains the following test data files:

  • ...\graphics\graphicsapitest\fbserv\testdata\ GRAPHICS-FBSERV-BitmapUtil-PublicApi.ini

  • ...\graphics\graphicsapitest\fbserv\testdata\GRAPHICS-FBSERV-FbsBitmap-PublicApi.ini

  • ...\graphics\graphicsapitest\fbserv\testdata\GRAPHICS-FBSERV-FbsColor256BitmapUtil-PublicApi.ini

  • ...\graphics\graphicsapitest\fbserv\testdata\GRAPHICS-FBSERV-FbsFont-PublicApi.ini

  • ...\graphics\graphicsapitest\fbserv\testdata\GRAPHICS-FBSERV-FbsSession-PublicApi.ini

  • ...\graphics\graphicsapitest\fbserv\testdata\GRAPHICS-FBSERV-FbsTypefaceStore-PublicApi.ini

The global environment file is located in the following location:

...\graphics\graphicsapitest\graphicssvs\testdata\<platform>\t_graphics.ini

Where <platform> can be armv5 or winscw.

Test data EPOC tree location

When the tests are built for the emulator or hardware (winscw or armv5), the data files are exported to the following location:

%EPOCROOT%\epoc32\data\Z\graphics\

The global environment file, t_graphics.ini, is exported to the following location in the epoc tree:

%EPOCROOT%\epoc32\data\Z\graphics\<platform>\

Where <platform> can be armv5 or winscw.

Test data build location

When the tests are built, the test data (.ini) files (with the exception of the global environment file, t_graphics.ini) are built in the following location:

%EPOCROOT%\epoc32\release\<platform>\<udeb|urel>\Z\graphics\

The global environment file, t_graphics.ini, is built in the following location:

%EPOCROOT%\epoc32\release\<platform>\<udeb|urel>\Z\graphics\<platform>

Where <platform> can be armv5 or winscw.

Note: When the tests are built to be executed on hardware, the files are built in the z drive of the ROM.

TestDriver file

The graphics .driver file can be found in the following path:

...\graphics\graphicsapitest\graphicssvs\testsuites\graphics\

It is used by TestDriver to construct the test suite tree structure and export all the appropriate files to the correct location in the epoc32 tree and on the device.

When the tests are built, the .driver file can be found in the following location:

%EPOCROOT%\epoc32\testdriver\testproduct

TCS file source tree location

The .tcs files are found in the following location:

  • ...\graphics\graphicsapitest\fbserv\config\t_graphics.tcs

  • ...\graphics\graphicsapitest\fbserv\config\t_graphics_panic.tcs

TCS files build location

When the tests are built, the scripts are generated in the following location:

%EPOCROOT%\epoc32\release\<winscw|armv5>\<udeb|urel>\Z\graphics

Note: When the tests are built to be executed on hardware, the files are built into the z: drive of the ROM.

Test environment and execution

For information about the test environment and execution procedure, see Graphics Test Technology.

Excluding panicking test cases

Some of the negative test cases, which check for panic codes, cause positive test cases to fail. Therefore, these test cases are excluded from normal execution by specifying the test case IDs in the <test suite name>-panic.tcs files.

When using TestDriver to execute the test suite:

  • graphics.panicless executes the specified suite excluding the listed test cases

  • graphics.panic executes the tests that panic in the specified suite.

When executing the tests manually, the following test execute command illustrates the usage of the .tcs file:

testexecute %EPOCROOT%\epoc32\release\winscw\<urel/udeb>\<test suite name>.script –[tcx|tci] %EPOCROOT%\epoc32\release\winscw\<urel/udeb>\<test suite name>.tcs

The -tcx switch is used to execute all the tests in the specified script excluding the test cases specified in the .tcs file. While the –tci switch is used to execute only the tests specified in the .tcs file from the specified script. For more information, see Graphics Test Technology.

Related concepts
Graphics Test Technology