This topic describes the Multimedia Framework test suite. It provides an overview about the test suite, its coverage, how to set up the test environment to execute the test suite, and how to find further information about the test cases offered by this test suite.
The Multimedia Framework test suite consists of several regression test suites that provides tests for the following classes:
All APIs that Symbian classify as PublishedAll are tested within this class.
Note: Any mention of epoc32 is offset by %EPOCROOT% that is, the full path where the epoc tree is installed.
The test suite ensures that the APIs work as expected. Negative testing will be performed where applicable to confirm that errors are returned as documented. The tests are completely automated.
None.
Test Script Source Tree location:
…\os\mm\mmapitest\mmsvs\suite\mmf\T_MdaAudioConvertUtility\scripts\MM-MMF-ACLNT-CNVRT-PublicAPI.script
…\os\mm\mmapitest\mmsvs\suite\mmf\T_MdaAudioInputStream\scripts\MM-MMF-ACLNT-INPT-PublicAPI.script
…\os\mm\mmapitest\mmsvs\suite\mmf\T_MdaAudioOutputStream\scripts\MM-MMF-ACLNT-OUTPT-PublicAPI.script
…\os\mm\mmapitest\mmsvs\suite\mmf\T_MdaAudioPlayerUtility\scripts\MM-MMF-ACLNT-PLYR-PublicAPI.script
…\os\mm\mmapitest\mmsvs\suite\mmf\T_MdaAudioRecorderUtility\scripts\MM-MMF-ACLNT-RCRDR-PublicAPI.script
…\os\mm\mmapitest\mmsvs\suite\mmf\T_MdaAudioToneUtility\scripts\MM-MMF-ACLNT-TONE-PublicAPI.script
…\os\mm\mmapitest\mmsvs\suite\mmf\T_MidiClientUtility\scripts\MM-MMF-MIDI-PublicAPI.script
…\os\mm\mmapitest\mmsvs\suite\mmf\T_VideoPlayerUtility\scripts\MM-MMF-VCLNT-PLYR-PublicAPI.script
…\os\mm\mmapitest\mmsvs\suite\mmf\T_VideoRecorderUtilityscripts\MM-MMF-VCLNT-RCRDR-PublicAPI.script
Test Script EPOC tree location on Emulator: When the tests are built, the scripts are first exported to the following location in the epoc tree:
%EPOCROOT%\epoc32\data\Z\multimedia\
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\multimedia
Note: When the tests are built to be run on hardware, the files are built in the z drive of the ROM.
Test data source tree location
The test data files can be found in the following location:
…\os\mm\mmapitest\mmsvs\suite\mmf\T_MdaAudioConvertUtility\testdata\MM-MMF-ACLNT-CNVRT-PublicAPI.ini
…\os\mm\mmapitest\mmsvs\suite\mmf\T_MdaAudioInputStream\testdata\MM-MMF-ACLNT-INPT-PublicAPI.ini
…\os\mm\mmapitest\mmsvs\suite\mmf\T_MdaAudioOutputStream\testdata\MM-MMF-ACLNT-OUTPT-PublicAPI.ini
…\os\mm\mmapitest\mmsvs\suite\mmf\T_MdaAudioPlayerUtility\testdata\MM-MMF-ACLNT-PLYR-PublicAPI.ini
…\os\mm\mmapitest\mmsvs\suite\mmf\T_MdaAudioRecorderUtility\testdata\MM-MMF-ACLNT-RCRDR-PublicAPI.ini
…\os\mm\mmapitest\mmsvs\suite\mmf\T_MdaAudioToneUtility\testdata\MM-MMF-ACLNT-TONE-PublicAPI.ini
…\os\mm\mmapitest\mmsvs\suite\mmf\T_MidiClientUtility\testdata\MM-MMF-MIDI-PublicAPI.ini
…\os\mm\mmapitest\mmsvs\suite\mmf\T_VideoPlayerUtility\testdata\MM-MMF-VCLNT-PLYR-PublicAPI.ini
…\os\mm\mmapitest\mmsvs\suite\mmf\T_VideoRecorderUtility\testdata\MM-MMF-VCLNT-RCRDR-PublicAPI.ini
…\mmapitest\mmsvs\suite\testdata\t_multimedia.ini
Test data on EPOC tree location
When the tests are built, the test data files are first exported to the following location in the epoc tree:
%EPOCROOT%\epoc32\data\Z\multimedia\
Test data build location
When the tests are built, the test data files are built in the following location:
%EPOCROOT%\epoc32\release\<winscw|armv5>\<udeb|urel>\Z\multimedia
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 multimedia .driver file can be found in the following path:
…\os\mm\mmapitest\mmsvs\suite\testsuites\multimedia
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
The .tcs file can be found at the following location:
…\os\mm\mmapitest\mmsvs\suite\config\t_multimedia.tcs
TCS file build location
When the tests are built, the .tcs file is generated into the following location:
%EPOCROOT%\epoc32\release\<winscw|armv5>\<udeb|urel>\Z\multimedia
Note: When the tests are built to be executed on the hardware, the files are built into the z: drive of the ROM.
The t_multimedia.ini file is the test suite global environment file, which contains the following device specific configurable parameters under the [default_camera] and [default_mmf] section:
[default_camera]:
Defines the number of cameras available on the device.
count = 1
Set to the 0 offset index of the camera used for still photography tests.
validstill = 0
Set to an invalid camera index for negative still photography tests.
invalidstill = 100
[default_mmf]:
The full path and filename of the file to which converted audio data is appended.
secondarylocation = os\mm\mmapitest\mmsvs\testdata\mmf\T_MdaAudioConvertUtility\note2.wav
Defines the full path and filename of a file containing audio sample data to be converted.
primaryfile = os\mm\mmapitest\mmsvs\testdata\mmf\T_MdaAudioConvertUtility\note.wav
Defines the of the audio controller on the device.
controlleruid = 101F5022
Defines the default bitrate of the converted audio file.
convert_bitrate = 128000
Defines the codec to be used for the converted audio object.
secondarycodec = PcmWavCodec
Defines the codec to be used for the source (unconverted) audio object.
primarycodec = PcmWavCodec
Defines the TFourcc code of the converted audio format.
fourcc_codecformat = KMMFFourCCCodePCM16
Defines the default bitrate the audio stream player may be set to.
Input_bitrate = 10000
Defines the format the input audio stream may be set to.
fourcc_inputdatatype = KMMFFourCCCodePCM16
Defines the format the output audio stream may be set to.
fourcc_outputdatatype = KMMFFourCCCodePCM16
The playback file of the audio player.
playbackfile = os\mm\mmapitest\mmsvs\testdata\mmf\T_MdaAudioPlayerUtility\test.wav
Defines the format in which the audio data will be recorded.
fourcc_rcrdrdatatype = KMMFFourCCCodePCM16
The audio tone sequence files or descriptors to be played back by the audio tone player.
sequence = os\mm\mmapitest\mmsvs\testdata\mmf\T_MdaAudioToneUtility\sequence1.sqn
This is the alternate playback sequence.
alternate_sequence = os\mm\mmapitest\mmsvs\testdata\mmf\T_MdaAudioToneUtility\sequence2.sqn
Badsequence is a corrupt sequence used in negative tests.
bad_sequence = os\mm\mmapitest\mmsvs\testdata\mmf\T_MdaAudioToneUtility\badsequence.sqn
The corrupt file and path used for negative testing of the audio tone player.
wrong_filename = \wrongplace\wrongfile.file
Defines the default priority (A priority between EMdaPriorityMin and EMdaPriorityMax) of the tone to be played back.
tone_priority = 50
Defines the default prioritypreference value, which define the behaviour to be adopted by an audio client if a higher priority client takes over the device.
tone_prioritypreference = TimeAndQuality
The file containing Musical Instrument Digital Interface (MIDI) data to be used by the MIDI client.
midifilename = os\mm\mmapitest\mmsvs\testdata\mmf\T_MidiClientUtility\midi.mid
This enables you to modify these parameter values so that the tests may be executed with different test data. For example, if the bitrate of the audio stream player on the device under test is 2000, set input_bitrate to2000.
Device Setup
The following test suites requires additional plug-ins to be built before they can be run.
T_MidiClientUtility
The T_MidiClientUtility test suite requires that the device under test has the MIDI client plug-in with the MIDI controller in place. The Symbian platform does not provide an implementation of the MIDI controller assuming that device creators are likely to have their own implementation.
In the absence of a production quality MIDI controller, the test suite can be run using the test MIDI controller which can be found in the following location:
…\mw\mmmw\mmfwtest\mmfunittest\MidiClnt\MidiTestCntrl
The following commands for building these are in the following location:
…\os\mm\mmapitest\mmsvs\suite\group\mmsetup.pl
This can be run by running mmsetup.bat.
system("bldmake bldfiles"); system("abld build $platform $build miditstcntrl");
T_VideoPlayerUtility and T_VideoRecorderUtility
The T_VideoPlayerUtility and T_VideoRecorderUtility suites needs the device under test to have the camera hardware, complete video controller, video player and recorder application. The Symbian platform does not implement a complete video controller, CCamera, CVideoPlayerUtility and CVideoRecorderUtility classes assuming that device creators will have their own specific implementation depending on the hardware. In such cases, the device specific camera, codec and other input file related details can be modified in t_multimedia.ini (see Test global environment file section).
In the absence of a production quality camera application the test suite can be executed using the test camera application. The test camera application can be found in the following location (relative to the location of the source code):
…\os\mm\imagingandcamerafws\camerafw
The following components are to be built for the test video controller for Symbian platform versions 9.1-9.3:
These components can be found in the following location:
…\os\mm\mmtestenv
…\mw\mmmw\mmfwtest\mmfunittest
The following commands for building these are in the following path:
…\os\mm\mmapitest\mmsvs\suite\group\mmsetup.pl
This can be executed by running mmsetup.bat.
system("bldmake bldfiles"); system("abld test build $platform $build testcamera"); system("bldmake bldfiles"); system("abld build $platform $build TestFrameworkServer"); system("abld build $platform $build TestFrameworkClient"); system("bldmake bldfiles"); system("abld build $platform $build TS_CMMFVideoTestCustomCommands"); system("abld build $platform $build TS_CMMFVideoTestController");
From version 9.4 onwards, Avi Video Controller has been added to Symbian platform. In order for this controller to work, a xvid codec is required. The code for this codec can be downloaded from http://developer.symbian.org/wiki/index.php/File:Xvid.zip.
Follow the instructions in the readme.txt file contained in the zip file to build it. Please refer to Multimedia test technology for further information regarding test environment and build and execution procedure.
Support
For support issues related to this test suite, its description, and issues related to running the tests, test pass rates, and potential defects, contact Symbian or your SDK provider. In most instances, this will be either through the Symbian technical consulting teams, the SDK provider forums, or the developer area of the Symbian Web site.
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.