{{{ #!html
}}} = Automated Testing = '''Table of Contents''' [[PageOutline(2-3,,inline)]] PJSIP has been equipped with an automated testing script (called test scenarios) since version 1.6. This article explains what it is and how to configure it. [[BR]] == Introduction == The automated testing script/scenario updates, configures, builds, and performs various unit tests, and submit the result to [http://www.cdash.org CDash] test dashboard. The scenario uses [http://trac2.pjsip.org/ccdash CCDash] framework to automate the tasks, and supports !Windows/Visual Studio build system, GNU Makefile based build system (for Linux, Mac OS X, and possibly iPhone), as well as Symbian targets. Supported operations: - SVN update - configure - build - running unit tests - upload the result to CDash Supported targets: - GNU/Makefile based (Linux, Mac OS X, iPhone, etc.) - Windows or Visual Studio including Windows Mobile - Symbian S60 == Installation == 1. Create a CDash project, either by registering your project [http://www.cdash.org/CDash/ here] or by installing CDash locally. 1. Checkout PJSIP source code from SVN 1. Download and install [http://trac2.pjsip.org/ccdash CCDash] (click the link for the info) 1. Download and install any features to be used/tested, e.g. Intel IPP, Symbian APS/VAS plugin, etc. == Configuring and Running Test Scenarios == The general steps to perform a test: 1. Choose the appropriate scenario ''template'' for your target/test objective. The templates are listed below: || '''Target platform ''' || '''Template file name ''' || '''Description ''' || '''Requirements ''' || || Makefile based (Linux, Mac OS X, iPhone) || {{{gnu.xml.template}}} || Default settings || - || || Linux, Mac OS X || {{{gnu-ipp.xml.template}}} || Intel IPP || [wiki:Intel_IPP_Codecs Intel IPP and samples] || || MSVC/Win32 || {{{msvc.xml.template}}} || Default settings || - || || Symbian/S60 3rd Ed|| {{{symbian.xml.template}}} || Default settings || - || || Symbian/S60 3rd Ed || {{{symbian-aps.xml.template}}} || Nokia APS and APS-Direct || [wiki:APS Nokia APS plugin] || || Symbian/S60 3rd Ed || {{{symbian-vas.xml.template}}} || Nokia VAS and VAS-Direct || [wiki:VAS Nokia VAS plugin] || 2. Create a scenario from a template by running: {{{ $ cd tests/automated $ ./configure.py file.xml.template -o file.xml }}} 3. Run the scenario by running: {{{ $ ./run_scenario.py file.xml }}} The detailed steps for each template will be explained below. === gnu.xml.template === This configures, build, and tests with default settings. To perform this test: {{{ $ ./configure.py -t gnu -o gnu.xml gnu.xml.template $ ./run_scenario.py gnu.xml }}} === gnu-ipp.xml.template === Purpose: to test Intel IPP support Requirements: - [wiki:Intel_IPP_Codecs Intel IPP and samples] - Environment variables: - IPPROOT - IPPSAMPLES - IPPARCH (optional) - IPP path added to LD_LIBRARY_PATH To perform: {{{ $ export IPPROOT=/opt/intel/ipp/6.1.2.051/em64t/ $ export IPPSAMPLES=/home/bennylp/Desktop/opt/ipp-samples $ (optional) export IPPARCH=em64t $ export LD_LIBRARY_PATH='$LD_LIBRARY_PATH:/opt/intel/ipp/6.1.2.051/em64t/sharedlib' $ ./configure.py -t gnu -o gnu-ipp.xml gnu-ipp.xml.template $ ./run_scenario.py gnu-ipp.xml }}} {{{ #!html
}}}