Home
Tessy 2.9 - RAZORCAT
Contents
1. L3 SCE Tessy Scenario Editor How File Help C Scenario Proje gt O amp Component External Fun E Variables O C9 Initialization 2 CEF Se amp lQ 4 Z Declarations 2 0 mT F lt Definitions pe i inito E Stub Functions SFIO A 3 oms B crossed_25 43 set_number long value m amp number crossed_50 gi Wa E End of Scenario 0 ms 2 crossed_75 al ZJ User Code C Description Specification 5 3 o Initialization Specification 2 Normal Operatic 2P2ration mode int E Properties 5 Actual Call Trace z 3 General Scenario 2 4 Work Task i Description Step with Time Unit ms gi gt The step size may be changed using the Change button All time step names and the duration of the scenario will be updated automatically based on these settings Testing of Embedded Software Tessy 2 9 Component Test e 345 Editing Scenarios within SCE Please Note Changing the step size may be a non reversible operation because the number of time steps will be reduced or expanded according to the new time base This may cause reordering of the structure of your scenarios Adding Deleting Time Steps You may simply add or delete time steps within the scenario view using the buttons within the toolbar like shown below CY Initialization 23 CME deim i Insert Time Step 4g init SY 0 ms amp l number End of Scenario
2. z add_values a Parameter int add_values x int add_values y int add_values result get memory set_memory e Change current settings for the current test object Examble AddToMemory There are two options available You may return to the global setting of the function Use global stub setting or you want to create no stub for the current test object Don t create Stub for current testobject The last case leaves the global setting of the function untouched Testing of Embedded Software Tessy 2 9 Test Preparation e 173 The Test Interface Editor TIE F TIE 32 _Stubs AddToMemory F Fie Search Options Help Bal Si 22 Pame SSSSSCS S amp External Functions E a add values Use global stub setting a Parame get memory Create stub for current testobject Don t create advanced stub for current testobject set memory TIE will remove the stub for the current function and will indicate that by clearing the red tick This will work independently of the global module setting F TIE 32 _Stubs AddToMemory i File Search Options Help PERA pastonerey amp External Functions get memory set memory amp Local Functions Hide Global Variables for Local Stub Functions This feature will be automatically available as soon as you define a normal stub or an advanced stub for a loc
3. Test Report Monitoring Compare XML Reports You may also use the Diff Viewer tool to compare two XML report files of the same test object e Choose Programs Tessy Diff Viewer from the windows Start menu The Diff Viewer will appear ioixl File Edit Help a 2L t Reference FE tessy projects version ts_is_value_in_range xl aed Comparison c tessy projects version2 ts_is_value_in_range xml Beh OK Cancel e Choose File Open to select two XML Report files Reference and Comparison of the same test object e Click OK 332 e Traceability of Test Changes Testing of Embedded Software Tessy 2 9 Diff Viewer Testing of Embedded Software Tessy 2 9 Traceability of Test Changes e 333 Introduction Component Test Introduction The new component test feature within Tessy supports testing of several functions representing the software component that interact with themselves as well as with underlying called functions of other components The main difference to unit testing of individual functions is the focus of testing on the external interface of the component instead of internal variables or control flow You should be familiar with the overall usage of Tessy for the normal unit testing Some features like usercode and stub functions are still available for component testing but the respective editors will be found at different locations The component test fea
4. e Enable Static Functions If this box is not checked no static function will be listed in the test object list of the module e Enable Inline Functions If this box is not checked no function with the keyword inline will be listed in the test object list of the module e Enable Static Local Variables Static local variables within functions may be used as normal input or output 108 Test Organization Testing of Embedded Software Tessy 2 9 Module Properties variables within Tessy The interface parser will recognize those variables and they may be set and evaluated Note Static local variables require special handling Please refer to Input Values for static local Variables for more information Settings Tab source file selected Within the Settings tab you can force Tessy to hide functions of certain source files from being displayed in the list of test objects gt Source Module Ee Environment ey IsValuelnRange E PROJECTROOT scr is_val_in_range c eae PROJECTROOT scr stubs c oie I Hide Functions I Change local Includes l Defines j Options Settings f e Hide Functions This option may only be applied on source file level and though requires a source file to be selected Checking this option box will gray out the icon of the selected source file and indicates a hidden source file This option is useful for additional source files needed for testing e g
5. Note To leave the search result mode of the flow chart tab just click somewhere into the flow chart CV will switch back into normal mode C1 Coverage View The C1 Coverage view displays the branch coverage for each individual test case and test step as well as the total coverage for all test cases and test steps The coverage information in this view is always calculated for the currently selected function within the Called Functions view of the CV If you selected only the C1 coverage instrumentation for test execution you will see only the C1 branches highlighted in red and green within the flow chart like shown below 306 e Monitoring of C1 and C2 Testing of Embedded Software Tessy 2 9 MC DC Coverage View Piitessy Coverage viewer 15 x File Chart Window Help let lt O sx H0 BE Called Functions gt 7 is_value_in_range 3 gt A Cl Coverage Z Futon c mooc mce z Total Coverage 50 00 is_value_in_range m NA Nia Testcase Teststep Coverage 50 00 4 A This is a very basic program to demonstrate the integration of Tessy and HiTOP the debugger from Hitex c Hitex Systementwicklung GmbH 2001 www hitex de 7 Revision 2 is_val_in_range c C1 Report struct range int range_start int range_len 4 P The total coverage Summarized Total Coverage The summarized total coverage i
6. 140 Tessy Environment Editor TEE Testing of Embedded Software Tessy 2 9 Creating Configuration Files Pijte Tessy Environment Editor File Edit Options Help i Save Hide Disabled x Attributes fab Compiler Call gcc c USEROPTIONS DTESSY o OUTPUT ab x Compiler Commandline Cc l Compiler Defines rasemexcres Bla Comer ed Targets oy J Compiler Includes g Environments a Compiler Install Path TESSY_CYGWINPATH ab a Compiler Version ab a Defines Exclude List TESSY unix __ i386 x86 Ra Configurations E System E Init Code ic anvacc E Init Definitions GNU GCC C 2R ab _ Linker Options Cosmic HCS12 TASKING C166 ab Make Call Make Command win32 TESSY_MAKE_SILENT F TASKING XC166 ab Make Command make 3 80 exe fos Network ab a ObjFile Extension o E All Users ab Preprocessor Call gcc E USEROPTIONS DTESSY o OUTPUT User Administrator ab a Scanner Call sh exe tks sh gcc Project Root C tessy samples 2_6_5 E E ic E We would also recommend storing all specific files e g linker file makefile template libraries for a given custom configuration file in a separate folder other than Tessy s default folders together with other project related files e g source files Testing of Embedded Software Tessy 2 9 Tessy Environment Editor TEE
7. Actual Failed 100 0 150 0 Ly S aa DO eo Oo S EN T oaa E S aE S 10 20 30 40 50 60 70 80 90 Test Reports with Timing Measurements Tessy provides timing measurement implementations which are only available for selected targets and microcontrollers Please refer to the application notes Timing Measurements under Help Documents for more information on how to use timing measurements with Tessy The timing measurement results are displayed in the respective sections of the test report document e g HTML 294 e Test Report Testing of Embedded Software Tessy 2 9 Creating Reports Test Report KEMAT Menu Project Sample Module IsValueInRange 4 Testcase 1 Testobjec is value in range H A Testcase 2 Ai Testcase 3 User Administrator H A Testcase 4 Haii pren Pap e Date orfo Durat z 40 ys Time 10 31 13 z Ai Testcase 7 R 7 20 ys A Testcase 8 AA A Testcase 9 C1 Coverage 100 00 ETEN ys n a0 ys meet MCC Coverage 100 00 9 ET k MC DC Coverage 100 00 7 118 40 ys 118 40 ys 202 80 ys eststep Time Summary Longest 3 1 203 20 ys Shortest 1 1 118 40 ys Module Properties PDB File E tessy26 xamples 2_6_S sample pdb gt Directory E tessy26 ramples 2_6_5 Sample _ Sample sValuelnRange a pr Environment TASKING XC 166 SKING Crossview Default ind of Test Unit Test z Source Files Compiler Options Expand All Collapse All Help
8. Expand All Collapse All Help Home X Frames No Frames Floating Menu Fa Note The HTML report use relative links to all linked items Therefore you may zip the whole directory structure with all files and folders to provide a test report to other users for reviewing without problems You may also use Compiled HTML Help File format to reduce the files to be copied refer to Test Report for details Running Batch Tests at Command Line Tessy provides an interface to run a given batch test without the GUI of Tessy refer also to Restore a Module Using a Command Line This will assume that you have finished the test preparation creating a batch test file s Batch Test The batch test file contains the name of the PDB file with full path name that shall be used the execution settings and a list of projects modules testobjects to be executed In order to overwrite or ignore the PDB file name within the batch test file you may specify the PDB file on the command line There is a command line tool tessycmd exe in the bin folder of the Tessy installation which will be used to execute the batch test Usage Testing of Embedded Software Tessy 2 9 Running a Test e 277 Batch Test tessycmd log log file lt tbs file gt pdb file project root e log optional Note Tessy creates also a log file tos file name txt by default in the directory where the tbs file lies e tbs file tbs created using Tools Batch
9. c cccccecsseescesceeseceseeeeeeeeceeeeeesseesseeneeeses 315 The Interface Data Assign Editor IDA ce cecceecseesceeseeeeceneecseeeseeseeeneeenes 315 Assigning Test Objects cerniere a Rr E eaten 317 Assigning Called Functions ccccecccessceseceseceeceeceseenseceeecaeeeseeeseeneeenseens 319 Assigning Interfaces eerren nE eh wices Aveta E ER 320 Specify Options for Automatic Assignment ssssssseseesseserseesersresreeessesees 324 Accepting Changes and Exiting IDA eeeecceseeseceteceeeceeeeeeeeeeneeeneees 325 Traceability of Test Changes 327 Diff Vie Wer apenn eiee j a EEE E E E NEE ae 327 Automated Collecting of Test Results ss ssneseseeesssreessesseerssersessreeesssees 327 Compare Test Resultsirn nennen R E EE 328 Create Snapshots ssc cises ve fess nee doce a E R ERR RR 331 Clean History aisnean as na en a a i leds e E e ii 331 Compare XML RSport Se oee eE e EE E E EON EEE E 332 Component Test 335 Into MUCH ON AREE REA EA E TETT 335 Component Test Modules ccccccessecsseeceesceesceseeeseeeeeeseenseeseeeesecsaeeneeeeeenes 336 Interface of the Component ccccesceesseescessceeeceseeeeeeseeeseceseeaecnseceeeaeeenes 337 Scenarios as Test Cases for the Component 0 eceeeceseeeceeeeecneeeeeeeeeeeees 339 Editing Scenarios within SCE cccccccssesseessceeeeeseeeseeeeceeceeecnaecneeeeeeaeeeaes 342 Adding Deleting Scenarios cccceescessceseceteceseesecesecesecseecseeeaeeeeeenseee
10. B a Compiler Commandline i Compiler Defines l Compiler Id fim J Compiler Includes a Compiler Install Path TESSY_CYGWINPATH ab ee Compiler Version ab a Defines Exclude List TESSY unix __ i386 X86 P Enable setjmp longjmp false EE Init Code E Init Definitions B a Linker Options ab Make Call Make Command win32 TESSY_MAKE_SILENT f ab Make Command make 3 80 exe ab a ObjFile Extension 0 ab a Preprocessor Call gcc E USEROPTIONS DTESSY o OUTPUT INPUT e You may now change settings for this new configuration file to suit your needs You may delete the debuggers from the configuration if they are not necessary for your test environment if any Important note Carry out all changes for your specific test environment in the File section Only these changes are taken over in the configuration file 144 e Tessy Environment Editor TEE Testing of Embedded Software Tessy 2 9 Creating Configuration Files Pjr Tessy Environment Editor Eioixi Fie Edit Options Help CEFER fir General piel nme S e k q Comper yv a Enable Static Locals true B fz Sba vj a Execute Testcases Se false ab a ExeFile Extension exe a Configurations E a Float Precision 1 E System V Hide
11. I PROJECTROOT Aine A PROJECTROOT inc inc_a A PROJECTROOT inc ine_b Cancel r Compiler IPROJECTROOT inc IPROJECTROOT inc inc_a PROJECTROOT incSinc_b IV Change local Includes Defines Options f Settings f Note Please use the appropriate compiler option for your target compiler e g gcc I to specify include paths in the list Move Includepath If necessary you can change the row sequence of the include path list e Right click one of the inserted include paths and choose Move Includepath Up or Down from the context menu You may also use Shift Up or Shift Down keys ona selected item PROJECTROOT inchinc_a PROJECTROOT inc inc_b Add Includepath INS Remove Includepath DEL Replace Includepath Move Includepath Up SHIFT UP Move Includepath Down SHIFT DOWN IV Change local l Includes f Defines f Options j Settings Edit as Text Replace or Remove Include Paths To remove a include path 106 e Test Organization Testing of Embedded Software Tessy 2 9 Module Properties e Select a include path and choose Remove Includepath from the context menu or use De1 from the Keyboard To replace a include path e Select a include path and choose Replace Includepath from the context e From the next Browse for Folder dialog select another include path Defines Tab Within the Defines tab you may define a macro for the
12. archive header Information about the module which will be inserted in a given PDB file using Module Restore database This folder contains the information of the interface test data CTE files and related data Restore a Module You may restore a module from an existing module backup file tmb into any project folder s also Restore a Module Using a Command Line Do the following e Select a project folder in Tessy s project window 94 e Test Organization Testing of Embedded Software Tessy 2 9 Creating a Module e Choose Restore from the Module menu The Restore Module dialog will open Look in E tessy x e ex Ea database obj report Sample source testarea ts_Stubs_08 04 2003_16 03 00 tmb gt Filename ts Stubs 08 04 2003_16 03 00 tmb Files of type Module Archive tmb x Cancel e Select one TMB file and click OK Tessy will insert the module Note The module archive contains the primary settings of a module so that the you have to check the module properties e g path of the source file s Restore a Module Using a Command Line Tessy provides a command line interface to restore module backup files s Save a Module in a given project database without the GUI of Tessy You may use this feature in combination with the Batch Test Usage pdb32 exe path pdb file project_name path tmb filel path tmb_file2
13. 314 e Monitoring of C1 and C2 Testing of Embedded Software Tessy 2 9 Performing Regression Testing Regression Testing Performing Regression Testing Source files are often modified extensively during the later stages of development thus making it necessary for a new test to take place i e a regression test This can alter the interface of an existing test object In order to allow you to reuse test data that has already been entered the Interface Data Assign Editor IDA allows the assignment of old interface elements to new ones This way old test data can be reused automatically The Interface Data Assign Editor IDA It s not possible to directly start the IDA Whenever a module is opened Tessy checks if any modifications to the source file have been made In case of changes Tessy will open following dialog Tessy Open Module x Q Module Interface has changed Do you want to reuse the old database or create a new one New Cancel Testing of Embedded Software Tessy 2 9 Regression Testing 315 Performing Regression Testing Choose either Reuse to keep the old interface information and test data for further processing or choose New to delete all settings to start from scratch Warning Again clicking on New will remove all test data and interface information from the test database e To keep all test data click on Reuse The IDA will open LT inlx File Assign Options Help g xaj 4
14. Component Test e 359 Contact Support Troubleshooting Contact Support In this chapter we offer solutions to some commonly asked questions and error messages that may occur using Tessy If you have further questions as well as error reports please contact our technical support Phone 49 0 30 53 63 570 Fax 49 0 30 53 63 57 60 e Mail support razorcat com Internet http www razorcat com Enable Logging for Troubleshooting In case of problems you may switch on several debug level to get more information about the possible error in the message window of Tessy e Process Creation e Parser e Instrumenter e Makefile Commands Testing of Embedded Software Tessy 2 9 Troubleshooting 361 Contact Support e Target Communication Please do the following to enable logging e Start Tessy please close TIE TDE Usercode editor if open e Choose Help Support Logging and then an appropriate command e g Makefile Commands On Off to enable or disable logging Help About Tessy Help Topics Tutorial Samples Create Support File Documents gt 1 Process Creation egister 3 Instrumenter 4 Makefile Commands 5 Target Communication e Clear the message window by choosing Delete all from the context menu e Repeat test execution with Generate Driver and Run e Analyze the message window for troubleshooting If you cannot solve the problem themselves you may send the supp
15. Example TS REPEAT COUNT 3 This means that the test object will be executed three times The input values to the test object will not be changed for any repetition The output values will be saved to the test database after the last repeat cycle Important note The TS_REPEAT_COUNT variable is only available within the test step prolog Example 0 x File Edit Tools Dant 4B p Declarations Definitions Testobject Prolog Epilog Testcase Prolog Epilog Teststep Prolog Epilog S P Testobject Teststep 2 z Repeat Count 24 B41 Bars ffS REPEAT COUNT 10 a B12 Epilog 13 a 2 KI 324 22 Prolog amp 23 en Error injection jraw_signal 6 In the above example the test object will be called 10 times then the epilog will be executed which changes the value of one of the input variables Then due to the test step repeat count set to 2 the prolog will be executed again and though the test object will be called 10 times again with the new input value Current Test Case Test Step Counter The predefined variables TS_ CURRENT TESTCASE and TS_CURRENT_TESTSTEP are available in the scope of the Usercode indicating which test case or test step is currently being executed You can use them to execute specific code for each test case or test step This may be helpful when coding stub functions Testing of Embed
16. Left hand pane The left hand pane provides two sections General and Configurations e General lists all supported Compiler and Target environments which were configured with default settings e Configurations lists all supported compiler and target combinations The settings of these combinations have been inherited by the General section s Using Default Configurations below 128 e Tessy Environment Editor TEE Testing of Embedded Software Tessy 2 9 Starting the TEE Right hand pane The right hand Attribute pane displays all attributes of an item as soon as it was selected in the left pane Paree Tesey nvr cr File Edit Options Help 5 X E B jg Fide Disabled ih General a G Compiler G cosmic HCS12 P amp ay ASAP Module G GNU GCC c a R G TASKING XC166 N ASAP Project 8 eg Targets 2 Batchtest Wait Time E anu avo ERa Buffer size a LAUTERBACH TRACE32 Call Count Size we TASKING Crossview Compiler Call lgcc c USEROPTIONS DTESSY o OUTPUT INPUT E g Environments Compiler Commandline a a eb Configur ations A Compiler Defines a a Compiler Id loxo1 B 4 System p a G GNU GCC He Compiler Includes Compiler Install Path TESSY_CYGWINPATH a E Gnu avo E E GNU GCC C a E anu evo g Defaut H Cosmic Hcs12 E LAUTERBACH TRACE32 g Defaut E TASKING xC166 S E TASKING Crossview g Defaut d Network All Users
17. Registration Specify Central License Server If you have a license server running within your local network please take the following steps e Start Tessy from the folder Tessy 2 9 within the Windows Start Menu If you didn t enter any license information before you will see the following dialog Ix Tessy Registration RIZOMAE Tessy 2 5 1 a4 Razorcat Development GmbH OK Support and Distribution ESET Tel 49 30 5363570 Fax 49 30 53635760 HELE e mail support razorcat com Help Web www razorcat com r License Server use local License Server use remote License Server Server Settings Host Jicense_sever SS Port 10000 m Notebook License T check out License for fi days J remind me to check out e Insection License Server please select use remote License Server e In section Server Settings please specify the address and port number of your central license server Please ask your system administrator for this information Click on OK Tessy tries to connect to the license server If an error message occurs please see Troubleshooting License Server on page 46 Note Now you have completed the registration and Tessy is ready to go Install Central License Server Important Note In order to share the license with other users within your network you need to have a server license s Registration on page 36 Testing of Embedded Software Tess
18. You may use environment variables to set certain options Usage flsd lt directory gt OPTIONS directory Options help version verbose foreground no keys file file pore pert l g USsSage statierics ping timeout seconds no ans no keepaliv no nodelay Environment variables FLSD_ FLAGS FLSD PORT FLSD FILE FLSD_ PING TIMEOUT server s home directory print this help list print version info be verbose run in foreground disable checkout license keys license file to use alternative port enable usage statistics log timeout for next POLL from client do not reverse lookup hostname set SO_KEEPALIVE to FALSE set TCP_NODELAY to FALSE any option without an argument alternative port license file to use timeout for next POLL from client Troubleshooting License Server In the following you will find the most important problems which can appear while starting or connecting the Floating License Server e Errors upon connecting a central License Server e Errors upon starting the License Server 46 o Installation Testing of Embedded Software Tessy 2 9 Registration Note You will find a log file flsd log within the bin folder of the license server installation Errors upon connecting a central License Server Error connecting to host Please check the address and port number that has been used to specify the central license server
19. file s are displayed as children of the module folder Our sample source file contains only one function our test object is_line_ covered by rectangle _L A 8 8 8 ainix File Tools Options Project Module Testobject View Window Help Hel salaa a e F Database C tessy Tutorial pdb B Tutorial B IsLineCovered Welcome to Tessy nalyzing Interface for Module IsLineCovered 2 42 47 PM Note The term Test Object s will define the function s displayed in the module folder and we are attempting to test Test object is used throughout the manual 62 e Quickstart Testing of Embedded Software Tessy 2 9 Tutorial If the test object is line covered by rectangle is selected the Unit and Properties tab appear in the right pane of Tessy s main window e The Properties tab lists all settings which has been chosen for the module e g compiler debugger list of source files e The Unit tab holds the test cases of the test object and is empty at the moment Edit Test Object Interface In this section you will review the interface settings of the test object and determine which values are input and which ones are output variables Note Upon opening the module Tessy will try to analyze all interface objects of your test object automatically variables functions enums parameters etc In case that no unresolved object has been found Tessy will open the respective clamp the test object icon to indica
20. Advanced System Protection Remote You must be logged on as an Administrator to make most of these changes Performance Visual effects processor scheduling memory usage and virtual memory Settings User Profiles Desktop settings related to your logon Startup and Recovery System startup system failure and debugging information C Settings Environment Variables OK Cancel Performance Options Visual Effects Advanced Data Execution Prevention 5J Data Execution Prevention DEP helps protect oe threats How does it work Turn on DEP for essential Windows programs and services only Turn on DEP for all programs and services except those I select V fismor exe Tessy for Windows NT 4 0 2000 xP g Your computer s processor supports hardware based DEP x Cancel _ Apoly Performing Silent Installations You may install Tessy silently with a command line For more information please refer to the application notes Installing Tessy from Help Documents Setup includes also a msi package which has been generated by InstallAware Testing of Embedded Software Tessy 2 9 Installation e 15 Installing Tessy Installing Tessy Important note You need local administrator privileges on the system in question to perform the installation of Tessy When installing Tessy 2 9 there may be one of the following situations on the targeted computer e No Tessy installation present New
21. Kn 310 Monitoring of C1 and C2 Testing of Embedded Software Tessy 2 9 MCC Coverage View Uncovered Condition Combinations In case of uncovered condition combinations within a decision you may easily find out the respective settings for the atoms within the combination table By analyzing the code of the decision you may use the true false settings of the combination table within another test step in order to cover the missing combination You should pay attention to conditions that are negated because this may be confusing when analyzing the combination table settings When adding test steps with other up to now uncovered condition combination settings you may find out that as a result of a new test run the order and content of the Teststep column have changed This is the result of Tessy s calculation to find out the best fitting set of test steps for the given decision MCC Coverage View Refer to the description of the MC DC Coverage View The only difference is the combination table of the decisions as they are calculated according to the definition of the MCC coverage The Code View Depending on the currently selected function within the Called Functions view the respective source file will be displayed within the code view There is a tooltip available when moving over the source file name i e the name of the code view displaying the full path name of the source file is_val_in_range c C1 Re
22. Local Functions Please mind that you have to provide C code for the defined stub functions by using the Usercode Editor of Tessy see Usercode e g a return value 170 e Test Preparation Testing of Embedded Software Tessy 2 9 The Test Interface Editor TIE Using Advanced Stub Functions This enhancement to normal stub functions s Create Stub Function allows to provide values for parameters and return values of stub functions like normal variables see The Test Data Editor TDE You may check if the stub is called by the test object with the specified parameter values otherwise the test fails You may also provide a return value for further processing by the test object This reveals if the test object handles the return values of the stub function correctly Create Advanced Stub Function You may create advanced stubs for External and Local functions There are several options available e Create an advanced stub for a function for all test objects of the module global setting Select a function either from section External Function or Local Function and choose Create advanced stub function from the context menu E TIE 32 _Stubs addToMemory File Search Options Help PPR eartenenay amp External Functions Create stub Function for all testobjects get memory Create d stub For all cts set memory amp Local Functions Create stub for current testobject Crea
23. Parameter E R Return Qy enum yes yi B Dynami Eb sy struct point rect_p ints Actual Value yes o inty 2 int width 2 intheigth struct Line line Ely struct point p1 o intx iny Eh sy struct point p2 o ints o iny R Dynamics Taking into account the evaluation mode a test was successfully executed if the expected values specified in TDE does coincide with the actual values The TDE will indicate that using a green tick e To display the Actual Value of enum please move the mouse pointer over the return value enum as shown in the picture above Congratulations you have completed the Tessy tutorial Note You will find more information on special features and dialogs in the following chapters of this manual You may also review our sample project database For this purpose please choose Samples from the Help menu to open the sample project database 76 e Quickstart Testing of Embedded Software Tessy 2 9 Databases Test Organization Databases Tessy uses two kinds of databases The so called project database a single file with extension pdb which contains the meta data of projects s Creating a Project and modules s Creating a Module as well as information on the test environment used source files compiler debugger etc s Creating a Project Database The other part of the proj
24. The directory that shall be used for the module backups i e the TMB archive files of the module need to be selected prior to any save restore operation Choose Database Backup Backup Directory from the File menu in order to select the backup directory Testing of Embedded Software Tessy 2 9 Test Organization e 121 Test Database Backup 4 Tessy File Tools Options Project Module Testobject View Window Help New Database Open Database Sample pdb Close Database Database Backup gt Save Restore Backup Directory Project Root Configuration File 1 D tessy samples 2_9_9 Sample pdb Exit StaticLocals C ComponentTest This will show a folder selection dialog where you may select the desired backup folder or create and select a new folder The default backup folder is like follows PROJECTROOT Tessy backup Save to Backup Directory You have the following possibilities to save modules of the currently open test database i e the PDB file into the backup directory e Save all modules from the current test database i e the current PDB file by choosing Database Backup Save from the File menu e Save all modules of a project by selecting the project and choosing Project Backup Save from the context menu e Save a single module by selecting the module and choosing Module Backup Save from the context menu The picture below shows the backup operation o
25. implementation of stub functions for called functions Functions from those helper files may be hidden from the list of test objects since they are not relevant for testing and reporting Symbol Appearance in the Source Module Pane The icon in front of a module name and every source file name indicates the current status and option settings for this item Local changes such as additional compiler directives include paths etc indicates Tessy with a red tick in front of the module or source file name The check box Change local will be checked in the respective tab Testing of Embedded Software Tessy 2 9 Test Organization e 109 Module Properties IV Change local Includes j Defines j Options F Settings j Icon Description No special module options defined Module options defined amp No special source file options defined Source file specific options defined Source file is hidden No special options defined Source file is hidden Source file specific options defined oE Newly added file Newly added file Source file specific options defined g Hil Ea Newly added file Source file is hidden Ta Newly added file Source file is hidden Source file specific y options defined Linker Binary Tab Depending on the setting of Test Binary in the General Tab either the Linker or the Binary tab will be shown Linker tab setting generate test
26. x e Contents Testing of Embedded Software Tessy 2 9 About Tessy Preface About Tessy Dynamic testing is indispensable when testing a software system Today up to 80 of the development time and costs go into unit and integration testing It is therefore of urgent necessity to automate testing processes in order to minimize required time and costs for developing high quality products This is where the test system Tessy comes in by automating the whole test cycle unit testing for programs in C are optimally supported in all test phases The system also takes care of the complete test organization as well as test management Unit Testing with the Test System Tessy Tessy offers an integrated graphic user interface conducting you comfortably through the unit test There are special tools for every testing activity as well as for all organizational and management tasks The unit test in Tessy is divided into the following central test activities e Test case determination e Test data and expected value determination e Test execution Testing of Embedded Software Tessy 2 9 Preface e 1 About Tessy e Test evaluation and test documentation Each phase is separately executed for every test object Test objects are the export functions of a module The test organization takes place in projects containing modules to which in turn the respective test objects are assigned The source code of a module is parsed automatically to dete
27. 0 ms 346 e Component Test Testing of Embedded Software Tessy 2 9 Editing Scenarios within SCE The location of newly added time steps depends on the current selection within the scenario view e Ifatime step is selected new time steps are added before the selected one e Ifno time step is selected all new time steps are added after the last time step of the scenario With the Insert Time Step At command you may add time steps at dedicated points in time C3 Initialization 23 2H HI Qi7O 3 0 INIT Insert Time Step z E init Insert Time Step At Ooms You may specify the desired time within the Insert Time Step At dialog Insert Time Step At Time 100 The new time step will be shown at the desired point in time Any time intervals greater than three time steps between the desired time step and other displayed time steps will be shown as hidden time steps refer to section Hidden Time Steps In the example below the time steps 10 to 90 are hidden Testing of Embedded Software Tessy 2 9 Component Test e 347 Editing Scenarios within SCE C3 Initialization 3 My g z E Q cap INIT 25 init 0 ms amp number 10 90 ms cons End of Scenario 100 ms Hidden Time Steps Since scenarios may grow very long the default display mode hides all empty time steps i e without any called function or other entries The toolbar button Hide empt
28. 4ili Testcase 3 L M Graphics 3 Goto Top Cc CE result plot of one variable over all test cases 252 e Enter Test Data Testing of Embedded Software Tessy 2 9 The Test Data Editor TDE Test Report Tessy V26 8 Menu E A Testcase 1 A Testcase 2 A Testcase 3 P Testobject Graphics Goto Top Testobject Result Plot Variable calc_sine for all Test Cases 150 0 4 Bitcheck 130 140 Individual bits of a variable can be checked during the evaluation for a test case result It will be possible to mask out bits of an expected value in the TDE e g O0b000xxxx1111000 e Ob Format on page 236 e 0 denotes an unset bit e 1 denotes a set bit e X Testing of Embedded Software Tessy 2 9 is the format specifier s Enter Values in Decimal Hexadecimal or Binary denotes a don t care bit in the expected result Enter Test Data e 253 The Test Data Editor TDE LI lolx File Edit Search Tools Options Help B S 2da pda calf ah iE unsigned char bin_in unsigned char dec_in 10 unsigned char dec_out unsigned char hex_in unsigned char hex_out mn Parameter a Parameter B Dynamics R Return B Dynamics Ignore Values for a Test Step By default all variables have to be assigned a value if the passing direction of an element has been set to In or InOut in the TIE However it can be useful to not overwrite a value calculated
29. All other tool capabilities like editing or environment and interface settings are additional features out of scope of the tool qualification The core workflow of Tessy has been certified according to ISO 26262 08 2011 and IEC 61508 2010 Starting from editing of test data the core workflow covers test execution evaluation of test results and report generation Additionally the coverage measurements have been verified according to our certified safety plan Please note that the Classification Tree Editor CTE which covers test preparation activities is not part of the certified core workflow of Tessy Safety relevant problems arising in released Tessy versions will be reported once they are detected and regarded closely to have them fixed as fast as possible If you work with Tessy in a safety related environment please register for our safety customer e mail list e Send an e mail to support razorcat com e Topic Known problems requested e Content your contract data You will be informed about current and newly arising known problems as well as workarounds 6 e Preface Testing of Embedded Software Tessy 2 9 Safety Procedures Instrumentation for Coverage Measurement When executing tests using coverage measurements it is recommended that all tests are executed once with and once without coverage instrumentation Both test runs shall yield the same actual results indicating that the instrumentation did not change the funct
30. If you cannot transfer the license key file directly to the target computer then just type the license key the first line of the license key file in a file named notebook_like dat Save this file on the target computer into the server s bin directory normally to C Program files Razorcat fls bin Start Tessy on the target computer As long as the license key is valid Tessy will automatically start a local license server on this computer If an error message occurs please refer to Troubleshooting License Server Testing of Embedded Software Tessy 2 9 Installation e 51 Tutorial Quickstart Tutorial The purpose of this tutorial is to give you a quick start understanding of the features incorporated into Tessy regarding Unit Testing If you want to know more about the component testing feature of Tessy please refer to chapter Component Test Unit Testing The basic functionality will be shown on a sample test cycle using a simple source code example is_line covered by rectangle After this short introduction we would like to encourage you to discover further features of Tessy using our sample project database Please choose Samples from the Help menu to open that database This file will be copied to c tessy samples version sample pdb by default The path may differ depending of your installation Note Tessy includes the GNU gcc compiler for Windows and can run the tests on the Windows PC which is normally
31. Note You may create your own Formats by using Python scripts Please refer to the application notes Report Scripts from the Help Documents Customization menu for more information on this topic Furthermore it s possible to view the results of a C1 and or C2 MCC MC DC coverage test using the monitoring function e see chapter Monitoring of Cl and C2 for more details Testing of Embedded Software Tessy 2 9 Test Report e 281 Creating Reports E 282 e Test Report Click Test Report icon in the toolbar or select Test Report from the context menu of a test object to create a test report The Create Test Report dialog will open Generating a Report after a Test Run A test report can be generated as soon as Tessy has finished running a test Tessy will automatically use the generated XML file from the respective module folder to create the report Tessy Create Test Report gt Format DB HTML File X m Style Screen fed r Layout Details Failed Testcases Only Details Failed Testcases Outputs Only Details Failed Teststeps Only Details Failed Teststeps Outputs Only Details Outputs Only Details Without CTE Graphics E Summary Summary and Testcases Info m Output Directory fe Projects razorcat tessy sample _Sample lsValuelnhia El Cancel Testing of Embedded Software Tessy 2 9 Creating Reports e You may choose from the following sett
32. Testcase 4 L g Teststep 4 1 A A Testcase 5 i Teststep 5 1 Testcase 6 Lg Teststep 6 1 Gali Testcase 7 i Teststep 7 1 5 4 Testcase 8 Administrator Host ODIN Date 16 02 2007 Time 14 17 39 C1 Coverage 100 00 MCC Coverage 100 00 9 MC DC Coverage 100 00 9 PDB File Ci tessy25 samples 2_4_9 sample pdb_ Lufi Teststep 8 1 Directory Ciitessy25 samples z_48 Sample _ Sample sValuelnRange i arget Environment GNU GCC GNU GVD Default a Born 9 ia ind of Test Unit Test 4ia Teststep 9 E 4li Testcase 10 7 h Teststep 10 1 i 4 Goto Top Source Files Compiler Options TESSY_SAMPLES_SOURCE is_val_in_range c Revision 2 k File MODULEPATH s_is_value_in_range cte Expand All Collapse All Help Home x Frames No Frames Floating Menu General Data The General Data section right hand window upper left corner contains following information see picture below Project _Sample Module IsValueInRange bd P roj e ct Testobject is_value in range Name of the proj ect User Administrator e M od u le poat oP Name of the module Date 16 02 2007 Time 14 17 39 Testobject iia dau Name of the test object of the test run You will Mecceterages donates get the interface description if you click the link MC DC Coverage 100 00 see Interface Description below e User Name of the user who carried out the test run e Host Name of the computer on which the
33. The component test feature within Tessy supports testing of several functions representing the software component that interact with themselves as well as with underlying called functions of other components The main difference to unit testing of individual functions is the focus of testing on the external interface of the component instead of internal variables or control flow s Component Test Database Format The version of Tessy uses the Java relational database management system Derby to store information of the module interface as well as test data please refer to the chapter Databases This will enhance the performance of Tessy especially by using large module interfaces e g during component tests and huge test data e g more than 1000 test cases Test Database Backup Feature The backup feature of Tessy provides means to backup modules into a dedicated directory for easy checkin into a version control system Modules may also be restored from that directory which facilitates checking out modules from the version control system onto another computer and restoring the test database please refer to the chapter Test Database Backup Testing of Embedded Software Tessy 2 9 Preface e 9 Conventions Importing Test Data Using a Command Line Tessy provides an interface to import test data from a command line into the test database of Tessy Import Test Data You may choose different import formats like txt or xls Too
34. The default value is Equal F TDE SineFunction calc_sine 1 1 x File Edit Search Tools Options Help Sa 2er euler al T al a Specification low sampling rate Description T Ta i Globals a Parameter RA Parameter unsigned char radian vau 0 E Retum enum yes_no_t interpolate yes hd B Dynamics BR Dynamics is gt lt gt lt w The Test Evaluation Mode together with the Expected Value will be used to process the test results after the test run see Test Report and View Results after Test Execution e To set an evaluation mode for a component choose an appropriate evaluation mode from the combo box There are following standard evaluation modes available s Special Evaluation Modes for Result Plots equal checks the expected value and actual value for Equality the default setting unequal checks the expected value and actual value for inequality gt greater Testing of Embedded Software Tessy 2 9 Enter Test Data e 249 The Test Data Editor TDE checks if the actual value is greater than the expected value lt less checks if the actual value is less than the expected value gt greater or equal checks if the actual value is greater or equal to the expected value lt less or equal checks if the actual value is less or equal to the expected value range checks if the actual value is within
35. This ensures that each fest step will be started with an initial state of the system e Go until Testobject Running the whole binary application until the beginning of the test object for each test step This requires that the test object will be called at least once If you don t select this option you will need to use the user code scripting facilities to run until the test object Attributes Tab The Attributes tab specifies settings required by the compiler or the target environment of the module Most attributes were presets They have been specified in the Tessy Environment Editor for a given target environment s Using Default Configurations Attributes are only displayed if they have gotten the property visible in the Environment Editor The Attribute pane may be empty 112 e Test Organization Testing of Embedded Software Tessy 2 9 Module Properties Module Properties i x General Sources Linker Attributes Comment R3 a Code Segment Begin OxC000 R Data Segment Begin 02000 v Execute Testcases Separately false E alnit Script ITESSY_TESTAREA Shitop_init_hc12 scr RE Stack Pointer Init 0x4000 Ra Vector Table Begin OxFFCE B Vector Table File TESSY_SYSPATH stc comm yvector_cosmic_he12 c You may change the default values or add new attributes to the Attributes pane Changes are carried out only locally and don t influence other modules This meant that default v
36. ab ObjFile Extension obj ab a Preprocessor Call TESSY_BINPATH b20 ts_cpp u USEROPTIONS I Co ab Scanner Call sh exe tks sh tasking c166 a Type Table File TESSY_SYSPATH compiler typetable xml Time Unit ys Timer Enabled false Timer File TESSY_SYSPATH src comm ts_timer_c166 c Timer Prescale 5 E SB Timer Resolution 0 4 When the expert mode is not activated only basic attributes are visible for the user The later case is the default setting and appropriate if your test environment has been already configured for the end user Testing of Embedded Software Tessy 2 9 Tessy Environment Editor TEE e 127 Starting the TEE io File Edit Options Help G Hide Disabled z Attributes firi General l Ei G Compiler auec EN Compiler Defines gt ASKING XC1665 Cy Compiler Includes ASKING XC166 a 7 0a Compiler Install Path ProgramFiles Tasking C166 B argets g Environments Ea 1t code i EE Init Definitions Re Configurations ab Linker Options 5 System b Time Unit amp anvacc Timer Enabled G GNU GCC C Timer Prescale a amp TASKING XE155 9 Timer Resolution B E TASKING Crossview g Defaut c Network All Users User Administrator Project Root None TEE Structure There are two panes in the environment editor TEE
37. batch test files have a tbs extension Now you can run the test e Click Execute to start the test execution The following dialog will appear Tessy Execute Batch Test m Statistics OK 0 Not OK 1 Not Executed 0 Project1 Module1 7is_line_covered_by_re 1of1 CTT TTT AAAA A e Alternatively you may use the command line prompt to start the test execution see Running Batch Tests at Command Line Note The test execution may be canceled at any time by clicking the STOP button While executing the test you will see the progress and any errors within the message window of Tessy View Batch Test Report After finishing the batch test Tessy will start an appropriate viewing tool depending on your local windows settings In case of HTML reports your default web browser will be started Structure of HTML Batch Reports The HTML batch report will be created with the following structure e Batch Statistics Displays a consolidated statistics for all test objects Testing of Embedded Software Tessy 2 9 Running a Test e 275 Batch Test e Batch settings section Displays all settings for test execution e g Generate Driver e Project Tree Displays all projects modules and test objects The green red icons mark the passed failed status of the test objects Each test object will be linked to the corresponding test object report e g is _value_in_ range Peer eee a Batch Test Report RomA ee E
38. called_function_1 1 unction_3 called_function_4 4 Available Functions tunction_4 called_local_function_2 In this case the tooltip indicates that the function called_function_I was actually called but another function was expected to be called Example Function is not traceable Expected Call Trace called_function_3 called_Tunction_4 Function Calts called Function is not traceable A Available Functions 1 M called_function_1 Function called_function_4 ej called_local_function_2 called_local_static_function_5 In this case the tooltip indicates that the function called_function_3 cannot be traced any more This may occur due to changed settings within TIE If an external function was 208 e Edit Test Cases Testing of Embedded Software Tessy 2 9 Usercode defined to be stubbed before by activating the red tick this function was member of the Available Functions list and could be used in the Expected Call Trace Now this function shall not be stubbed any more e g because the function will be linked as object file and though do not appear within the Available Functions but it is still in the expected call trace You may either remove the function from the Expected Call Trace or change the settings back within TIE to create a stub function for this function again Example Function no longer exists in the interface
39. don t care Pitessy Coverage Viewer 10 x File Chart Window Help e lt t t ojs He EE caled Functions j mede_test 53 z0 MCIDC Coverage a MCC Coverage O Coverage 100 00 medce c MC DC Report MCC Report if A B ss C I D E 1 The combination table contains all atomic conditions of the decision The conditions are the basic atoms of the decision which remain after removing the or and amp amp and not operators from the decision Tessy calculates the MC DC set of true false combinations of the condition atoms that fits best to the test steps executed during the test run The last table column contains the test step that caused the execution of the decision with the true false combination of the respective table row If one or more of the condition combinations were not reached during the test run the Teststep column of those rows will be marked in red like shown below 308 e Monitoring of C1 and C2 Testing of Embedded Software Tessy 2 9 MC DC Coverage View Pitessy Coverage Viewer x File Chart Window Help e K 48 Je BE Called Functions gt 7 B medc_test 3 E a mcjoc coverage MCC Coverage E A Coverage 60 00 a 0 0 0 0 1 tielelelo bed Lo j mede c MC DC R
40. e pdb file An existing project database e g c Projects TestProject test testdb pdb You may create a new project database with an empty project for this purpose s Creating a Project Database Testing of Embedded Software Tessy 2 9 Test Organization e 95 Creating a Module e project_name A project name to be created within the database it may not exist e g MyProject e tmb file One or more module backup files e g IsValueInRange tmb Example pdb32 exe c Projects TestProject test tessy pdb MyProject c Projects tmb IsValueInRange tmb B Projects B test backup EE tessy B MyProject Is alueInRange Fitessy iojxi Fie Tools Options Project Module Testobject View Window Help ne Sila 9 Is 2 P patabase C Projects TestProject Test tessy pdb MyProject 2 IsYalueInRange z The normal com Range Start Po 2 airaa A amp 2 1 Range Start Po is_value_in_range 3 1 Range Start Ze 4 1 Range Start Ne 5 1 Length 0 Special case Le Range Start Po amp amp amp 6 1 Range Start Ze a a 4 7 1 Range Start Ne 8 1 Special More sophistica Range Start Po x 5 Analyzing Interface for Module IsValueInRange Ki ay Project Root None Configuration Default Ui 96 e Test Organization Testing of Embedded Software Tessy 2 9 Creating a Module Note pdb32 exe must be in your PATH or you must change
41. fo set_number value 90 1010 4990 ms Y 5000 ms amp number End of Scenario 5000 ms Ei Scenario 5 3 l E INIT E init 0 990 ms S 1000 ms fo set_number value 90 amp number 5000 ms End of Scenario 5000 ms The replaced time step of the hidden time step interval will be displayed until either the Hide empty Time Step button is toggled or the SCE is closed and reopened again Adding Function Calls Stimulating calls to component functions or checking of calls to underlying external functions may be added by dragging the functions from the Component Functions or the External Function Calls view into the scenario view onto the desired time step Testing of Embedded Software Tessy 2 9 Component Test e 349 Editing Scenarios within SCE 45 Component Functions B External Function Calls Variables C Scenario C Normal Operation 2 Bini o wes O INIT handler 0 40 ms W 50 ms g 60 ms Trossed_50 60 60 ms EB crossed_75 60 60 ms E End of Scenario 60 ms There are several settings required for the function calls depending on the kind of function Component functions e Parameter values need to be provided e The return value may be checked directly for scalar types or assigned to a variable for later evaluation External called functions e The expected time frame of the call to these functions needs to be
42. i g System ab Compiler version ge Network ab Defines Exclude List TESSY As soon as a Compiler and an appropriate Target are activated the respective configuration will also be available in the Configurations section under System 136 Tessy Environment Editor TEE Testing of Embedded Software Tessy 2 9 Advanced Configurations 4 ies Tessy Environment Editor File Edit Options Help Hide Disabled 7 Attributes 3 Compiler ab _ Compiler Call H G GNU GCC aby Compiler Command amp TASKING XC166 EE Compiler Defines 5 A Targets wa GNU GVD Ra a Compiler Id A LAUTERBACH TRACE32 pL Compiler Includes xB TASKING Crossview lt Ca Compiler Install Pat g Environments ab a Compiler Version oN Configurations aby Defines Exclude Lis El a Init Code System amp GNU GCC EIN Init Definitions ii ab Linker Options H G GNU GCC C a amp ab Make Call TASKING Crossview ab Make Command 5 Es Default ab a ObjFile Extension Note Choose Hide Disabled configurations from the filter box to hide all configurations that have not been enabled This may give you a better overview about already enabled configurations Advanced Configurations TEE allows you to derive variants of compiler and target settings and assign them to a module This enables you to create specific configurations for different projects For instance you
43. unions 238 values for pointers 241 Tessy introduction 53 license 36 specify source file 61 start 54 tutorial 53 Tessy Error Codes 365 Test evaluate 72 281 execute 260 Test Case Description 219 Test Case Specification 219 Test Data Editor 4 Test Database 260 Test Driver Master 260 Slave 260 Test Environment 98 Test Execution test step repetition 229 Test Interface Editor 155 Test Object 2 Test Options 260 Test Report 72 281 282 285 286 Test Run 259 Test Step clear test data 227 create 224 delete 225 delete test data 226 Testarea specify 25 Testcase Determination 1 3 Testcases 3 179 delete 189 execute separately 261 262 insert 65 Testobject properties 116 Testobject Specific Code 210 Testreport 286 Teststep initialize values 233 TIE 155 bitfields 166 browse interface 158 enumerations 166 external functions 158 global variables 159 220 Testing of Embedded Software Tessy 2 9 Glossary parameters 159 221 passing directions 161 TMB Files 94 TS_CALL_ COUNT 201 TS_CURRENT_TESTCASE 199 TS_CURRENT_TESTSTEP 199 TS_REPEAT COUNT 198 TS_TESTOBJECT_RETURN 200 tstcomm interface 260 Tutorial 53 U Unions 238 323 passing directions 165 Unit Tab 63 Unit Testing 1 Use local License Server 40 Use remote License Server 41 Usercode 191 enter 195 V VCS Settings 373 Version Control System Author 289 Date 289 files to save 373 keyword expansion 289 Revision 289 Index e 389
44. 1l TESSY_EVAL_U8 datal valuel data_ptr 1 47 TESSY_EVAL_U8 datal value2 data_ptr 2 12 break Each invocation of an eval macro results in an additional entry within the test report All eval macros will be added to the list of actual expected values of the current test step You may also view the results of eval macros within UCE after executing the test like shown below Edit Test Cases e 203 Usercode Zjpatabase D tessy Sample pdb _Sample Name Description Aliasnames 1 1 ASAP 201 Evalmacro F usercode Editor EvalMacroInSy File Edit Tools Z EvalMacroInStub E B ag io p meee E amp Stub Functions OriginalBinaryTest i send_message The red marked stub function node visualizes a negative evaluation result of one of the eval macros executed within this stub function If you select the stub function node or move the mouse over the node a tooltip containing the eval macro results will be shown EvalMacroInEpilog F Fjusercode Editor EvalMacroInStub message_handler File Edit Tools Baes 24 amp Stub Functions oid send message void data unsigned int size i Declarationg ED Testobject data valuet 4 47 Y k x oi E 11 12 eststep 3 ia a data2 12345678 12345678 V i 2 amp 24 witch data_ptr case ll TESSY_EVAL_S8 datal valuel data_ptr TESSY EVA
45. 211 Close Usercode Windows sdivicces ins ceccceshions Stas eiestesescstaserevi dateoeeieiees 212 Timiport Ex port eie ce csecdicececeeeciccieecan AEE EEE i ER 212 Using a command lines scnaesc riir ii E E 215 Enter Test Data 217 The Test Data Editor TDE nren ae E E a e e 217 Startithe TOE aseran Eia AE NTE NEEN NE 217 Structure of the TDE lt icsccccech esd eediceests eadacses Hans teeeeescen te ecccencs 219 Browse the Interfaces nenna onn eich Sahivcss sec teenie Ress 220 Test Steben eo e at E RO aes ate EE vedas 224 Edit Input and Expected Values cccccccceessesseesseseeeeseeeseeeeeeeeeeeesseenseenes 229 Enter Valles enneren eae aE O E E E E 231 Automatic Test Data Generation s eesseeessseseeseeeessreressesresresersessreressesees 246 Enter Evaluation Modes csccssssssssssesssesscensesssessessseseesresseesenseenscnteenss 249 Ignore Values for a Test Step cccceceecsecssesscesseseeceeeeeeeeeceecseceseeneeeeeenes 254 View Results after Test EXecution cccceccesseesseesceeseceeceeeceseceseeseeeeeenes 255 Adopt Test Results as Expected Values cecccescesscesseeeeceseeeeeeseeeeeeeeeees 256 Copy and Paste Test Data icri enii irisi iE E s 257 Sedreh for Variables n e E E ee 257 Exit the DDE aan AA R 258 Running a Test 259 Steps to aO n EAE A AE Bhs E wee 259 Str cture of the Test Driver 2 ccccc cevesccsccess cetcecetesecadetesteveisoniceileeedeccvecees 259 Setting Test Options RA EEEE EEE E EE
46. 220 229 H Hide Functions 109 Icons colour 255 IDA 315 assign automatically 317 assign called functions 319 assign functions 316 assign interfaces 320 icons 319 interface data assigner 5 regression test 5 save 326 unions 323 Import 212 command line 215 Imprint ii Init Testdata 233 Inline Functions 108 Input Value assign value to all test cases 233 Input Values 156 229 Insert Testcase 65 Install License Server port number 40 Installation base directory 16 overview 13 version directory 16 Integration Testing 1 Interface Data Assigner 315 L Layout Test Report 283 286 License 36 checking license file 44 request 38 License key request 38 License Key Install central 42 Install local 39 License Server central 41 error connecting to host 47 local 48 not a valid license server 47 run as application 42 run as service 42 specify 41 stop 44 Linker Binary 110 Local License Server 48 Makefile Templates 375 Messages Window 364 error messages 364 Modify Tessy 371 Module Interface has Changed 369 Module Properties 100 368 attributes 112 116 comment 115 118 general 100 linker binary 110 sources 102 Modules 2 91 add 58 92 copy 93 Testing of Embedded Software Tessy 2 9 Glossary create 58 92 delete 97 paste 93 rename 92 restore saved 94 N New database 79 142 project 89 Next undefined 68 232 322 unknown object 163 Notebook license 49 notebook _like dat 49 O Ope
47. 9 Test Organization e 99 Module Properties The Module Properties dialog will open Module Properties xi General Sources Linker Attributes Comment oY OK m Test Directory C Mtessy23 samples 2_9 Sample _Sample IsValuelnRange Cancel r Environment Janu GCC GNU GYD Default 7 r Features Kind of Test I Enable ASAP Unit Component m Target Binary Generate Test Binary Use Griginal Binary General Tab The General Tab is used to determine the test environment Following options are available Module Properties x General Sources Linker Attributes Comment moi OK r Test Directory C Mtessy23 samples 2_9 S ample _Sample IsValuelnRlange Cancel r Environment Janu GCC GNU GYD Default 7 m Features Kind of Test I Enable ASAP Unit Component m Target Binary Generate Test Binary Use Original Binary e Test Directory The path has been specified during database creation and is not adjustable here 100 e Test Organization Testing of Embedded Software Tessy 2 9 Module Properties Environment Specifies your target compiler debugger emulator simulator combination to be used for the test execution You have to enable your test environment by using the Tessy Environment Editor s Using Default Configurations The GNU toolset is already available by default Target Binary Generate Test B
48. Attribute Delete C Edit Attribute value Restore Factory Value Ctrl R Open with Editor Open with Application The Modify Property dialog will open Testing of Embedded Software Tessy 2 9 Tessy Environment Editor TEE e 147 Adding Editing Attributes x fPreprocessorCal SS He Cancel occ E USEROPTIONS DTESSY o OUTPUT INPUT pType String C Float f Boolean C File Number Directory Flags J Inheritable 7 amp s List T Visible J Validate J7 Multiline IV Not Empty J Read Only F System F Internal I Always Valid F Hex Format J Environment Variable J 4dd to PATH Variable If you want to change only an attribute value choose Edit Attribute Value from the context menu Depending on the attribute type either a standard selection dialog for that kind of information will appear e g Browse for Folder in case of directories or the inline editor for the Value will be activated If you have changed a default value other than the factory setting the attribute will be displayed in italics fab Preprocessor Cali gcc E USEROPTIONS DTESSY D_PID_ If you want to delete the attribute value choose Reset Attribute from the context menu or use Del This will either remove the local value and show the inherited value or delete the whole attribute entry if it is only defined locally in this section ab a Preprocessor Cali ESPN Scanner Call 8a Ty
49. Beiter O Analog Devices Visual DSP Original Binary Test Fujitsu Softune FFMC16 Register SFR Handling Green Hills MULTIZ000 Test Database Setup HighTec GNU Timing Measurements nr Using Alias Names TAR Embedded Workbench C SPY Using ASAP Information iSYSTEM winIDE4 Using Stub Functions Keil yvision Using Usercode Lauterbach TRACE32 NEC SM ICD 78K0 850 pls UDE Renesas PD30 STMicroelectronics ST Visual Develop Tasking Crossview Texas Instruments CCS2 You will find documents both for common topics e g Using Usercode and target specific topics e g Hitex HiTOP 370 e Troubleshooting Testing of Embedded Software Tessy 2 9 Overview Technical Information Overview This chapter provides some base technical information about the configuration of Tessy and which files of the test database are required to backup for version control The target compiler and debugger emulator integrations will be described in the following sections Later on some more technical details of Tessy will be explained that will enable the experienced user to modify the Tessy installation These changes should be carried out very carefully since erroneous changes may result in severe failures of Tessy Our technical support will be pleased to assist you in any adoption to your specific project environment and implementation of required customizations Testing of Embedded Software Tessy 2 9 Technical Information e 371 Compiler Settings Comp
50. C1 Coverage Tum Total Coverage 50 00 Testcase j Coverage 1 1 50 00 2 1 50 00 3 1 50 00 lt gt eintest c C1 Repi MC DC Report MCC Report Tm int function i a int b A int c e a0 75 6 if b gt O c lt 2 1 9 t return 1 This indicates that they contain sub flow charts that may be visualized with a right click on the respective element CV will insert a new tab for the condition 302 e Monitoring of C1 and C2 Testing of Embedded Software Tessy 2 9 Flow Chart View 4 CY Tessy Coverage Viewer cog File Chart Window Help 0 m BE Called Functions E S function S Conditi gt function eintest c C1 Report MC DC Report MCC Report int function intfa int b int c eS eda Pe ie p ab mco mcc 0 Coverage 50 00 a gt o Teststep 0 1 1 1 i C1 Coverage zim Total Coverage 50 00 Testcase Coverage 1 1 50 00 2 1 50 00 3 1 50 00 lt gt gt A if b gt O ce lt 2 1 9 return 1 A Zooming The flow chart view may be zoomed using the toolbar buttons or the Zoom In or Zoom Out entries from the Chart menu Searching for Uncovered Conditions or Unreached Branches The CV provides search functionality for decisions and branches that are not fully covered respectively reached through all the executed test cases The d
51. Either click on Save in the toolbar or choose Save from the File menu If you have still undefined values following error message will appear TDE Save Data x 2 There are undefined values Do you wish to save anyway Ce e e Select Exit from the File menu or choose ALT F4 258 e Enter Test Data Testing of Embedded Software Tessy 2 9 Steps to Perform Running a Test Steps to Perform After configuring the test environment and the test data for a particular test object you re now ready to execute the test During this process Tessy will perform the following steps e Generate the test driver based on the interface information and user code provided e Link the test driver to the test object to create an executable file e Run the test Test data is only transferred to from the target whenever a test is run Depending on the size of the interface and the number of test cases to run the entire test run process could take a few minutes to complete Refer to the respective application notes for details on how to configure a specific target system for the test execution e g HiITOP TRACE32 Some of the target debuggers need to be started prior to test execution whereas others will be started from Tessy automatically Note All application notes are available within the documentation folder of your Tessy installation or just choose Documents from the Help menu Structure of the Test Driver The generated t
52. Exambles Gx Cosmic HCS12 af Compiler is disabled The specified directory will be added to the path variable and to the execution environment The attribute has been inherited Table of the symbols which are used by the TEE Symbol Description Testing of Embedded Software Tessy 2 9 Tessy Environment Editor TEE e 151 Symbol Appearance e Item is added to the execution environment of Tessy e Item is added to the PATH variable of the execution environment x Item is disabled x Item is disabled and another item overwrites or replaces this item within the configuration hierarchy x Indicates an error 3 Indicates an error but the cause for the error is somewhere within the attributes inherited by this item You should check for errors upwards or downwards within the configuration hierarchy and fix the error there i Information i Indicates that the information comes from another item upwards or downwards within the configuration hierarchy Attribute is inherited Compiler is active Compiler is inactive probably overwritten or replaced by another item downwards the configuration hierarchy Environment is active Environment is inactive probably overwritten or replaced by another item downwards the configuration hierarchy Target is active HA DB Hy gt Target is inactive probably overwritten or replaced by another item downwa
53. Functions false G anu ccc Ea Init Code G Gnu acc C a Init Definitions amp coe heels ab Linker Options TN a E a Make Call Make Command win32 TESSY_MAKE_SILENT f Network ab a Make Command make 3 80 exe E All Users Makefile Template PROJECTROOT config ts_make_socket tpl User Administrator ab a Master Call MODULEPATH ts_ TESTOBIECT _m exe e File ab ObjFile eXtension 0 z G GNU GCC b Preprocessor Call gcc E USEROPTIONS DTESSY o OUTPUT INPUT a eed GNU GYD ab a Scanner Call sh exe tks sh gcc ab Slave Call TESSY_GYDPATH bin gvd daras command TESSY_TESTA Project Root C tessy samples 2_6_5 Save e Save the changes by using File Save TEE will open the Save Configuration File dialog Save Configuration File 2x Save in E config z cf EE x lt 2 configuration_project_2 xml History lt 2 configuration_project_3 xml 7 lt 2 configuration_project_4 xml configuration_project_1 xml Desktop PN My Documents a wae My Computer File name configuration_project_1 xml z Save as type Jar Files z Cancel My Network P Testing of Embedded Software Tessy 2 9 Tessy Environment Editor TEE e 145 Adding Editing Attributes You may assign this configuration file to a project database of Tessy s Assign a Configuration File All the specific environments of this file will then be availabl
54. Hep e mail support razorcat com Web www razorcat com m License Server use local License Server use remote License Server r Server Settings localhost Host Port 10000 m Notebook License T check out License for fi days I remind me ta check out e In section License Server please select use local License Server default e Change the Port number in Server Settings if already in use default 10000 e Click on OK Tessy tries to start the local license server and tries to get a connection If the license file is invalid or missing an error message will be displayed Click on OK and Tessy will display a file selection dialog that prompts you for the license key file e Select your local license key file and click OK Tessy will install the license file and will try to start the license server If Tessy starts successfully you have completed the registration If an error message occurs please refer to Troubleshooting License Server Note If you don t have administrator privileges the local license server cannot probably start successfully within your user account Since your account has no write access to the registry key of the license server In that case you must configure the license server as service Please refer to section Install Central License Server for more information on this topic 40 o Installation Testing of Embedded Software Tessy 2 9
55. Home PROJECTROOT sourceljs_val_in_range c Revision 2 lt m E Frames No Frames Floating Menu Testing of Embedded Software Tessy 2 9 Test Report e 295 View Coverage Results Monitoring of C1 and C2 View Coverage Results Tessy provides the following coverage measurements e C branch coverage e MC DC modified condition decision coverage e MCC multiple condition coverage The least two measurements are summarized as C2 coverage within Tessy You may select the desired coverage measurements before executing the test within the Execute Test dialog The coverage results are available for review in detail within the Tessy coverage viewer CV or summarized within the generated test reports The CV shows the results of the coverage measurement of a previously executed test The available information displayed and the sub windows shown within the CV depend on the coverage options selected during the test run The CV will be updated with the coverage information of the currently selected test object whenever the Monitoring entry of the View menu is selected by the user Note For more information and usage of coverage analysis in Tessy please refer to the application notes Coverage Instrumentation under Help Documents Testing of Embedded Software Tessy 2 9 Monitoring of C1 and C2 e 297 View Coverage Results Starting the Coverage Viewer CV The coverage results are accessible from the Monitoring entry
56. Installation on page 17 e An older Tessy installation e g version 2 6 x 2 9 1 etc present Update a Previous Installed Version on page 29 e Tessy version 2 9 present Multiple Installations of Tessy 2 9 x on page 31 New installation and upgrade from a previous version of Tessy e g 2 9 17 gt 2 9 18 are treated the same way On an update installation some of the installation steps described in the following chapters will be omitted Setup Overview Tessy setup will install the following components by default e Tessy files e CTE files e Floating license server FLS files You may choose to install the FLS files for license server setup or the CTE files only A complete Tessy installation requires all components to be installed s Choose Setup Type on page 22 The files will be installed into the following directories e A base directory e g C Program Files Razorcat e Aversion directory Setup will always use Tessy 2 9 as the default version directory base directory Tessy 2 9 The base directory will be chosen during the initial setup of Tessy and is modifiable by the user The version directory is a presetting of Setup and cannot be changed The name of the directory depends on the used major version of Tessy e g Tessy_ 2 9 s Multiple Installations of Tessy 2 9 x on page 31 16 e Installation Testing of Embedded Software Tessy 2 9 Installing Tessy The above mentioned components will
57. Installing Tessy Note You may also use the standalone setup for the FLS if you want to install the FLS on a central server in your network This setup package can be downloaded from www razorcat com s also Install Central License Server on page 41 Choose Destination Location for Tessy e Within the destination folder dialog you may select the base directory where all the files will be installed The default base directory is C Program Files Razorcat Setup will install the Tessy and CTE files in a version directory named tessy 2 9 by default This version directory cannot be selected C Program Files Razorcat tessy 2 9 HE Destination Folder Select folder where setup will install files a Install Tessy 2 9 6 to C Program Files Razorcat Change Into subdirectory Destination Folder Required Disk Space 138 578 KB Remaining Disk Space 1 569 MB Install ware lt back E Cancel e Ifyou choose the default folder click on Next to continue 24 e Installation Testing of Embedded Software Tessy 2 9 Installing Tessy Choose Third Party Installation Folder You may select your preferred Python installation folder Normally Setup has the application already installed if necessary Please accept then the recommended path and click next to continue Important note Tessy requires Python Version 2 2 1 and Python Win32 extensions Version 1 48 4s InstallAware Wizar
58. Prolog Epiloa Testrase Pralna Frilans Declarations Definitions Teststep Prolog Epiog Teststep Call Trace ED Testobject Bs T Ignore Call Trace 1 r Expected Call Trace Available Functions B14 e Function Cals Function te el ace called_function_4 1 T callea_function1 4 2 T 214 j called_function_4 a B 3 called_local_function_2 234 called_local_static_function_5 Fa 4 E You may edit the desired sequence of calls by dragging function entries from the right list of Available Functions into the left list Expected Call Trace You may also use the arrow buttons to move list elements from right to left up and down and vice versa Testing of Embedded Software Tessy 2 9 Edit Test Cases e 205 Usercode Subsequent calls of the same function will be combined automatically to result in one function list entry with the Calls number being incremented Testobiect Prolog Epilog Trstrase Pralne f Frilnes Teststep Prolog Epilog Teststep Call Trace IV Ignore Call Trace By default the tick Ignore Call Trace is set This indicates that the call trace shall be ignored completely As soon as you add any function to the expected list this tick will be removed If you want to ignore the call trace again you may select the tick and all functions will be deleted from the expected list Whenever the Ignore Call Trace tick is removed there will be a new Call Trace node within the UCE tree on the left hand side You m
59. R Return Elsy struct poin input enum ints variables 77 B Dynamics o inty int width int heigth output E struct Line line variables Eby struct point p1 o intx iny E sy struct point p2 its o inty B Dynamics 218 e Enter Test Data Testing of Embedded Software Tessy 2 9 The Test Data Editor TDE Structure of the TDE The TDE is divided into two parts e The upper part with two text windows displays the test case specification and the optional test case description s Test Case Specification and Description e The lower part contains two windows each of them divided into two panes The right pane of the left window is used to specify the input values of the test object The right pane of the right window specifies the output respectively the expected values and the evaluation mode F TDE Module1 is_line_covered_by_rectangle 1 1 O x File Edit Search Tools Options Help Specification jal Description a Al input Ha expected Globals values Globals values Eh Parameter Parameter EF y struct Rectangle rectai ER Retum Eh sy struct point rect_p o o itx EQ Dynamics o iny 2 int width evaluation intheigth mode Ebs struct Line line El lt p struct point p1 o intx o iny Ery struct point p2 o ints B Dynamics Test Case Specification and Description The upper part of the TDE dis
60. Software Tessy 2 9 Batch Test Batch Execution finished at 22 07 2008 11 02 Note Potentially you have to start your debugger emulator simulator at first to run the batch test e g TRACE32 Tessycmd provides additional options which can be useful to use a command line tessycmd open force reset lt project gt lt module gt lt pdb file gt open force forces tessy to analyse the module once more open reser the module will be reset All test data are deleted tessycmd stop cv Slop cy shuts down the coverage viewer If the source code will be instrumented the coverage viewer will be automatically started but does not shut down cv after the batch test has been finished Testing of Embedded Software Tessy 2 9 Running a Test e 279 Creating Reports Test Report Creating Reports After every test run Tessy creates a XML result file within the respective module folder The report interface of Tessy generates a test report by using this XML file You may generate a test report as follows e After a test run was finished Generating a Report after a Test Run Tessy will automatically use the XML file from the respective module folder e By specifying a XML result file Generating Reports using XML Result Files In this case you don t need to open a project database to create a test report There are some predefined formats for the test report available e HTML MS Word MS Excel RTF CHM and ASCII
61. Test e pdb file optional This setting overwrites the name of the PDB file stored within the given tos file It is useful if you checked out your project into another location on disc e g on another PC and want to execute a previously created tbs file e project root optional with pdb file This setting will be necessary if you checked out your project e g on another PC and the project database uses the so called PROJECTROOT or the project database was never opened in Tessy Normally Tessy will insert the path of the PROJECTROOT into the Windows Registry if you open the project database in Tessy so that the correct path can be found Example This example assumes that sample tbs already exists e Open a command prompt window and type the following tessycmd log c tessy sample log c tessy sample tbs The messages which normally appears in the message window of Tessy will also appear in the command prompt window You may redirect the messages into a file using the standard windows command shell mechanisms Note tessycmd must be in your PATH or you must change into the bin folder of your Tessy installation e g tessy 2 9 bin sample log Batch Execution started at 22 07 2008 11 01 Project Sample Module IsValueInRange Testobject is _value_in range Generating driver files Compile and Link Testdriver Executing Test with all Testcases Creating XML result file 278 e Running a Test Testing of Embedded
62. Test Object Properties m monieniniiiotieni iieo nsi General Tabarrini none a a eia Att bUlE S nn a a i Commenta sin nii i E Ea iE S Common Module Options cceseesseeseeseeeeeeeees Check Source Files emnene o e a Edit Source Files enrira ienne n Source Files Changed cesccessesseceseeseeseeneenees Changed Interfaces ccc succes at ciinstige eee tterecs Interface Analysis c eccceseeeseesecseeenseeseeneeeneeees Test Database Backuf ccesccsceeseeseeeeeeseeseeeneeees Selection of the Backup Directory eceeeeees Save to Backup Directory ccccesceeseeeteeseeneeenes Restore from Backup Directory cccseseeree Tessy Environment Editor TEE Configuration Management Starting the TEE nesccaine nhn TEE Structure 3iecc css an EE ER AE En Testing of Embedded Software Tessy 2 9 Contents e v Contents TEE and User Access Rights ccccsccessesssessceseeseeceseeeseeecesecesecnaeeneeeneeeaes 129 TEE Configuration Files senses i a R 130 Using Default Configurations ssssessesessseessseesessresessesersreseeseeseeressesresses 132 Advanced Configurations c cccccesccssscsseceeceseeecesecsseceecaeecaeeeneeseenseeneeees 137 Copying Configurations ccccccscccsseesseeseeeeceseeseceseceecnseceseceaecnaeeeeeeaeeeaes 138 Creating Configuration Files cccccssseseeseessesseessessecssetseesseesneconeensesnes 140 Create a New Custom Configur
63. Test Object and Called Functions C2 Test Object and Called Functions C1 C2 Test Object and Called Functions e None No instrumentation will be performed e C1 Test Object Branch coverage testing will be performed only the test object code will be instrumented C1 Test Object and called Functions Branch coverage testing will be performed for the test object itself and for all functions called by the test object Testing of Embedded Software Tessy 2 9 Running a Test e 263 Setting Test Options e C2 Test Object Multiple Condition Coverage MCC and Modified Condition Decision Coverage MC DC testing will be performed for the test object only the test object code will be instrumented C2 Test Object and called Functions Multiple Condition Coverage MCC and Modified Condition Decision Coverage MC DC testing will be performed for the test object itself and for all functions called by the test object e C1 C2 Test Object C1 C2 Test Object and called Functions Both test measurements will be applied as described above The results of every coverage measurement can be reviewed in the coverage viewer as soon as the test was carried out For details refer to the chapter View Coverage Results Note The number of atomic conditions of each decision within your program is restricted to 8 for MC DC and to 12 for MCC by default please refer to Coverage Instrumentation under Help Documents Te
64. Testobjects Called Functions Interface New Testobjects Old Testabjects AddToMemory XM AddComplexT oNewMemory SA GetMemory GetMemory X SetNewMemory AddComplexT oMemory SetMemory Note It is recommended to save the module before using IDA It might be possible to corrupt the test database due to erroneous assignment of functions see Save a Module The appearance of IDA i e the presence of additional Tabs depending on the test objects used Normally IDA will start at least with two tabs Test Objects and Interface IDA will provide additional Tabs for Called Functions or Enums if the source file contains functions called from the test object or enums 316 e Regression Testing Testing of Embedded Software Tessy 2 9 Performing Regression Testing Assigning Test Objects The window of the Test Object Tab is vertically split into two areas e the left pane contains all New Test Objects e the right pane contains the Old Test Objects i e all previously existing functions Old functions that have not yet been automatically assigned to new ones are shown under the black horizontal line Every new function that is currently available can be assigned to an old function as follows e Use Drag and Drop Use Drag and Drop to assign a new function to the desired old function you can also drag an old function to a new one e Use Context Menu Select a new function and choose Assign from the context C
65. User Administrator Compiler Version Conversion DLL none Defines Exclude List TESSY unix __ i386 x86 Display Name Compiler Target Environment Enable ASAP false Enable Inline Functions true Enable setjmp longjmp false Enable Static Functions true Enable Static Locals true Execute Testcases Separately false ExeFile Extension exe Float Precision fl SICISISISICICIC ere reicl mn la a a a a a a a a a a a a a Hide Functions false Project Root None Note You can refresh all the panes in TEE by pressing F5 TEE and User Access Rights Depending on the access rights of your user account you may be able to change parts of the default configurations or not Normally you will need administrator privileges to change Tessy s default configurations factory settings within section General and Configurations except User subsection Testing of Embedded Software Tessy 2 9 Tessy Environment Editor TEE e 129 Starting the TEE If you don t have enough privileges if you are a restricted user TEE will inform you and save your changes in a user specific file s TEE Configuration Files below TEE Configuration Files All displayed settings will be stored in a set of configuration files with extension xml Every configuration group System Network All Users and User of the Configuration sectio
66. a Configurations B 4 System a cnuccc a g avu evo B G GNU GCC C a E anu avo Default E Cosmic Hcs12 S E LAUTERBACH TRACE32 g Default E TASKING xc166 FBR TASKING Crossview g Default ge Network allusers e User Administrator Project Root None Edit Attribute a Alias File 2 ASAP File ab ASAP Module ab ASAP Project i Batchtest wait Time Buffer Size E a Call Count Size 8 ab ix Compiler Call gcc c USEROPTIONS DTESSY o OUTPLIT INPLIT ab A Compiler Commandline i Compiler Defines ey Ls Compiler Id im J Compiler Includes 2 Compiler Install Path TESSY_CYGWINPATH ab a Compiler Version ab a Conversion DLL none ab Defines Exclude List TESSY unix _ i386 XB6 ab as Display Name Compiler Target Environment X Enable asap False v Enable Inline Functions true Ka Enable setimp longjmp false ICA a Enable Static Functions true a Enable Static Locals true a Execute Testcases Separately false E ExeFile Extension exe a3 a Float Precision 1 vy a Hide Functions False e Right click an attribute and choose Edit Attribute from the context menu jab a Preprocessor Call ab Scanner Call ay New Attribute Type Table File Reset
67. a range If is selected TDE will display two input fields You have to enter the boundaries of the range The first value has to be the minimum the second has to be the maximum value E rut Return deviation checks the deviation of the actual result compared to the expected result If is selected TDE will display a separate input field The deviation value may be provided as absolute number e g 1 or as percentage of the expected result e g 1 If the deviation value has a positive sign e g 2 or 2 only deviations in the positive direction will be accepted and deviations in the negative direction will not be accepted If the deviation value has a negative sign e g 2 or 2 only deviations in the negative direction will be accepted and deviations in the positive direction will not be accepted If the deviation value has no sign deviations in both directions will be accepted If desired the evaluation mode including the deviation value may be assigned to all test cases and test steps via the context menu Assign eval mode to all Testcases 250 e Enter Test Data Testing of Embedded Software Tessy 2 9 The Test Data Editor TDE Globals a Parameter E R Return 3 G 0 be Fis Dynamics Cut Value Ctrl x Copy Value Ctrl C Paste Value Grrl Hy Undo Ctrl Z Ignore Value Ctrl I Enter Character Mode Actual gt Expected Assign value to all Testcases Assign eval mode to
68. all Testcases h ignore ignores the result The actual value will not be processed after test execution and has no effect on the overall test result R Return s phone E Special Evaluation Modes for Result Plots TDE supports the graphical visualizing of test data for interface variables as signal data rows s chapter Test Report This will be available either for data rows within one test step e g for arrays as well as for data rows of a variable over all test steps Graphical result plots of interface variables will be available without additional software e g MatLab Testing of Embedded Software Tessy 2 9 Enter Test Data e 251 The Test Data Editor TDE ioi xi File Edit Search Tools Options Help aa 2427 euler eal T mi M Globals a Parameter a Parameter unsigned char radian_value o R Return 2 enumyes_no_tinterpolate fyes X B Dynamics B Dynamics BAYAV GT SIS ae it The appropriate mode for result plots can be used from the respective combo box in TDE You may specify a deviation value for the evaluation in a separate input field e g 5 The result plot is currently available for HTML Reports s chapter Test Report r P result plot of one variable over all test steps of each test case ea aiiai Test Report Tessy V2 6 3 Menu Variable calc_sine for Test Case 1 M A Testcase 1 Y Graphics 1 B A Testcase 2 P Graphics 2
69. allows to select a specific configuration file for the project database which contains only your target environments you want to use The Configuration File will automatically be created if it doesn t already exist It will contain the GNU gcc compiler environment that is enabled by default when installing Tessy If no configuration file has been chosen for a given database Tessy will use the global setting provided by the Environment Editor We recommend to use the GNU tool set for the tutorial at first Root Directory and Database File While typing Tessy will complete the paths for Root Directory and for Database File automatically We suggest to accept the default settings Tessy creates a folder named Tessy for the Root Directory which contains files generated by Tessy belonging to your projects and modules The database file contains all Meta data about projects modules and test Tutorial objects e Once you have completed your input click OK Now you have finished the first step A new database has been created and a new project has already been added into the database by default Tessy will open your database within a window containing two areas e The left window holds the project and module hierarchy e The right pane contains the properties of a selected project or module iix File Tools Options Project Module Testobject View Window Help tessy Tessy Tutorial pdb Property Value Directory C
70. and adjusting common settings of a specific test environment by using the Tessy Environment Editor s Using Default Configurations The GNU toolset is already available by default 98 e Test Organization Testing of Embedded Software Tessy 2 9 Module Properties Module Properties x General Sources Linker Attributes Comment m Test Directory C Mtessy23 samples 2_9 S ample _Sample IsValuelnFlange Cancel r Environment GNU GCC GNU GYD Default z m Features Kind of Test J Enable ASAP Unit Component m Target Binary Generate Test Binary Use Original Binary As soon as your target environment has been enabled you can select it within the environment list box of the General Tab tab page 100 of the Module Properties dialog s below Module Properties The Module Properties dialog is used to determine the test environment and additional settings for your testing To specify a test environment do the following e Select a module and choose Properties from the context menu P Database C Projects razorcat tessy Sample pdb _Sample H Ga SEEING ASAP Rename StubFunctions COPY CTRL C Aliasnames Bases Baie SFR_Handing Reset Usercode Initialize OriginalBinaryT Check Sourcefilefs StaticLocals Edit Sourcefilefs ange FH E E E Testing of Embedded Software Tessy 2
71. and choose Reset Attribute from the context menu or use the Del key ona selected attribute The value will be reset v Execute Testcases Separately false alnit Script TESSY_TESTAREA hitop_my_init_hc12 scr BS Stack Pointer Init Ox4000 New Attribute INS Rs Vector Table Begin OxFFCE Vector Table File TESSY_SYS Open with Editor Open with Application Comment Tab This property provides an editable textbox to be used for comments by the tester Testing of Embedded Software Tessy 2 9 Test Organization e 115 Test Object Properties Test Object Properties As for a module there is also a properties dialog available for a test object You can review or change settings but most of them are already done within the module properties dialog or the Environment Editor To open the test object properties dialog e Select a test object from the module folder and choose Properties from the context menu The Test Object Properties Dialog will open xl General Attributes Comment r Test Directory C AProjects razorcat tessy sample _Sample IsValuelnRange Cancel r Environment Cosmic HCS12 Hitex HiTOP Default m Features I Enable ASAP Target Binary Gen e General Tab This tab is read only and displays all settings done within the module properties dialog Attributes This tab displays the module attribute settings by def
72. and expected reactions of the component A scenario can be seen as a test case for the component Therefore Tessy provides a scenario test case list for the component within the right side of the main Tessy window The term scenario will be used as a synonym for scenario test case in the scope of the component test There are two possibilities for creating scenarios They may either be created ad hoc or they may be developed systematically using the classification tree method supported by CTE You may start the CTE from within Tessy and design your test cases for the component within CTE Classification Tree Editor Scenarios cte Tessy Document Loe File Edit Search View Options Window Help ole a Slax 9 9 d d Gal a aeae OO Cla elr2 b A Scenarios JE i operation stimulating mode operations AN ees init normal valid invalid calling invalid sequence parameters ius Suiyselelael Jaa 91 Initialization a2 Normal Operation Q3 a4 gt A4 1000x700 Modified After synchronizing the CTE test cases there will be the respective number of scenarios within Tessy You may add additional scenarios using the context menu within the scenario list Testing of Embedded Software Tessy 2 9 Component Test e 339 Scenarios as Test Cases for the Component Eile Tools Options Project Module Testobject Yiew Window Help pel SB oala as 2 4 Database D t
73. compiler or target specific settings for individual test objects Those settings should only be applied for the entire module using the module properties dialog or the Environment Editor Testing of Embedded Software Tessy 2 9 Test Organization e 117 Common Module Options Comment This property provides an editable textbox to be used for comments by the tester Common Module Options From the module context menu you have additional options for source files of the module available In case of problems while opening the module you can check your source files using the target compiler Errors may be corrected directly in your preferred editor Check Source Files You can check your source files for errors as follows e Select a module and choose Check Sourcefile s from the context menu 2 StubFunctions E a Ea Rename Copy CTRL C Delete DELETE p Reset D Initialize Ali H C Alasname Check Sourcefile s H SFR_Hant Edit Sourcefile s Properties Tessy will now use the respective target compiler to check all source files of the module In case of errors Tessy lists all error messages generated by the target compiler within the message window Note This checking is highly recommended in case of any problems while opening the module The target compiler will print out more precise error messages than the Tessy analyzer Edit Source Files The menu item Edit Sourcefile s allows you to edit t
74. currently supports scripting for TRACE32 PRACTICE commands and HiTOP HiScript commands You may add any command of the scripting language into the prolog and epilog sections within the script tab Fjusercode Editor HiScript_Initialization GetMessage File Edit Tools Bees DGB Declarations Definitions ED Testobject gj Prolog B41 Source Ed Hiscript Testobject Prolog Epilog Testcase Prolog Epilog Teststep Prolog Epilog Teststep fi 1 y Repeat Count 1 a iage img messages s vi In the example above a previously saved data image is loaded to initialize the messages variable The scripting language depends on the emulator in use please refer to the manual of the respective emulator for details Close Usercode Window When you have entered the Usercode click OK The Usercode will be saved into the test database If you do not want to save the changes click Cancel Import Export Tessy provides an interface to store all test data of a test object into one file You can edit the exported test data and import them back into the test database of Tessy This may be 212 e Edit Test Cases Testing of Embedded Software Tessy 2 9 Import Export useful when editing a large number of test cases with only a few differences You may choose different export formats like txt or xls It is sometimes more convenient to enter the test data into an Excel sheet and then just impor
75. e 141 Creating Configuration Files V7 TEE Tessy Environment Editor j x File Edit Options Help aby x af Ed Hide Disabled z Attributes cts alue A Compiler a Hide Functions false aj Targets Init Code a 5 a a B Environments 2 Init Definitions amp Configurations ab Linker Options E System ab a Make Call Make Command win32 TESSY_MAKE_SILENT f G GNU GCC fab Make Command make 3 80 exe oe G gt GNU GCC C E Makefile Template PROJECTROOT config ts_make_socket tpl G Cosmic HCS12 aB Master Cal MODULEPATH ts_ TESTOBJECT _m exe amp TASKING C166 ab a ObjFile Extension 10 i amp TASKING XC166 ab a Preprocessor Call gcc E USEROPTIONS DTESSY o OUTPUT INPUT Network a Alus ab a Scanner Call sh exe tks sh gcc Slave Call TESSY_GVDPATH bin gvd daras d TESSY_TESTA e User Administrator EN ares K D bin avd dargs commanda i o File Rg Target Id 0x01 77 Target Install Path TESSY_GVDPATH a awa Ca Target Insta alaa f a a GNU GVD E RR Target Version amp _ Type Table File TESSY_SYSPATH compiler typetable xml Project Root C tessy samples 2_6_5 In the example above the file ts_make socket tpl will be stored in the PROJECTROOT config folder This ensures that no file will be overwritten if you install a new version of Tessy You may store these f
76. enter an input value F TDE Module1 is_line_covered_by_rectangle 1 1 o xj Fie Edit Search Tools Options Help Sal Ss 2a de e T ah a Specification Description E input A ET expected Globals values al Globals values By Parameter nA Parameter E Retum gt l Dynamics El gt struct Rectangle rectal Eh y struct point rect_p o ints o inty o int width evaluation mode 2 intheigth Elsy struct Line line Eh sy struct point p1 ints o ity Ery struct point p2 2 ints B Dynamics About the test objectis_line covered by rectangle The structure line consists of the points p1 and p2 The structure rectangle has a starting point and the size of a rectangle width and height The function is line covered _by rectangle checks if the line is covered partly or completely by the rectangle Specify Output or Expected Values Now you have to specify the output or expected values of the test object In the right pane of the TDE you can enter the value that will be returned by the test object 68 e Quickstart Testing of Embedded Software Tessy 2 9 Tutorial In our case we expect that the line will be inside of the rectangle If this is the case we have to choose yes from the combo box of the return value see next picture below Globals a Parameter R Return em Bl D
77. file and choose Remove File from the context menu or use Del from the Keyboard Testing of Embedded Software Tessy 2 9 Test Organization e 103 Module Properties Source Module Er Environment sValuelnRange ESB S PROJECTROOT scr is_val_in_re Add File INS Replace File n To replace a source file e Select a source file and choose Replace File from the context e From the next dialog select another source file Using the Lower Compiler Pane The lower Compiler pane displays information about the item selected from the upper Source Module pane What kind of information is visible depends on the tab Includes Defines Options Settings which you have selected You may specify additional settings in each of the provided tab Module options apply to all source files unless otherwise specified on file level File options apply to one selected source file and may replace options specified on module level Such local changes display Tessy with a red tick in front of the module or source file name The check box Change local will be ticked m Source Module a Siina r Compiler IPROJECTROOT Jine v Change local Includes Defines f Options Settings Includes Tab Within the Includes tab you may specify compiler include paths 104 e Test Organization Testing of Embedded Software Tessy 2 9 Module Properties Right click into the Includes pane and choose Add Inc
78. floatr ag floati floati a Parameter shai a Parameter old si element element E struct complex numb gt E4 Return E R Return E D struct complex E gt To assign interface elements e Select the new interface element and choose Assign By Position from the context menu for instance y struct complex init__retumed_ 1 GetMemory o sy struct complex value__passed_to_SetMemory floatr amp float r float i E4 Parameter floati Ei Parameter e or simply click the respective old element and drag it to the new element or vice versa Testing of Embedded Software Tessy 2 9 Regression Testing e 321 Performing Regression Testing Attention When structures are assigned using Drag and Drop components are assigned according to settings in the Options menu s Specify Options for Automatic Assignment If you are unsure of these settings recheck them EE lolx File Assign Search Options Help Z Prt AddComplexT oMemo le Oe Testobjects Called Functions Interface New Interface Old Interface Globals struct complex init__retumed_by_GetMemory B K struct complex value__passed_to_SetNewMemory amp float r ag floati Parameter E gt struct complex number Return Return G p struct complex gt once more IDA will assign all global variables to all
79. given module and don t influence other modules There are different attribute types available String Boolean Number Float File and Directory To create a new attribute e Right click in the Attributes pane or an already inserted attribute and choose New Attribute from the context menu The New Attribute dialog will open x Proiect s S Value Cancel 24 m Type String C Float Boolean File Number Directory m Flags M Inberitable I As List I Validate I Mutt T Not Empty Hex Format T Read Only Hide Flags 114 e Test Organization Testing of Embedded Software Tessy 2 9 Module Properties e Enter an attribute name and choose an appropriate Type e g String Additional every Type may have specific attribute flags This depends on the Type used Remove Reset Attributes Only user defined attributes can be removed from the attribute pane You cannot remove default attributes In that case you may only Reset the value to his default state if changed To remove a user defined attribute e Right click an attribute and choose Remove Attribute from the context menu or use the Del key ona selected attribute The attribute will be removed 8 Vector Table File TESSY_SYSPATH sro comm vector_cosmic_he1 2c jab Project No 24 New Attribute Edit Value Open with Editor Open with Application To reset a default attribute e Right click an attribute
80. gt lt import file gt options e h show this message Testing of Embedded Software Tessy 2 9 Edit Test Cases e 215 Import Export e 1 lt file gt log all messages to the given file e s don t show any warning or error messages ignored if a logfile is given e u update passing directions e c convert physical to integer values e p show import progress lt import file gt e Excel xls ortextfile txt Remarks e Before using tdbcmd ensure that Tessy is NOT running e Pressing CTRL C request the import process to terminate in a controlled manner All test cases that were already processed are kept and the database is left in valid state e Ifthe p option without 1 is given the output of all messages is delayed until the import is finished e If output redirection is active the p option is ignored Note tdbcmd must be in your PATH or you must change into the bin folder of your Tessy installation e g tessy 2 9 bin Currently tdbcmd supports only the import of test data Example tdbcemd exe import Sample IsValueInRange is value_in range c tessy29 samples 2 9 tessy sample pdb e tessy import is_value_in_range xls 216 e Edit Test Cases Testing of Embedded Software Tessy 2 9 The Test Data Editor TDE Enter Test Data The Test Data Editor TDE Upon creating of test cases you have to enter test data using the Test Data Editor TDE to specify the Input and Expected values Input values of a test obj
81. gt r1 range_len 3 struct gt r1 range_start y integer ol e Drag n drop a variable from the Interface Variables window onto the classification element e g Range Start Note If you want to use the name of the interface variable as name for your tree element please press Shift and drag n drop then the variable onto the classification element The tree element gets the name of the variable RA Classification Tree Editor ts_is_yalue_in_range cte Di lol x BA Interface Via oj xj Search View Options Window Help 18 x 4 aja flied Sal ca aaaea Eao A4 1000x700 182 e Edit Test Cases Testing of Embedded Software Tessy 2 9 Systematic Test Definition e CTE will mark the respective tree element and all connected child elements by a gray dot This indicates that a variable has been assigned Assign Values to Variables To assign values e Right click a class of the classification tree and choose Properties from the context menu e From the Element Properties dialog choose the Variables tab e You may enter a default value within the In or Out field This is dependent from the passing direction of the interface variable Variables r1 range_start CTE will change the gray dot to yellow as soon as a value has been assigned to the class element You may move the mouse pointer over the class element to view the assigned value CTE will display the value using a
82. location where you would like to create new shortcuts InstallAy e Click on Next to continue Pitessy InstallAware Wizard Completing the InstallAware Wizard for Tessy The InstallAware Wizard is now ready to configure Tessy on this computer Click Next to begin configuration Click Back to change settings Click Cancel to exit e Click on Next to begin the configuration Testing of Embedded Software Tessy 2 9 Installation e 27 Installing Tessy The Installation Process e Now Setup copies all files to your disk into the specified installation path Piessynstataworewinerd E Installing Tessy 2 9 7 The program features you selected are being configured Installaware e On completion of the installation process the following dialog will appear 28 e Installation Testing of Embedded Software Tessy 2 9 Installing Tessy Ae InstallAware Wizard j Bl xi Completing the InstallAware Wizard for Tessy 2 9 7 You have successfully completed the Install4ware Wizard for Tessy To close this wizard click Finish lt Back Cancel e Click on Finish Tessy is now installed on your computer Note Next you have to register Tessy to get it running see Registration on page 36 Update a Previous Installed Version The installation process will be nearly the same as for a new installation described on page 17 New Installation Some of the installation steps will b
83. of the View menu Within the toolbar there is also a Monitoring button available File Tools Options Project Module Testobject view Window Help Tay lees Test Ri Li Dis aaae JIS eee E Sample a IsValueInRange 1 1 Simple p E ASAP A 4a The Monitoring menu entry is only enabled if the previously executed test for the currently selected test object was carried out with one of the instrumentation options selected within the Execute Test dialog The maximum information being displayed will be available with the Instrumentation option C1 C2 Test Object and Called Functions like shown below Execute Test xj IV Generate Driver M Run J Testcases separately Cancel m Instrumentation E C2 Test Object and Called Functic gt None _ C1 Test Object C1 Test Object and Called Functions C2 Test Object C2 Test Object and Called Functions C1 C2 Test Object C1 C2 Test Obiect and Called Functions If you select none for the Instrumentation option within the Execute Test dialog you will not be able to start the CV after the test run since there will be no coverage information available for the currently selected test object Window Structure of the CV The CV is a graphical tool based on the Eclipse framework The different windows of the graphical user interface are called views They may be moved rearranged and closed freely Please revi
84. of the module or you may create a stub independently of the global module setting Note For more information about the usage of stub functions please refer to application notes Using Stub Functions from the Help Documents menu Create Stub Function You may create stubs either for External or Local functions which will be executed instead of the original functions There are several options available e Create stubs for all functions at once for all test objects of the module global setting Select section External Functions or Local Function and choose Create all stub functions from the context menu Testing of Embedded Software Tessy 2 9 Test Preparation e 167 The Test Interface Editor TIE tie 32 _Stubs addToMemory File Search Options Help BE zalza AddToMemory External Functions Create all stub Functions add_values 9 get memory set memory TIE will create stubs for all displayed External Functions and indicate that by red ticks By default TIE will also define this stubs for all other test objects in the module and indicate that with G lobal E TIE 32 _Stubs AddToMemory File Search Options Help PERAE External Functions add_values get_memory set_memory Poon e Create a stub for a single function for all test objects of the module global setting Select one function in section External Functions or Local Functi
85. open a section to browse through the interface tree Note You may expand collapse all items of a subtree if you right R click a section or one other node in the tree The elements of different levels can be recognized by their differing indentations as well as their structure symbols explained in the table below icon Description fp This icon indicates that a further level exists The interface element in question is of a complex C type F This icon represents the browsed open state of a complex C type The sub elements of this type are represented below and indented by one level fan This icon indicates a basic type that cannot be browsed open Testing of Embedded Software Tessy 2 9 Test Preparation e 159 The Test Interface Editor TIE View Type Modifier Type modifier such as far near const etc can be displayed within the TIE as follows e Press Shift and move the mouse pointer over a variable The type modifier will be displayed as tool tip if any Global Variables 2 int h E a Parameter struct range Special Global Variables As mentioned above the Global Variables section contains variables with the following lexical scope e Defined within the source file e Defined static within the source file e Locally defined static within the scope of a function or at the beginning of a statement block In case of the first two bullets there will be no
86. remove all invalid functions later by opening and closing the UCE this dialog will be shown again e Choose Cancel to do nothing and leave the UCE open If the actual call trace is as you wanted it to be but your Expected Call Trace is something else e g marked as wrong like in the above cases you may use the actual call trace as the new expected call trace by using the context menu Actual gt Expected like shown below Expected Call Trace Available Functions Function Calls Function called_function_3 1 t called_function_1 Called _loqat atatiq tino 2 lled_function_3 lled_local_function_2 lled_local_static_function_5 Perm Actual gt Expected lled_function_4 4m Add Function m Remove Function Remove ALL Functions This overwrites all entries in the Expected Call Trace list and replaces the list with the actual call trace from the last test execution Test Object Specific Code On the menu bar you will find an icon for Testobject specific code e When Testobject specific Code is activated the currently edited Usercode section e g declarations definitions or the code of a stub function is valid only for the current test object and not visible for the other test objects of the module It is thus possible to create other definitions or stub function code for another test object 210 e Edit Test Cases Testing of Embedded Software Tessy 2 9 Usercode in the s
87. specific Host ID only Floating License Manager cannot be started on Windows 2003 2008 Server If your system is using DEP for all programs the Floating License Manager razorcat fls bin flsmgr exe which is used to configure the Floating License Server razorcat fls bin flsd exe cannot be started In that case please add the program to the exception list System Advanced Performance Settings System Properties ax ax General Computer Name Hardware Visual Effects Advanced Data Execution Prevention Advanced Automatic Updates Remote Data Execution Prevention DEP helps protect You must be logged on as an Administrator to make mast of these changes against damage from viruses and other security Performance threats How does it work Visual effects processor scheduling memory usage and virtual memory Turn on DEP for essential Windows programs and services only Settings Turn on DEP for all programs and services except those I select m User Profiles flsmgr Desktop settings related to your logon Settings Startup and Recovery System startup system failure and debugging information Settings Environment Variables Error Reporting OK Cancel Apply Testing of Embedded Software Tessy 2 9 Installation e 45 Registration Floating License Server Start Options The basic configuration of the floating license server takes place by using the floating license manager FLM
88. specified This defines the time range starting from the current time step where a call to this function is rated as successful with respect to the calling sequence The evaluation of scenarios will be described later within chapter Evaluation of Scenarios Setting Checking Variables Variables of the interface may either be set at the beginning or checked at the end of the scenario execution using the TDE Within the SCE all interface variables may also be set or checked during execution of the scenario You may drag any variable from the Variables view into the scenario on the desired time step Component Functions External Function Calls Variables O CY Initialization 23 JERE IQ O 23 number E _ g oO INIT 2 decrement_rate ae init S 0 ms amp l number E End of Scenario 0 ms E Properties 5 Actual Call Trace Variable Umber Passing Out Expected Value ia 350 e Component Test Testing of Embedded Software Tessy 2 9 Editing Scenarios within SCE The passing direction IN or OUT and the input or expected value of the variable need to be entered within the properties view the properties view is available when selecting the variable entry within the scenario Editing User Code If you want to edit the used code select the Declarations Definitions node or one of the Stub Functions nodes if available The respective code will be available for e
89. target environments used in previously installed versions of Tessy if any fi General H k Compiler Hg Targets H f Environments Ty Configurations 4 System a auec lt ____ enabled BR Gnu avo g Default H Gy ADS Arm E Gy Cosmic HCso8 Gy Cosmic HCS12 All other predefined configurations are disabled by default TEE will mark the respective icon with a red cross to indicate that a configuration is disabled s Symbol Appearance Gy cosmic HCS12 A configuration will be available within the Environment list box in the General tab of the Module Properties dialog within the Tessy main window s Module Properties as soon as an appropriate Compiler Target combination has been enabled s Enable Configurations 132 Tessy Environment Editor TEE Testing of Embedded Software Tessy 2 9 Starting the TEE Module Properties x General l Sources Linker Attributes Comment oc r Test Directory C AProjects razorcat tessy sample _Sample IsValuelnRange Cancel r Environment Cosmic HCS12 Hitex HiTOP Default z Cosmic HCS12 Hitex HiTOP Default GNU GCC GNU GVD Default I Enable ASAP m Target Binary Generate Test Binary C Use Original Binary Enable Configurations A configuration consists of a combination of Compiler Target and a Default environment You have to either enable both a Compiler and a Target in the General s
90. test case or test step The Usercode can be executed as follows e Prolog execution takes place before the respective element and e Epilog is executed after execution of the respective element The test object prolog will be executed at the beginning of the test whereas the test object epilog will be executed at the end of the test The following figure outlines the call sequence of the user code parts Testobject Prolog Testcase 1 Prolog Teststep 1 1 Input Data Teststep 1 1 Prolog Testobject Call Teststep 1 1 Epilog Teststep 1 1 Actual Values Testcase 1 Epilog Testcase 2 Prolog Testobject Epilog 192 e Edit Test Cases Testing of Embedded Software Tessy 2 9 Usercode The prolog and epilog sections and the repeat count for the test step are edited within UCE The picture also shows the interaction of the usercode sections with the test data provided within TDE and the actual values that are saved to the test database and evaluated against the expected results within TDE During the test object call the code specified for the stub functions if any functions are called from your test object may be executed depending on the code logic of your test object This is important in order to understand the usage of the eval macros described later in this chapter Within the script part of the usercode you may execute script commands in
91. test was executed e Date Date of the test execution e Time Testing of Embedded Software Tessy 2 9 Test Report e 287 Creating Reports Time of the test execution e C1 MCC MC DC Coverage If you executed the test in the respective modes the coverage will be printed here Interface Description You can view the interface description of the test object if you click the test object name in the General Data section Following page will open struct range int enum result The interface table lists all kinds of elements used by the test object e g Global variables Parameter and Return Value if any Next to each element you will find the passing direction for Input values for Output values and for InOut values Test Case Statistics In the upper right corner of the test report the statistics of all test cases are listed You will see the number of successful and failed test cases respectively test steps Statistics otal Testcases Successful Failed 8 1 9 1 jot Executed e To view a failed test step click the test step number e g 8 1 The browser will directly jump to this test step 288 e Test Report Testing of Embedded Software Tessy 2 9 Creating Reports Module Properties and Attributes Module Properties and Attributes are listed in their respective tables of the test report see also Module Properties Module Properties PDB File C1 Projects yaz
92. the SCE 342 e Component Test Testing of Embedded Software Tessy 2 9 Editing Scenarios within SCE L3 SCE Tessy Scenario Editor Jog File Help a C3 Scenario Project O S38 Component Functions 2 External Function Calls Variables E C9 Initialization 53 Declarations G x HE X Z Definitions SS 3 S inil O INIT lt 3 Stub Functions EFO ae crossed_25 E set_number long value tO g p EP handierQ 3 oms X crossed_50 ancient E amp number crossed 75 E End of Scenario 10 ms SCY Sce R 2 Normal Operation SY 3 cal gt fe 4 User Code C Description Specification 3 Za Specification E Properties _ 25 Actual Call Trace 75u operation mode init Sc nario DMitialization General Name Initialization work Task Description Duration 10 Step Size 10 Time Unit ms The SCE has the following main working areas e The Scenario Project view contains the list of Scenarios and the usercode entries Definitions Declarations and Stub Functions e The interface of the component divided into the Component Functions the External Function Calls and the global Variables relevant for testing e The User Code view provides editors for definitions declarations and stub functions e The scenario views in the example above the Initialization scenario selected within the project view The scenario contains a list of tim
93. the above sections shows all available eval macros When selecting one of the menu entries the corresponding eval macro with already filled sample arguments will be added at the cursor position The only difference of the eval macros is the type of argument for the actual and expected value See below for a description of the available types Syntax TESSY EVAL U8 lt name gt lt actual gt lt operator gt lt expected gt The actual and expected argument may be any C expression of the respective type and the operator has the standard C semantics Both may be chosen from the following list 202 e Edit Test Cases Testing of Embedded Software Tessy 2 9 Usercode Testing of Embedded Software Tessy 2 9 Typename C Type Operator Meaning U8 Unsigned 1 byte Equal S8 Signed 1 byte Unequal U16 Unsigned 2 bytes lt Less S16 Signed 2 bytes gt Greater U32 Unsigned 4 bytes lt Less or equal 32 Signed 4 bytes gt Greater or equal U64 Unsigned 8 bytes S64 Signed 8 bytes FLOAT Float DOUBLE Double LONGDOUBLE Longdouble Example File Edit Tools Geek 24A amp Stub Functions oid send_message void data i A unsigned int size Declarations Definitions 4 B 2 Testobject Evaluate depending on given message id 4a 1 Ia A 11 Signed char data_ptr unsigned char data E43 2 B24 itch data_ptr case
94. the different scenarios created for the component test amp Tessy BAX File Tools Options Project Module Testobject Yiew Window Help pel saals aE 2 4 Database D tessy samples 2_9_8 Sample pdb Usercode ResultPlots StaticLocals C ComponentTest DecrementHandler Specification 1 1 Initializ operation mode init FE 2 1 Normal operation mode normal 3 1 operation mode normal 2 4 1 operation mode normal DA akadas S Component Properties if Interface of the Component The interface of the component is a summarized interface of all the non static component functions Within TIE you will see this summarized interface named Scenarios as shown below Testing of Embedded Software Tessy 2 9 Component Test e 337 Interface of the Component G TIE 32 DecrementHandler Scenarios BAX Fie Search Options Help Bal al Scenarios bai E amp External Functions 6 Y crossed_25 K crossed_50 Y crossed_75 E amp Component Functions Er decrement handler Show Variables used by this function init set_number amp External Variables Global Variables long decrement_rate long number Parameter AR Return The External Functions section lists the interface to the underlying software functions if any external function is called from the component These external functions
95. the installation of the license file automatically s Install Local License Server on page 39 You may use the FLM to change default settings to suit your needs On the other hand you need to use the FLM to configure a central license server s Install Central License Server on page 41 or in case of problems Configuring the License Server Please read section Install Central License Server on page 41 for more information on this topic Starting and Stopping the License Server To start the Floating License Server do the following e click on Start Local Server in the toolbar or choose Start Local Server from the Server menu e click on Stop Local Server in the toolbar or choose Stop Local Server from the Server menu Checking License File In case that the Floating License Server don t start successfully you can check the license file or view the log file Razorcat f 1s bin f 1sd 1og to see more details s also Troubleshooting License Server e To check the license file click on Check in the toolbar 44 e Installation Testing of Embedded Software Tessy 2 9 Registration Your license key from Razorcat should match one of the Host ID s listed and should be OK Example Host ID 4890A0EOB8EE OK Licensefile OK Important Note You cannot transfer the license file from one to another installation of Tessy respectively license server The license key has been issued for a
96. the scripting language of the respective emulator Currently only HiTOP and TRACE32 are supported for this feature Please refer to application notes Using Usercode from the Help Documents menu Starting the Usercode Editor UCE Note Before you can open the UCE within Tessy you have to create at least one test case Please do the following to open the UCE e Select one test case and choose Edit Usercode from the context menu Description _ Specification ge Start Positiv ge Start Positiv ge Start Zero ge Start Negati ge Start Positiv ge Start Zero i si Insert Testcase INS amp 201 insert Testcase Gut Testcase CTRL X Copy Testcase CTRL C Paste e CTRL Y j 301 401 4 SCL 4 6 1 fit Delete 70 Add Teaston ge Start Negati Fin 8 1 S Edit Testdata ge Start Positiv f 901 ge Start Negati 4 10 1 ae ge Start Zera Initialize Testcase Properties View The Usercode editor will open You may also start the UCE from within the TDE see The Test Data Editor TDE or choose Edit Usercode from the tool bar Testing of Embedded Software Tessy 2 9 Edit Test Cases e 193 Usercode Using the UCE The UCE consists of a tree on the left hand side showing the Usercode structure containing the available entries and a number of tab panes on the right hand side to edit the Usercode Fjusercode Editor Stubs AddToMemory lol x File E
97. to Razorcat 38 o Installation Testing of Embedded Software Tessy 2 9 Registration Register Tessy There are two possibilities to install the license file e To install a node locked license on a local license server installation please read section Install Local License Server e To install a server license on a central license server within your network please read section Install Central License Server Install Local License Server When installing Tessy a local license server will be installed automatically In order to run Tessy you must obtain see Request License on page 37 and install a valid license see Install the License Key on page 39 If you have a central license server within your network installed you need only to specify the server address see Specify Central License Server on page 41 Install the License Key Please take the following steps to configure a local license server e Save the license key file from Razorcat to your local disk if not already done s Request License on page 37 e Start Tessy from the folder Tessy 2 9 within the Windows Start Menu If you didn t enter any license information before you will see the following dialog Testing of Embedded Software Tessy 2 9 Installation e 39 Registration Ix Tessy Registration ROA Tessy 25 1 Razorcat Development GmbH i Support and Distribution Leeni Tel 49 30 5363570 Fax 49 30 53635760
98. used within the Usercode that are not anymore part of the interface will be highlighted in ligh red They need to be changed manually or be removed Testobject Prolog Epilog Testcase Prolog Epilog Teststep Prolog sample formerly used renamed variable In the above example the variable formerly_used has been part of the interface before the reuse operation displayed in light red You would need to replace the variable with any useful statement or delete it completely if it s obsolete The other variable renamed_variable has been renamed and is now displayed with the new name highlighted in dark red to indicate an interface variable Definitions Declarations The definitions section of the Usercode may be used to define helper variables to be referenced within the prolog or epilog or within a stub function You may also define 196 e Edit Test Cases Testing of Embedded Software Tessy 2 9 Usercode external variables of the test object interface sometimes it s easier to use the definition and initializers to setup a variable correctly If the variable is only used within the prolog or epilog you do not need to add a declaration of this variable to the declarations section That s only required if the variable shall also be used within stub functions Declarations Definitions pies char sample _data 10 0 0 0 0 0 0 0 0 0 0 The above definition of the variable sample_data would require the fo
99. value e g 1 gt 0x01 Visible This flag makes the attribute visible in the attribute pane of the module properties dialog and within the test report Not Empty Checks whether the value is not empty An error sign will indicate that the attribute does not have a value Internal internal flag of TEE Environment Variable This flag is useful during test execution and during the 150 Tessy Environment Editor TEE Testing of Embedded Software Tessy 2 9 Symbol Appearance make process Tessy will create an environment variable within the process space of the process that will be used for test execution e g running the slave process and for make e g building the test driver Note The environment variable will only be recognized by Tessy if a sign is used in front of the Make Call value Make Command Add to PATH Variable This flag is useful for attributes of type Directory Like described above for the Environment Variable flag the respective directory value will be added to the PATH variable of the process space used for test execution and make Symbol Appearance Following table shows the symbols and their meaning which are used by TEE The attribute icons in front of the attribute names in the right pane or the icons in the left pane of the TEE may have additional symbols attached to accentuate special settings or alert you in case of problems
100. you may enter a symbolic name or even an absolute address into the input field next to the pointer variable For all other sorts of pointers you need to use the context menu to assign a value e You may set the pointer to NULL point it to a specific variable within the interface or create a new variable as the pointer s target In the latter case the TDE will create a new element within the dynamic object section To enter values for pointers do the following Testing of Embedded Software Tessy 2 9 Enter Test Data e 241 The Test Data Editor TDE e Select the pointer name and open the context menu El Globals o ME Show Target E a Paraactar Set Pointer NULL chac Create Target Value El Dynamics come Coley Ctr C Girly Ignore Value The context menu offers the following possibilities to assign a value for a pointer e Set Pointer NULL If you choose this option the value of the selected pointer will be set to NULL The text box will be filled with NULL Globals o Ma NULL a Parameter Bi Dynamics e Set Pointer Target If you choose Set Pointer Target you can select another interface element or a component of a structure or union and assign its address to the pointer The cursor will change when you move the mouse pointer over a variable D The object type fits the pointers target type You can assign the pointer The object type doesn t match the po
101. A E RE EREE 5 Core Workflow and Registration for Safety Information ssseeseeeeeeeeeeeeeee 5 Instrumentation for Coverage Measurement cecceescesceeeceseeeseeseeeneeenes 7 Adaptation to Target Environment 0 ccecceesceescesecenceeseceeeeeeeaeeeseeneeeereens 7 Operating Tams secs dca bent tie aie ee ae te ee 7 New Features in Version 2 O onain grea a EEEREN 8 Component Test Feature mecrereeirero roiie i t o EEEE tee 9 D tabase Format seisena arenie eii i iea A e EEE Ee ai 9 Test Database Backup Feature cecccccccesccesseeseceseeesceseceseceseenseceneeeeeneeenes 9 Importing Test Data Using a Command Line sseseeseereeereerseersereereeee 10 Tool Qualification Package ccesccesccesecseesseeseesseeeeeneeseeeeeeeesesreneeeeenaees 10 New Compiler and Debugger Integrations 0 ecceeceeeeceseeetseeseeneeeeeenes 10 Conventions yis4g cteted etient ae abet dona E tie estess 10 Installation 13 Preparing for the Installation ccccceeceescesseesecesceeceseceeceecaeeeseeeseeneeeeeeees 13 Testing of Embedded Software Tessy 2 9 Contents e iii Contents Pre Installation Checklist i2 c sccsccctecceichicsccte deceeseeens lessnedevssecsieeteteeersivect lt gt 13 Installing Tessy cc ccccccccsct ctvesccvdevoseiad vaxtotis csc tens aeeciedede a n a a 16 Setup OVEPVICW 2 e hr ee EE E A R T i aet 16 New Installati n si inann ieni ai a 17 Update a Previous Installed Version s sseseseseeeseesesseser
102. ANA always a catstep ahead Testing of Embedded Software Tessy 2 9 User Manual Imprint always a catstep ahead Imprint Tessy v2 9 for Windows 2000 XP Vista Windows 7 32 64bit TUV Tessy is qualified for safety related software development 300 according to IEC 61508 and ISO 26262 Sales Razorcat Development GmbH Witzlebenplatz 4 D 14057 Berlin Tel 49 030 53 63 570 Fax 49 030 53 63 57 60 e Mail support razorcat com Internet http www razorcat com Berlin Dec 2011 DocRev 2 5 5 Windows is a registered trademark of Microsoft Tessy and CTE are registered trademarks of Razorcat Development GmbH All other registered or unregistered trademarks referenced herein are the property of their respective owners and no trademark rights to the same is claimed Author flb mw Razorcat Development GmbH 2011 This manual was produced using ComponentOne Doc To Help Contents Contents TM Pritt eoii hied e helen a inet ei o A ii anneal a a RE ii Contents aeniei anii ea i R D a E E a Ei SE iii Preface 1 About Tessy sce isccccecccsceseceted R E NEE R E A E 1 Unit Testing with the Test System Tessy ccccccsseescesceeeeeeseeeeeeeseeeneeenes 1 Classification Tree Method and Classification Tree Editor cece 3 Automated Regression Testing cccecccesccessessceseeceecesecsseceecneesaeeeseeneeeeneens 4 HISTO e a a E E E E See 5 Safety Procedures rrje oeni ia eni E a E E
103. EE 260 Generating the Test DEVOE a EE E EAE E e RI RTE 261 Running Test Cases Separately seeseseesseeeeseesesseesesseseesessreseserresseseesse 262 Coverage Analysis srie riere EEEE E E EAR E 262 Setting Breakpoints sero reci retiri i Ee E E E EEE i E i 264 Run Test with Current Options cccccesseescesseeeeseeeeseeesceeeeeecneesseeneeenes 265 Execute Test Rum BEE ANERE IAEE 266 Testing of Embedded Software Tessy 2 9 Contents e vii Contents Symbol Appearances iaoiai seara isd orale g es 268 Change of the Test Case Status ccssesssscseceseseceeseceseceecesecereseenerenesaees 270 Batch Test trer dieien ee aE R EERE teeta Ei 270 Test Objects Tab fecissccss te scketecsscees Seve n A E ER 271 Options Fab nenn eee e ea E eka ERE deve E E a 272 Test Report ab ccs cccccsevhessessves Sesedheioesedes a e ii a 273 Save and Execute Batch Tests cicespete ietesscinive aean 274 View Batch Test Report iccccssccesccsscescceseeeed datinibecss e e e E i 275 Running Batch Tests at Command Line eeeeeescseeeceneeeeeseeneeeeeneees 277 Test Report 281 Creating Reports 404 sets ose hee eR eo en ee 281 Generating a Report after a Test RUM cccccceeseeseeesceeteeteceseceseeseeeneeenes 282 Fest Report Stricture eeo ene it EE cases E R EEE AAEE 286 Test Reports with Results Plots s ssssssessseesseesesseesesseseesresesesseeressesresseso 292 Test Reports with Timing Measurements ccceeseeeceseeeseeeeeseeeneee
104. Every test step contains a complete set of test data For instance the mechanism of test steps can be used to achieve an initialization of the test object before executing the test step that checks the actual test condition of the current test case To add a test step to a test case do the following e Select one test case e Choose Add Teststep from the context menu Tessy will insert a new test step 188 e Edit Test Cases Testing of Embedded Software Tessy 2 9 Insert Test Cases Manually Description Specification Insert Testcase INS Cut Testcase CTRL Copy Testcase CTRL C Paste Testcase GTRLY Delete Testcase DEL Edit Testdata Edit Usercode Initialize Testcase Properties l Unit f View Note You can also create or delete test steps using the TDE s The Test Data Editor TDE Delete Test Cases There is a slight difference between test cases imported from CTE and test cases created by Tessy You cannot delete test cases created by CTE using Tessy This feature has been disabled by default Specification a cnuaraqe yes Description F Insert Testcase INS pa Gut Testcase GTRL Fil 4 1 Copy Testcase CTRL C i Fa 5 1 Paste Testcase CTRL Y e yes FE 6 1 Delete Testcase DEL leryes a 71 Add Teststep eyes i 8 1 Edit Testdata e yes 1 Edit Usercode e yes 11 1 begir _Initialize Testcase Properties 4 l U
105. Expected Call Trace Available Functions Function Calls t Function called_function_1 called_function_1 called_local_function_2 called_function_4 gt ah ot called_function_3 called_local_function_2 called_f H_local_static_function_5 Function no longer exists in interface called_local_static_ Es fad In this case the tooltip indicates that the function called_function_3 does not exist any more in the test object interface This may occur due to changes within the source code if the function is no more called from the test object or from other functions called by the test object You need to remove the function from the Expected Call Trace and you probably also need to verify the resulting call trace if there are more changes necessary due to the changes within your test object In the last two example cases the following dialog will appear if you close the UCE Usercode Editor i E x 2 There are invalid functions in call traces Remove them and save the changes Testing of Embedded Software Tessy 2 9 Edit Test Cases e 209 Usercode e Select Yes to remove all functions from all expected call traces that are not more traceable or not more available within the interface of your test object Use this option if you know that there are only these changes necessary e Select No if you want to save the Usercode as is without modifications to the expected call traces You may
106. For batch test execution s Batch Test this option will also be used as stored for each individual test object Coverage Analysis Tessy supports both C1 and C2 coverage measurements Since there are different meanings associated with these coverage measurement names we will shortly explain our definition of these measurements 262 e Running a Test Testing of Embedded Software Tessy 2 9 Setting Test Options We distinguish between C1 branch decision coverage measurement MCC Multiple Condition Coverage and MC DC Modified Condition Decision Coverage The least two measurements are referred to as C2 coverage measurement All three measurements may be used in conjunction when running tests The MC DC coverage includes the calculation of the required atomic value combinations for each condition within the test object This helps developers in finding the required combinations for full MC DC coverage MC DC in Tessy supports branch points such as in if or while statements Note For more information and usage of coverage analysis in Tessy please refer to the application notes Coverage Instrumentation under Help Documents The Instrumentation combo box of the Execute Test dialog provides following options Execute Test xi Actions IV Generate Driver F Run Testcases separately Cancel m Instrumentation C1 Test Object C2 Test Object C1 C2 Test Object None C1
107. L S8 datal value2 data_ptr ling on given message id a_ptr unsigned char data The eval macro results in the tooltip are grouped by test step for better overview If the stub function has not been called or the eval macro has not been executed while running a certain test step there will be no entry for this test step within the tooltip The same result tooltip is also available for the test step epilog A red marked epilog node indicates errors in the eval macros like shown below E Ta XOR of 8 bytes expected SSY EVAL U16 Memory 0 data O Oxll EP Prolog data l 0x33 Epilog data 2 0x55 Memory 0 12578 12578 Memory 1 4934 4934 V Memory 2 30050 30050 VY Memory 3 30600 22414 X 204 e Edit Test Cases Testing of Embedded Software Tessy 2 9 Usercode Note You have to use braces to delimit Eval Macros if you use if else statements Example if x Tessy_Eval_Macro else Tessy_Eval_ Macro Call Trace The call trace feature of Tessy allows to check the calling sequence of functions called from the test object For each test step you may check if a specified sequence of functions has been called If the test object calls at least one function the Teststep Call Trace tab of UCE will be visible FJusercode Editor CallTrace main oj x File Edit Tools Haa 24h ox im Testobiect
108. MCC Report MC DC Report C1 Report This is a very basic program to demonstrate the integration of Tessy and HiTOP the debugger from Hitex ic Hitex Systementwicklung GmbH 2001 wuw hitex de i Revision 2 struct range int range_start int range _len il Flow Chart View The flow chart view displays the code structure and the respective coverage in graphical form For each function of the Called Functions view the code structure will be displayed in a new flow chart view Within each flow chart you will see the decisions and branches of the function being displayed Green and red colors indicate whether the respective decision has been fully covered or the respective branch has been reached Testing of Embedded Software Tessy 2 9 Monitoring of C1 and C2 e 299 Flow Chart View Displayed Elements The following elements are displayed within the flow chart of the CV 300 e Monitoring of C1 and C2 Testing of Embedded Software Tessy 2 9 Flow Chart View if decision The if branch on the left side was reached once the else branch on the right side was not reached The decision was not fully covered The loop body was not reached instead the exit out of the loop was executed once The loop decision was not fully covered switch statement The first case branch was reached once the second case branch and the default branch were not reached do whi
109. OP e Choose Enable Target from the context menu or use Ctr1 1 Fa n 134 e Tessy Environment Editor TEE Testing of Embedded Software Tessy 2 9 Starting the TEE 4a Tessy Environment Editor File Edit Options Help U Exa ST howa gt Targets wm Freescale Codewarrior Bh Metrowerks Codewarrior A Fujitsu Softune Workbench ma Fujitsu Softune6 Workbenc BB enu avo E Green Hils MULTI 2000 HighTec GNU Debugger x Hitex HiITOP eat Gopy Target Insert HB IAR C SPY E M Delete ae HBA IAR C SPY A SYSTEM wit A Keil Vision Restore Factory Value Ctrl R Eal LAUTERBAC A Microchip MF I Expand subtree A Noral Flex E NEC SM78K IB Collapse Subtree Hy NEC SMV851 JE Expand All Ctri A EA Phyton PICE mi Rename Fz This will enable your target TEE will remove the red cross from the icon to indicate that this target is enabled s Symbol Appearance FA Hitex HiTOP System Section Enable Configurations You can only use supported compiler target combinations in TEE Therefore you may activate your preferred environments directly in the Configurations System section The System tree contains all supported compiler target combinations e g Compiler Tasking XC166 Debugger Tasking Crossview Environment Default Testing of Embedded Software Tessy 2 9 Tessy Environment Editor TEE e 135 Starting the TEE e To enable a configuration select the Default env
110. Out In this case no further handling of the pointer target will be possible passing direction Irrelevant for the target Create an advanced stub for the current test object Examble AddToMemory This option enables you to create an advanced stub only for the current test object This case leaves the global setting of this function for all other test objects of the module untouched Select one function in section External Functions or Local Function From the 172 e Test Preparation Testing of Embedded Software Tessy 2 9 The Test Interface Editor TIE context menu choose Create advanced stub function for current testobject tie 32 _Stubs AddToMemory File Search Options Help PPR aartenenay amp External Functions jadd_ values Create stub Function for all testobjects get memory Create advanced stub for all testobjects set memory amp Local Functions Create stub for current testobject Create advanced stub for current testobject TIE will create an advanced stub for function add_value for the current test object AddToMemory This advanced stub will work independently of the global module setting A red double arrow with L ocal will indicate that an advanced stub has been created only for the current test object F TIE 32 _Stubs AddToMemory lol x Fie Search Options Help Pal S zalza AddToMemory x amp External Functions
111. P Module Module Compiler gcc Attach files Environment Generic F tessy ini Kind Of Test Unit IV tessy32 ini IV Project Database M Test Database IV Preprocessed Sources Operating System Windows 2000 5 0 build 21 Memory Physical total 196148 kB Physical free 121336 kB Environment EmN ALLUSERSPROFILE C NDocument APPDATA C Documents and Se CommonProgramFiles C Progr COMPUTERNANE MACHT ComSpec C WINNT system32 c HOMEDRIVE C HOMEPATH LOGONSERVER MACHT NUMBER_OF_PROCESSORS 1 OS Windows_NT e Tick all check boxes and click OK The next dialog shows the path where the support file Tessy_ version _SupportInfo tar has been created default c Tessy Note You should also tick the Preprocessed Sources if possible This enable us to execute the test object with Tessy You may send the support file encrypted if necessary Request please for our PGP key Testing of Embedded Software Tessy 2 9 Troubleshooting e 363 Error Messages e Please send Tessy_ version _SupportIinfo tar to support razorcat com Error Messages Error messages printed when opening a module or during the test run are caused by errors during preprocessing or compilation of the source code Mostly these are syntax errors in the source file Please check your source files using the Check Sourcefile s command from the context menu of the module This will use directly you
112. SAP StubFunctions Ra Aliasnames SFR_Handling Rename a Project e To rename a project you may either click once the project name or select Rename from the context menu 90 e Test Organization Testing of Embedded Software Tessy 2 9 Creating a Module File Tools Options Project Module Testobject View Window t Dis Pj patabase C tessy Sample pdb _Sample ASAP StubFunctions serene ME Delete DELETE SFR_Handlinc Comment FE Add Module INSERT Paste Module CTRL Properties Note A valid name cannot contain any of the following characters blanks amp lt gt Only simple brackets dashes and underscore characters _ are permitted Delete a Project To delete a project do the following e Select a project you want to delete e Choose Delete from the context menu or use Del on the keyboard e Click OK Tessy will remove the project folder and all containing module folders This will also delete the project folder from the hard disk Creating a Module A Module contains all C functions test objects derived from your source file s and specifies settings needed for the test You can only create a module in a project folder see Creating a Project Testing of Embedded Software Tessy 2 9 Test Organization e 91 Creating a Module Add a Module To create a new module do the fol
113. TIE aB External Variable Q ini moion fag MESTEEREEE Out gt r int stop_flag Zeit Out 7 TIE will define all variables and indicate that by red ticks B External Variables Y int motion_flag Out gt Y int stop_flag Out 7 e To define a single external variable ia g select one external variable from section External Variables and choose Define variables from the context menu TIE will define the variable and indicate that by a red tick 4 External Variables ia o Am Define variable Y int stop_flag If you don t want define variables do the following e To remove all defined variables select section External Variables and choose Don t define all variables from the context menu TIE will remove all defined variables and indicate that by clearing the red ticks e To remove a single defined variable select one external variable and choose Don t define variable from the context menu TIE will remove the defined variable and indicate that by clearing the red tick Important note Tessy will only define the variables according to their type A default initialization of the values of the variables does not take place during definition but is dependent on the used compiler 176 e Test Preparation Testing of Embedded Software Tessy 2 9 The Test Interface Editor TIE Define Missing Linker References If your source code respectively module contains more than one test obje
114. Total Coverage 75 00 Testcase j Teststep off m Er r is_val_in_range c MCC Report MC DC Report C1 Report o result is_value_in_range struct range ri value v1 al if vil lt ri range_start return no if vl gt r1 range_start ri range_len E return no 4 P Note To leave the search result mode of the flow chart tab just click somewhere into the flow chart CV will switch back into normal mode Searching for Unreached Branches By clicking on the Next Unreached Branch button within the toolbar or selecting the respective item from the Chart menu the flow chart will change into the search result mode displaying the next unreached branch found in normal mode while fading the rest of the flow chart as shown below Testing of Embedded Software Tessy 2 9 Monitoring of C1 and C2 e 305 C1 Coverage View sip File Chart Window Help ee 7 ojs HO BE Called Functions gt 7 O is value inrange 3 E sk mcc Coverage sh McjOc Coverage O C1 Coverage Tm Total Coverage 0 00 Testcase j Teststep e GRE P 7 Er r is_val_in_range c MCC Report _ MC DC Report C1 Report eis result is_value_in_range struct range ri value v1 al if vl lt ri range_start return no if vl gt r1 range_start ri range_len E return no 4 P
115. You must have installed at least license server version 3 1 on your network server and Tessy v2 4 25 to be able to use this feature The license server v3 1 will be delivered since Tessy version 2 4 25 Errors upon starting the License Server e Error opening registry key The Floating license server needs write access to the registry of Windows This is often not allowed if you logged in with user privileges This issue may appear when you want to use a node locked license with Tessy Normally Tessy tries to start a locale license server as application on your computer if you want to use a single license for one Tessy installation To start the local license server successfully with user privileges please configure the license server as service You need admin privileges to performing the settings For more information on how to configure a license server as service please refer to Install Central License Server on page 41 Checkout Licenses If you want to use Tessy on computers that are temporarily disconnected to your network e g notebooks you may start a local license server on these computers You can check out a temporary license from the central license server to operate the notebooks license server independently from the network There are two possibilities to checkout a license e Ifyou want to checkout a license for a computer currently connected to the network please refer to section Checkout from the License Di
116. added into the scenario control flow Also the code for stub functions may be edited directly within SCE Component Test Modules The component test management is based on the normal Tessy modules You need to create a new module with all the source files include paths and defines necessary to analyze the source code of the component The component behavior will be activated using the Kind of Test setting within the module properties like shown below Module Properties General Sources Linker Attributes Comment Test Directory _ D tessy samples 2_9_8 Sample ComponentT est DecrementHandler Cancel Environment GNU GCC GNU GYD Default X Features Kind of Test Enable ASAP C Unit Component Target Binary Generate Test Binary ad 7 Please note The Kind of Test setting controls the new attribute Component Test it will be set to true and the Unit Test attribute set to 336 e Component Test Testing of Embedded Software Tessy 2 9 Interface of the Component false You may create a test environment within the TEE with the Component Test attribute set to true so that the component test is the default setting for all Tessy modules using this environment If you open a component test module the normal analysis process of the source files takes place In contrast to normal unit tests you will only see one special test object called Scenarios The test case list of the Scenarios node will contain
117. al function s Define Stubs for Functions on page 167 TIE will set the passing direction on Irrelevant for the global variables which are used by the stubbed function The passing direction cannot be changed any more The combo box has been disabled 174 e Test Preparation Testing of Embedded Software Tessy 2 9 The Test Interface Editor TIE Elie 32 catedfoo eT File Search Options Help Ee a E amp External Functions lt 8 Local Functions L Y called 4 amp 3 External Variables Global Variables E struct STRUCT s irelevant z a Parameter E R Return unsigned char 7 Enums E B Declarations Unused amp External Functions 4 amp 3 External Variables Define or Declare External Variables The global variables used by the test object are distinguished by the TIE according to whether they are defined or only declared in the source file e g e Defined float result e only declared extern int motion flag Defined variables are displayed in section Global Variables while declared variables appear in section External Variables Besides specifying the passing directions for external variables you can also define these variables using TIE e To define all external variables at once select section External Variables and choose Define all variables from the context menu Testing of Embedded Software Tessy 2 9 Test Preparation e 175 The Test Interface Editor
118. all To continue click Next e Modify Add or remove components of the last installed Tessy version s Multiple Installations of Tessy 2 9 x on page 31 Repair Reinstall the last installed version of Tessy with the same configuration Uninstall Removes the last installed version of Tessy e Select one of the options and click on Next Using Projects from earlier Versions than Tessy 2 9 Tessy 2 9 uses a new and very different database format compared to earlier versions of Tessy s Databases The converter of Tessy 2 9 works only for projects which have been created with Tessy 2 6 This mean you can open and convert all projects of a project database pdb directly as long as the pdb has been created with Tessy 2 6 Tessy will prompt you to convert a project database to the new format in case you want to open an existing project database with an older format Tessy will inform you in case that the conversion is not possible s Using Projects of Tessy 2 5 and Using Projects of Tessy 2 4 or less After this conversion it s no longer possible to open the new database using an earlier version of Tessy 34 e Installation Testing of Embedded Software Tessy 2 9 Installing Tessy Using Projects of Tessy 2 5 The project converter of Tessy 2 9 cannot convert a project databases of Tessy 2 5 or less directly Tessy will inform you that the conversion is not possible But in difference to this limitation you can re
119. all Trace results are not matching with expected values UCE UCE Usercode Editor TDE Test Data Editor Note A test case can not be executed before initialization E yellow state If a test case could not be executed i e because the test was aborted it will remain yellow Change of the Test Case Status An executed test case with status green mS or red a will change the status to yellow CJ after the following actions e user code has been inserted or changed all test cases will get the yellow status e test data have been changed only the affected test cases will get the yellow status e anew test case has been inserted all other test cases will get the yellow status e anew test run has been executed but the test case has not been selected for that test run Your test cases will change to status gray after an assignment of test data by using IDA or if you change the settings of the interface changing passing directions of variables You may then select all test cases and initialize them by choosing Initialize Testcase from the test case context menu if no further test data has to be inserted Batch Test Tessy provides a Batch Test feature to execute all tests at once This allows you to select whole projects modules or test objects for testing To create a Batch Test do the following e Open a test database and choose Batch Test from the Tools menu 270 e Running a Test Testing of Embedded Softwar
120. allation Preparing for the Installation The Tessy version 2 9 and later allows you to have multiple Tessy installations with different versions on the same computer Depending on the actual installation situation there are different dialogs and settings required during setup Installing Tessy on page 16 Important note You need local administrator privileges on the system in question to perform the installation of Tessy Pre Installation Checklist System Requirements e Tessy requires Windows 2K SP4 and higher Windows XP SP2 and higher Windows Vista 32 bit 64 bit or Windwos 7 32 bit 64 bit The Floating License Server may also be installed on Windows Server 2000 2003 and 2008 both on 32 bit and 64 bit versions s Install Central License Server e Automatic aliases should be enabled recommended Hive HKEY LOCAL MACHINE Key SYSTEM CurrentControlSet Control FileSystem Testing of Embedded Software Tessy 2 9 Installation e 13 Preparing for the Installation Name NtfsDisable8dot3NameCreation Type REG WORD Value 1 Disable automatic alias Value 0 Enable automatic alias Setup will check this and will enable automatic aliases if necessary You have to reboot your machine Note Tessy converts all path names to 8 3 short names by using a function provided by Windows This conversion could fail if automatic aliases have been disabled Normally this option is enabled by default value 0 We reco
121. alog 48 o Installation Testing of Embedded Software Tessy 2 9 Registration e Ifthe computer is disconnected from the network e g a notebook while traveling you can checkout a license using the Floating License Manager This will be described in section Checkout using the Floating License Manager Caution Checking out licenses for a number of days will temporarily reduce the licenses available from the central server s license pool for the days you have chosen There is no way to return temporarily checked out licenses You can set the environment variable FLSD_FLAGS no keys on your central license server to prevent client machines from checking out temporary licenses Note It s further on possible to check out licenses by using the license manager installed on your central license server see Checkout using the Floating License Manager Checkout from the License Dialog Note Probably this option has been disabled by your system administrator in case that the check out option is not available This option is available only for floating licenses s Registration on page 36 The easiest method to checkout a license for a few days is as follows e Start Tessy Open the license dialog by clicking Register in the Help menu e In section Notebook License select option check out License for and adjust the number of days up to 30 you want to checkout the license Notebook License No Lice
122. alues are preserved Note You must use the Environment Editor if you want to use added attributes also in other modules for the given target Edit Attribute Values There are some possibilities to edit an attribute value This is also dependent by the used data type e Using the context menu on a selected item e Using short cuts on a selected item e g F2 The inline editor will open ise _ Data Segment Begin 0x2000 v Execute Testcases Sepe false Init Script TESSY_TESTAREA hitop Ra Stack Pointer Init 0 4000 New Attribute INS Rg Vector Table Begin OxFFCE Vector Table File S TESSY_SYSPATH OPen Wit Editor 0 Ope with pplication e Double clicking the attribute name The Edit Attribute dialog will open Testing of Embedded Software Tessy 2 9 Test Organization e 113 Module Properties Edit Attribute x Name fini Script Value Cancel TESSY_TESTAREA hitop_init_he12 scr Type Sting Boolean Number Float File Directory Show Flags The attribute will be displayed in bold face if the default value has changed Re Code Segment Begin OxC000 a _ Data Segment Begin 0 2000 alnit Script TESSY_TESTAREA hitop_my_init_hc12 scr E Stack Pointer Init 0x4000 Insert Attributes You may add new attributes to the Attributes pane This new attribute will only be available for the
123. ame module 4 eee Editor Car motor_control handle_torque_demand D oj x File Edit Tools Gime xr aia E stub Functions pec specie Code signed short ipo struct tablez param 0001 unsigned short param 0002 ipo3 Declarations Definitions 5 Testobject a a 11 Prolog 312 a13 Prolog Da2 B24 22 3 Compile Usercode By Before closing UCE and also in between changes to the Usercode you should make sure that the Usercode is syntactically correct by using the Compile button in the toolbar Results can be seen within the message window of Tessy Delete Usercode You can delete the Usercode in the current editor pane by choosing Select all in the Edit menu or by pressing Ctrl A and pressing the Del key afterwards e Ifyou want to delete the whole usercode of a test object choose Delete all Usercode in the Edit menu e Ifyou have deleted all Usercode by mistake close UCE without saving to cancel all modifications Enter Script Commands The Usercode supports the native scripting language of certain emulators for use in prolog and epilog sections Depending on your Target Settings for the module refer to Module Properties an additional tab within the Usercode editor will be inserted e g HiScript for use with HiTOP emulators Testing of Embedded Software Tessy 2 9 Edit Test Cases e 211 Import Export Source paj Please refer to the application note Using Usercode for details Tessy
124. amples 2_4_8 Sample Sample fsValuelrRange G A Testcase 9 arget Environment GNU GCC GNU GUD Default ind of Test Unit Test iA Teststep 9 1 Testcase 10 A Teststep 10 1 Goto Top Failed 8 1 9 1 jot Executed User Administrator Host ODIN Date 16 02 2007 Time 14 17 39 C1 Coverage 100 00 90 MCC Coverage 100 00 MC DC Coverage 100 00 Source Files Compiler Options TESSY_SAMPLES_ SOURCE js_val_in_range c Revision 2 Attributes Expand All Collapse All Help Home MODULEPATH s_is_value_in_range cte Frames No Frames Floating Menu Generating Reports using XML Result Files You may use already generated XML files to create test reports In this case you don t need to open any project databases to create the reports 284 e Test Report Testing of Embedded Software Tessy 2 9 Creating Reports e Open Tessy and click the Test Report icon in the toolbar E The Create Test Report dialog will open Tessy Create Test Renare x m Format Generate Cancel Style Screen z rm Layout Details Failed Testcases Only J Details Failed Testcases Outputs Only Details Failed Teststeps Only Details Failed Teststeps Outputs Only Details Outputs Only E Details Without CTE Graphics Summary EJ Summary and Testcases Info m Output Directory C Projects razorcat reports z E MXML Test Result Files ple IsValuelnR
125. ange ts_is_value_in_range xml Fa El Testing of Embedded Software Tessy 2 9 Test Report e 285 Creating Reports e You may choose from the following settings Format Format specifies the file format of the test report You may choose between HTML CHM ASCII text Microsoft Word Microsoft Excel or other available formats Style Sets the style of the document There are some styles available depending on the file format used Layout Sets the layout of the test report Various layouts are available depending on the file format used Output Directory Sets a root folder in which the reports will be generated F e To specify a directory click the path selection button XML Result Files At least one XML result file has to be selected to generate a report K e To select a XML file click the path selection button e After selecting of suitable options click Generate to generate the test report Test Report Structure The appearance of a test report depends on the file format and layout used Therefore the following description will assume that HTML was used Layout Details 286 e Test Report Testing of Embedded Software Tessy 2 9 Creating Reports 01 Test Report KENA Menu Sample __ Statistics Module IsValueInRange otal Testcases 2 4 Testcase 1 is value in range Gi Teststep 1 1 A Testcase 2 g Teststep 2 1 A A Testcase 3 he Teststep 3 1
126. are Unexpected calls with respect to the empty expected call trace Such function calls are visualized in pink and enclosed in parentheses Example Expected function call but no function was called Expected Call Trace Available Functions Function Calls Function called_function_3 1 t called_function_1 called_local_static_fun 2 called_function_3 called_function_4 1 a called_function_4 chal E e ERE wj called_local_function_2 called_local_static_function_5 In this case the tooltip indicates that function called_function_4 should have been called but no functions was actually called Testing of Embedded Software Tessy 2 9 Edit Test Cases e 207 Usercode Example Actual number of function calls wrong Expected Call Trace called_function_3 Function Calls called_local_static_fun called IY actual Function called Available Functions 1 F called_function_1 Function 2 called_function_3 local_st atic_function_5 1 Called_local_function_2 called_local_static_function_5 In this case the tooltip indicates that the function called_local_static_function_5 was expected to be called twice but the function was actually called only once Example Wrong function was called Expected Call Trace called_function_3 called_lo Function Calls Function 1 T called_function_1 Actual Function
127. ariable within the user code or specify a global variable available within the interface of the component 354 e Component Test Testing of Embedded Software Tessy 2 9 Evaluation of Scenarios Checking Global Variables You may set or check global variables of the component at various locations of the scenario e When opening the TDE you may provide input values for the input variables and expected results for the output variables The input settings are processed before starting the scenario while the expected results are checked after finishing the scenario execution e Within the scenario you may also add variable setting or checking entries by dragging the respective variable onto the desired time step of the scenario Please Note Currently only scalar type variables may be evaluated within the scenario Checking the Calling Sequence The calling sequence of calls to underlying external functions may be checked on an abstract level within the scenario Not the absolute calling sequence will be evaluated but the existence of function calls within a given period of time within the scenario This provides a robust mechanism for call trace checking that ignores the internal implementation of the component How does it work You specify the following information within the scenario for each expected function call e The time step where you expect the call at the earliest e The number of expected consecutive calls to the func
128. art Ne 4 StubFunctions A A a Please wait while Tessy is executing your Test i Le Range Start Po Aliasnames Range Start Ze SFR_Handling fi Range Start Ne Ae f E Usercode e A j Dea ResultPlots OriginalBinaryTest AE A 9 xxxx Compiling Master il Project Root C tessy29 samples 2_6 5 Configuration Default L Note While executing the test you will see the progress and any errors within the message window of Tessy Tessy will do the following while executing the test e Create and compile the test driver and link it with the user code and the test object to the test executable Option Generate Driver e Start the test driver master and load the test driver slave to the target environment to execute the test object Option Run Note The test execution may be canceled at any time by clicking the Abort button At the end of the test run both the test object icon and the test case icon s will change their colors either to Green passed or Red failed see Symbol Appearances You may open the TDE or UCE to view the test results see View Results after Test Execution respectively Usercode You may also create a test report for this purpose see Creating Reports Testing of Embedded Software Tessy 2 9 Running a Test e 267 Execute Test Run Symbol Appearances Tessy displays different test states with colored symbols Both test
129. aste Testcase CTRL Y Delete Testcase DEL Add Teststep Edit Usercode N Initialize Testcase Properties 4 Unit a e E TDE Test Data Editor 66 Quickstart Testing of Embedded Software Tessy 2 9 Tutorial F TOE IsLineCovered is_line_covered_by_rectangle 1 1 File Edit Search Tools Options Help 3 l0 x Pal S 22 euler e fh E Specification Deso test case test step E nA Parameter a Parameter Eh gt struct Rectangle E rus Return Eh y struct poin input enum ints variables 7 B Dynamics inty 2 int width intheigth output Eh sy struct Line line variables Eh struct point p1 intx o inty Ery struct point p2 2 ints o iny R Dynamics TDE Input Output Values The main lower window of the TDE is vertically split into two areas e On the left side you will see the input variables IN e On the right side you will see the output variables OUT If you have more than one test case respectively test steps created you can use the combo boxes to switch to another one Specify Input Values To enter appropriate test data for our sample test object please use following input values from the picture below Testing of Embedded Software Tessy 2 9 Quickstart e 67 Tutorial PL Youcan browse the interface down to the basic components or click on Next Undefined Value that will guide you automatically to the next variable where you have to
130. at is enabled by default when installing Tessy If you don t want to use a custom configuration file please deselect the check box not recommended R e To select a Configuration File click the path selection button and choose an appropriate file for your database Specify Database Name e Enter a database Name Tessy will complete the database Root Directory and Database File name automatically In case you have specified a project root Tessy creates also a folder named Tessy where the database file and the database root directory are stored otherwise a default path is used e g c tessy Specify Database Root Directory By default the database Root Directory will be inserted with the input of a database Name and should not be changed You may change this directory as follows e To specify a database Root Directory click the path selection button and choose an appropriate directory from the dialog Specify Database File By default the database File will be inserted with the input of a database Name and should not be changed This file will be stored in the Tessy folder ifa PROJECTROOT has been specified You may change this directory as follows Testing of Embedded Software Tessy 2 9 Test Organization e 81 Databases e To specify a database File click the path selection button and choose an appropriate directory from the dialog Specify Author e Enter the Author of the database The Windows login na
131. ation D E XH AR O INIT 0 ms iss set_number value 50 10 ms crossed _750 10 110 ms E End of Scenario 110 ms E Properties S Actual Call Trace 7 a Function crossed_75 Expected Call Count 0 Time Frame 100 The crossed icon shows the special value of the expected call count indicating a check that the function shall not be called The report would contain the following expected call trace none 0 crossed 75 10 110 ms 0 v 358 e Component Test Testing of Embedded Software Tessy 2 9 Evaluation of Scenarios Checking Stub Function Parameters Parameters of called external functions may be checked within the stub function code since the external functions are normally provided as stubs L3 SCE Tessy Scenario Editor DecrementHandler X Yy File Help CS Scenario Pr E 3 Component Functions 2 External Function Calls variables F Oje xX u 3 Declarations Bint CESE Z4 Definitions set_number long value O NT ae al a SS handler End of Scenario 0 ms 2 crossi B crossed_50 B crossed_75 S E Scenarios E a A I gt 21 2 a e 3 Z4 User Code 2 C3 Description Specification o ri E Propert N Actual O a 4 void crossed_25 short param m S 5 EE i 6 Propert value D7 TESSY_EVAL 516 Checking Parameter param 0 vf Declarations Definitions stub Code A gt Testing of Embedded Software Tessy 2 9
132. ation File cccsceesesseeseeeteeteeeeeneeenes 140 Open an Existing Pile sescenti vate deisel AEE esses 146 Adding Editing Attributes ccccecccesccssecsseceseeseceeeceeecaeeeaeeeseeeeeeseeereees 146 Edit Attribute ennert na E ERE 147 Add A tra ute ites c iis nnan i aie E R 149 Symbol Appe rance sesinin iii a A o R A i i 151 Representation of Values in TEE ee sssssssesssseesesseesrsrseessesrseeseesessesressese 153 Test Preparation 155 The Test Interface Editor TIE cccccecsceesseesceseceseeereeesceseceseeeaeeneeeneeeneeenes 155 Open the PLE i e toa Metin ft ee ict ieth se ts doh as halts hans Set na 156 Browse the Interface cerne n E esto eee oes 158 Set Passing Directions csccescesseeeceeseeeseeesecaeeeaeeeaeeeseeeeeeeeeesaeenseneensees 161 Reset Passing Direction to the Initial Value eee eeeceeseeeeeneeeeeeeeneees 163 Passing Direction of Special Data Types ccccceesceeseeesceseceseeeeeseeeneeenes 165 Define Stubs for Functions 20 0 0 cececeseesseeeeesceeeceeceeeceseeeseceseenseenaecseeeaeeenes 167 Define or Declare External Variables 0 ccccccceesceesceeeceeseeeeceseenseeseeenes 175 Define Missing Linker References cccccccesceesseeseeeeceeeceseeeeeeaeeneeeaeeenes 177 Search for Variables rennon cote ile ca tesctvcsteacceciecasessete eden 177 Save Interface Information and Exit the TIE 000 0 cceseeseeeseeeeeeteeteenees 178 Edit Test Cases 179 EMter TSU Cases a ses
133. ault if any 116 e Test Organization Testing of Embedded Software Tessy 2 9 Test Object Properties Testobject Properties x General Attributes l Comment oxC000 0x2000 Init Seript TESSY_TESTAREA hitop_init_ho12 scr Stack Pointer Init oxa000 ie Vector Table Begin OxFFCE 2 Vector Table File TESSY_SYSPATH stc comm vector_cosmic_he CTE File MODULEPATH ts_is_value_in_range cte a a There are additional test object specific attributes available e Execute Testcases Separately Normally this attribute is not visible s Environment Editor Execute Testcases separately will be set on true if you have checked this option within the Execute Test dialog This attribute is taken into consideration for every test object individually when you carry out batch tests s Batch Test You may set this attribute within in TEE on true if you want to use this option by default for all test objects e CTE File This attribute becomes visible if test cases have been created and exported to Tessy by using the CTE After exporting of test cases Tessy will also copy the CTE document into the respective module folder and rename then the document in ts_the_testobject_name cte The CTE document must be stored in the module folder All attributes will be displayed in bold face if the default value has changed Note You may change every setting for each test object locally We do not recommend to change
134. ay verify if no function at all is called from your test object by removing the tick and leaving the Expected Call Trace list empty as shown below called_function 4 A Testobiect Prolog Epiloa Tastrase Proinn J Frilers called_function_3 Teststep Prolog Epilog Teststep Call Trace called_function_1 I Ignore Call Trace Declarations Definitions Expected Call Trace Available Functions ED Testobject Function calls Function B14 called_function_4 called_function_3 4 called_function_4 called_local_function_2 called local static function 5 The results of the call trace will be stored within the report and also visualized within UCE after execution of the test object A red marked Call Trace node indicates an error By selecting the node you will see the Teststep Call Trace tab showing one of the following error possibilities 206 e Edit Test Cases Testing of Embedded Software Tessy 2 9 Usercode Example Empty call trace expected but functions were called Testobject Prolog Epilog Testcase Proline Frilars Teststep Prolog Epilog Teststep Call Trace I Ignore Call Trace Expected Call Trace Available Functions Function Calls Function t called_function_1 called_function_3 alled_function_4 Actual Function Unexpected call led local function 2 called_local_static_function_5 In this case the tooltip indicates that the called functions
135. bases can be converted in the new format of Tessy 2 6 The conversion can take a lot of time so that we would recommend using module backup files described above e After you have finished this step you can open the project database with Tessy 2 9 Testing of Embedded Software Tessy 2 9 Installation e 35 Registration Using Projects of Tessy 2 4 or less If you want to use projects from version 2 4 or less in Tessy 2 9 you have to convert the projects at least to Tessy 2 5 or Tessy 2 6 You must use the respective next major version of Tessy to perform the conversion Please contact our product support if assistance is needed Registration The licensing for the products CTE und Tessy uses the Floating License Server developed by Razorcat Depends on your purchased license model there are two types of licenses possible e Floating License s e Node Locked License The floating license is a server license issued for a given host id for a dedicated server within your network It s possible to share the license s with other users within your network The node locked license is a single user license issued for a given host id It s not possible to share the license with other users within your network A node locked license operates only on the particular machine for which the license is issued Floating License The Floating License Server allows you to manage all licenses on a central network server Tessy and CTE can then be u
136. be installed as follows e Tessy files into the version directory e CTE files into the version directory e FLS files into the base directory If you want to add or remove components to an existing installation you also need to start the setup program Please refer to section Modify Repair or Remove Installation on page 33 Important Note The new formats of the databases used by Tessy v2 9 are not compatible with earlier versions Tessy will prompt you to convert a project database to the new format in case you want to open an existing project database with an older format After this conversion it s no longer possible to open the new database using an earlier version of Tessy Please refer to Using Projects from earlier Versions than Tessy 2 9 New Installation To install Tessy on your computer please insert the Tessy CD into the CD ROM drive and wait for the setup program to start e Select from the options provided to start the Tessy installation If setup will not start automatically please press the Start R key and either choose Browse or type into the command line CD Drive Tessy TessyVersion tessy setup exe Testing of Embedded Software Tessy 2 9 Installation e 17 Installing Tessy zi xi cma Browse e Click on OK and setup will be started Installing Tessy Requirements e Python and Java must be installed for Tessy Setup will install all applications if nece
137. binary You may specify libraries object files or other linker command line options within the Linker Options pane All settings are used to build the test driver executable 110 e Test Organization Testing of Embedded Software Tessy 2 9 Module Properties Module Properties x General Sources Linker Attributes Comment Linker Options PROJECT ROOT obj AddNumber o Binary tab setting use original binary In the Binary tab you need to enter the executable binary file to be used for test execution on the target In case of HiTOP select the htx file in the respective build directory of your development environment The file name extension required for the Test Binary depends on the target environment to be used Please refer to the application note Original Binary Test from the Help Dokuments menu for details on this test method and the required settings for individual target system configurations Testing of Embedded Software Tessy 2 9 Test Organization e 111 Module Properties 5 General Sources Binary Attributes Comment OK Test Binary Lx PROJECTROOT bin hitop hts E Cancel Test Execution Settings IV Target Reset before each Testcase IV Go until Testobject In the Test Execution Settings section you may specify following settings e Target Reset before each Testcase Resetting the target system before executing each test case is the default behavior
138. bjects set memory Create stub for current testobject amp Local Functions Create advanced stub for current testobject TIE will create a stub for function add_value for the current test object AddToMemory This stub will work independently of the global module setting A red tick marked with L ocal will indicate that a stub has been created only for the current test object Testing of Embedded Software Tessy 2 9 Test Preparation e 169 The Test Interface Editor TIE F tiE 32 _Stubs addToMemory Fie Search Options Help Bal 20121 Postoneroy amp External Functions ladd_ values 9 get_memory set memory amp Local Functions e Change current settings for the current test object Example AddToMemory There are two options available You may return to the global setting of the function Use global stub setting or you want to create no stub for the current test object Don t create Stub for current testobject The last case leaves the global setting of the function untouched In the latter case TIE will remove the stub for the current function and will indicate that by clearing the red tick F TIE 32 _Stubs AddToMemory Fie Search Options Help PERANTE amp External Functions Use global stub setting get memo Don t create stub for current testobjects Create advanced stub For current testobject set_memory amp
139. bjects target values e Choose Clear Testdata from the Edit menu Testing of Embedded Software Tessy 2 9 Enter Test Data e 227 The Test Data Editor TDE aig Simple Dynamic_IN_2int 1 1 5 x File Edit Search Tools Options Help Description Da Cut Testdata Alt x Copy Testdata Alt C Spec Paste Testdata AIEE Cust Delete Testdata Init Testdata Actual gt Expected 2 New Teststep Alt Ins Delete Teststep Alt Del Generate Teststeps B Dynamics long Target long Target2 z TDE Clear Testdata E g Clear testdata for this teststep r 1 and keep dynamic objects LastValue NextValue 4 Parameter R Return B Dynamics If you click OK only the test data has been removed but dynamic objects will be kept G TDE Simple Dynamic_IN_2int 1 1 File Edit Search Tools Options Help Bal Si 22a ule al T af al Specification Customer Testcase Description nn Parameter long Dynintl Target Target2 o long Dynint2 eB Dynamics o long Target long Target2 228 e Enter Test Data Testing of Embedded Software Tessy 2 9 long FirstValue long LastValue long NextValue a Parameter rust Return B Dynamics The Test Data Editor TDE Specify Execution of Test Steps Tessy provides the feature to execute test steps repeatedl
140. ble to open the modules Hint If you want to move the whole database directory to another location please refer to applications notes Test Database Setup from the Help Documents menu Files from the Module Folder There are two possibilities to store Tessy files for version control e You may create backup files for all modules stored within a project database refer to Test Database Backup into the backup directory of the project database These files may then be stored into the version control system This is the recommended way to apply version control to Tessy files You may save restore modules easily to from the backup directory using the context menu commands or using File Database Backup Save or File Database Backup Restore You may alternatively create individual module backup files by using Module Save for each module and store these tmb files within the version control system You may use Module Restore to import the module back in a Tessy project folder s Save or Restore a Module The tmb file is simply a zipped tar archive which contains all necessary files of one module Testing of Embedded Software Tessy 2 9 Technical Information e 373 Version Control The module folder itself contains temporary files and directories and only one relevant subdirectory database database is the only folder which contains valuable information The content of this folder will be stored into the module back
141. bled see below To start the test run do the following 260 e Running a Test Testing of Embedded Software Tessy 2 9 Setting Test Options ref e Either click on Execute Test in the toolbar or select Execute Test from the context menu of the respective test object The Execute Test dialog will appear to allow various options to be set Execute Test x pa V Generate Driver M Run J Testcases separately Cancel m Instrumentation None Debugger J Define Breakpoint Generating the Test Driver Tessy automatically indicates which steps are necessary in order to be able to run a test by ticking the appropriate check boxes within the Action panel During the test run process Tessy will perform the steps as follows e Generate the test driver based on the interface information and user code compile and link with the test object to produce an executable file e Run the test Note Check Generate Driver to force a rebuild of the test driver in case of changes of the test environment that Tessy may not yet have been detected i e changes to header files Once the test driver has been built and compiled it can be run as often as required You may select a subset of your test cases and run the test again by just selecting the Run option Changes to test data and expected results may require building a new test driver resulting in Generate Driver to be checked automatically by Tessy T
142. case and test object icons will change their appearance during the process of test preparation and whenever a test run is completed Tessy distinguishes 12 test case states and two kinds of test case symbols Test cases that are created by Tessy and test cases that are imported from CTE see pictures below Test cases created coos foe co m of of oe F by Tess y y 123 4 5 6 7 8 9 1011 12 Test cases imported from CTE 123 4 5 6 7 8 9 10 11 12 Furthermore the test object icon will also change its appearance depending on the test case state or test result e g the green test object icon is used as an indication that all tests have passed successfully The following four states are possible see picture below Test Object states p D D P 23 4 Important note If the test object interface has still unresolved interface objects Tessy will not open the test object clamp P to indicate that You will not be able to insert test cases In that case please open the test interface editor TIE to update the status The table below lists all possible test case states and their meanings Test case Description Test object status status 268 e Running a Test Testing of Embedded Software Tessy 2 9 Execute Test Run 4 L _ Test case inserted but not initialized TDE 1 D Test case inserted but not initialized TDE Eval 2 Macros inserted and or Function Call Trace used UCE 3 8 Test cas
143. ce structure 326 e Regression Testing Testing of Embedded Software Tessy 2 9 Diff Viewer Traceability of Test Changes Diff Viewer Tessy provides a so called Diff Viewer tool which allows to visualize the differences between two versions of the same module test i e before and after a reuse operation Test versions are stored within XML files and snapshots may be taken on user demand as well as automatically i e before each reuse operation The tool may also visualize the differences between two XML report files enabling later analysis of changes between the tests of two software versions The tool shows the differences in input and expected values as well as within usercode i e prolog and epilog sections Automated Collecting of Test Results By default Tessy records automatically the test result of each test execution of a test object Every test result will be stored in the history folder of the module in a separate xml file You may disable or enable this feature by using Create History Files from the Options Test Execution menu Testing of Embedded Software Tessy 2 9 Traceability of Test Changes e 327 Diff Viewer Aes File Tools Options Project Module Testobject View Window Help wej ee gt i am Test Execution Run Test with current Options Compare Test Results To compare test results please choose History Compare menu from the test object context _Sa
144. cified s Assign a Project Root TEE will then start either with a specific custom configuration file s Create a New Custom Configuration File or with a default configuration provided by TEE automatically You may also start TEE from the Windows Start menu Programs Tessy 2 9 Tessy Environment Editor The Environment Editor will then start with a default configuration TEE Expert Mode TEE provides a so called Expert Mode which displays all attributes settings in the right hand pane 126 Tessy Environment Editor TEE Testing of Embedded Software Tessy 2 9 Starting the TEE 4 Tessy Environment Editor File Edit Options Help Ei G Compiler auae ced Targets sg Environments Re Configurations E System auec G GNU GCC C E TASKING xC166 E E TASKING Crossview g Defaut Ge Network allusers User Administrator Hide Disabled z Attributes ab la Compiler Call Compiler Install Path bin cc166 USEROPTIONS DTESS ab la Compiler Commandline a Compiler Defines Compiler Id amp J Compiler Includes QO a Compiler Install Path ProgramFiles Tasking C166 ab la Compiler Version ab a Defines Exclude List TESSY a Init Code E Init Definitions ab R Linker Options ab Make Call Make Command win32 TESSY_MAKE_SILENT F ab a Make Command make 3 80 exe
145. comes now without Cygwin since no Cygwin installation is needed anymore because Cygwin has been replaced with MinGW and MSYS for further informations please refer to http www mingw org Highlights Here are some highlights of what is new in Tessy 2 9 and what we have enhanced in this version since Tessy 2 6 has been released e Component Test Feature e Database Format e Importing Test Data Using a Command Line e Test Database Backup Feature Licensing 8 e Preface Testing of Embedded Software Tessy 2 9 New Features in Version 2 9 License keys for Tessy 2 6 or less cannot be used with this version If your company has a valid maintenance contract for Tessy the person who is responsible for Tessy receives an updated license file automatically s License for Purchaser You may also request a time limited demo license for Tessy s Time Limited Demo License Important Note The new formats of the databases used by Tessy are not compatible with earlier versions Tessy will prompt you to convert a project database to the new format in case you want to open an existing project database with an older format After this conversion it s no longer possible to open the new database using an earlier version of Tessy The converter of Tessy 2 9 works only for project databases which have been created with Tessy 2 6 Please refer to Using Projects from earlier Versions than Tessy 2 9 Component Test Feature
146. ct it might be possible that the other test objects use external references e g variables and function calls which however are not used by the current test object All variables and functions referenced in the source file but not used by the current test object will be displayed in section Declarations Unused E B Declarations Unused Bigs HE xternal Functions is_value_in_range 4 External Variables int error_flag If these references cannot be resolved by libraries or object files added to the linker options you have to define them by TIE in order to build up the test driver successfully e To define unused declarations do the following Open section Declaration Unused and select either section External Variables or External Functions The steps you have to perform are nearly the same as described in Create Stub Function on page 167 and Define or Declare External Variables on page 175 You may define unused functions or variables or not define them Search for Variables If the interface of your test object is more complicated you may use the Search dialog of TIE e Either choose Search Identifier from the Edit menu or use Ctr1 F The Search Identifier dialog will open x Identifier Cox a array J Case Sensitive Cancel J Match whole Name Testing of Embedded Software Tessy 2 9 Test Preparation e 177 The Test Interface Editor TIE e Enter your search term and choose fo
147. d e oj x Third Party Software Installation Folders Select folders where required software packages are installed Change Python folder Installaware lt Back next gt Cancel e Click on Next to continue Select Testarea e Tessy needs a dedicated directory to store temporary files during executing a test In the next dialog please choose a path without blanks or accept the default C tessy Setup will then create several subdirectories like C tessy testarea Note Please choose another path if the user owns only limited rights on this disk drive Testing of Embedded Software Tessy 2 9 Installation e 25 Installing Tessy Vitessy InstallAware Wizard BI x Tessy Testarea Folder Select folder where Tessy will create temporary files Folder for temporary files C i Change Ciitessy InstallAware lt Back next gt Cancel Caution Don t copy or store any files to TESSY_TESTAREA testarea by default C tessy testarea The whole content of this folder will be deleted by Tessy before test execution e Click on Next to continue Select Program Folder e In this dialog you specify the Folder within the Windows Start Menu where all Tessy shortcuts should be created We suggest accepting the default folder Tessy 2 9 26 e Installation Testing of Embedded Software Tessy 2 9 Installing Tessy Pitessy InstallAware Wizard Select Program Folder Select the
148. dccsssacesete cise casceacusssvcscess code sessed CenysdesStucasde ots taxes c ulte cies 179 Systematic Test Definition cccecceesceesceseceseeeeeeeceseceseceeeseeeaeeeeeeneeereees 180 pen the CTR seen at ee P tia eek ladon AE eaees 180 Assign Variables ccccsccesseesceeseessceescesecescesecesecaecsaecnaecaaeeeeeeneeeaeenseereess 181 Assign Values to Variables ccccceescesceecceseceseeeeceseceseceecaeesaeeeseeeneeseeeas 183 Export Test Items to Tessy eccceecsessseceseceenseceeeecsaeceencecaeeeeneecsaeeseneeseas 184 Synchronize CTE and Tessy ccccccesccssecseesseeeeeeceseeeseeeeeeeseeeeeneeeeeenseeesees 186 Representation of Test Results ccccccecssescseseeeseceeeeeeeeesceeeeseeeeeesseenseeses 187 Insert Test Cases Manually ccccecscessseeseessceseeeseeeseeeensecenecaeeneeeeeeeaeeenes 187 Delete Test Cases teenie tees A OBA St Lead dds od 189 vi e Contents Testing of Embedded Software Tessy 2 9 Contents Delete Test Steps sccicecsccisccsciesseeievcscegechessinentenegie ie ER E E 190 Enter Test Case Description and Specification c cccesceeseeteesseeneeeees 190 US6rcOde x cescessilive nri iine AE E AEE E EEn 191 Starting the Usercode Editor UCE s sssssssssessssseesessessesesrrsessersesseeressesees 193 Using the UCE sonnin iere iat R E A E EAE 194 Enter C Cod t ri E E EAR R E A E E 195 Enter Script Commands c cccccsssssssesssesscensessesssessseseessesseesensesnsceneenss
149. ded Software Tessy 2 9 Edit Test Cases e 199 Usercode Example Flusercode Editor Statics communication_handler File Edit Tools aHa 2AA amp 8 stub Functions signed short pack_xxx_datalj ack_x E pai yyy_get_raw_deta E DeclarationsDefinitions E Testobject a 1 B14 TE Call Trace a2 D 24 TE Call Trace itch TS_CURREHT TESTCASE case 2 switch TS_ CURRENT TESTSTEP case l return 0 case 2 return 1 default return 0 The above implementation of the stub function returns different values depending on the currently executed test case and test step For more information about the usage of Usercode please refer to the application notes Using Usercode from the Help Documents menu Assigning the Test Object Return Value In case you want to calculate something based on the return value of your test object there is a predefined variable TS_ TESTOBJECT_RETURN available This variable holds the return value of the last test object call only if the test object has a return value at all You may use this variable within the test step epilog as shown below Example Fjusercode Editor RepeatCount calc_throttle_position File Edit Tools la xl Bee 2A Declarations Definitions HQ Testobject a1 a 11 Pum B12 a 2 a s 24 Epilog 4B 22 200 e Edit Test Cases Testobject Prolog Epilog Testcase Prolog Epilog Teststep Prolog E
150. deleted in this case Test Cases Can t be Inserted Problem The Insert command from the context menu of the test case list is not available on the right side of the Tessy main window Normally Tessy tries to analyze all interface objects while opening the module If an unresolved interface object has been found Tessy will not open the test object clamp to indicate that In that case you cannot create a test case Solution In order to create a new test case the interface data of the test object has to be checked or reviewed first within TIE Please open the TIE and check all unresolved interface objects To open the TIE click the right mouse button on the desired test object and choose Edit Interface from the context menu Testing of Embedded Software Tessy 2 9 Troubleshooting 369 Application Notes of Tessy Can t Choose a Certain Compiler or Debugger Problem The desired compiler or debugger emulator is not available in the list within the module properties dialog Solution You need to open the so called Tessy Environment Editor to enable your target environment Application Notes of Tessy All available application notes have been copied to the documentation folder of Tessy where the tool has been installed For your convenient you may open these documents directly from the Help Documents menu of Tessy Help About Tessy Help Topics Tutorial Samples Support Compier Customization gt
151. developed for the efficient application of this method It is a syntax controlled graphical tool that supports test case determination with the Classification Tree Method The CTE supports you during both phases i e during the classification tree design and when defining test cases in the combination table The editor offers two work areas for these tasks where the tree and the table can be edited interactively Testing of Embedded Software Tessy 2 9 Preface e 3 About Tessy 5 x File Edit Search View Options Window Help aj xj olee ale sedea aae aa ale 2 TOM EmpeEdaed SYSLEMTS P1 outside Plinside F rectangle rectangle 1 complete cower begin gt P1 cov a1 G2 3 Qa Qs Qe Q7 Os A4 1000x700 Modified Automated Regression Testing Defining a systematic test is very time consuming and thus only justifiable if test cases and test data can be reused for a new test In order to appropriately react to changes of the interface of a function the test system needs to know the structure of the interface Only by knowing the structure of the old interface is it possible to test whether the interface of a function has changed in a new version of the software Tessy examines the source files and determines the functions and their interfaces by analyzing the program codes This information is stored in a special database and can be retrieved any time This informati
152. difference in the display of the variables In the last case of static local variables the name of the variable will be the function name followed by double colons and the variable name in order to distinguish identically named local variables within different functions Example pack xxx data data Global Variables EH gt communication_handler status nnu DATA CTRL irelevant gt DATA REG irelevant gt EH gt message_buffer irelevant x pack_xxx_data data irelevant x irelevant gt If there are nested static local variable definitions within the same function the names will be enumerated automatically 160 e Test Preparation Testing of Embedded Software Tessy 2 9 The Test Interface Editor TIE Set Passing Directions The passing direction reflects the kind of usage for each variable while testing the test object You can specify how Tessy treats a value for an interface variable either to provide the value before test execution In or to keep the value for evaluation and reporting after test execution Out You have to specify the following passing directions for each interface element if you want to provide a value for that interface element because the element is only read by the test object In evaluate and report the results of that interface element because the element is only written by the test object Out both provide a value and evaluate the result because the i
153. directory Please keep in mind that at least one function in the source file s must not be declared as static even if you check the Enable Static Functions option within the module properties Errors While Generating the Test Driver Problem Some error messages show up during test driver compilation and linking 368 e Troubleshooting Testing of Embedded Software Tessy 2 9 FAQ Solution These problems are either caused by errors in the source files or within the usercode erroneous TIE settings or erroneous linker options e Check the messages in the message window and correct your source files if necessary e Please notice The error messages of your compiler will be printed into the Tessy message window In case of syntactical errors or linker errors please refer to the manuals of your compiler e Check your inputs to the usercode and the stub functions e Please check the settings of stub functions and external variables within TIE Probably you need to define the missing external variables or stub functions Module Interface has Changed Problem A dialog with the message Module Interface has changed appears while opening a module Solution Tessy has detected that the interface of the test object has changed You can either click Reuse in order to start the Interface Data Assigner IDA for reusing your test data If you want to delete all test data and restart from scratch click New All test data will be
154. dit Tools B OBs d 8 a amp Stub Functions Tastaten Pralna J Frilnes Teststep Call Trace add_values Testobject Prolog Epilog Testcase Prolog Epilog amp Declarations Definitions a B41 314 312 a 2 24 Ba 3 31 5 4 Bas Initially there are only the following structure elements available in the UCE tree e Declarations Definitions holds the declarations and definitions of helper variables that you may want to use within prolog epilog code or stub function implementation If selected two tabs Declarations and Definitions will appear on the right side window for editing e Testobject holds the prolog and epilog for the test object and all test case nodes as children e Nodes for each test case and test step If the test object calls at least one function that should be stubbed there will be a Stub Functions section containing one node for each stub function Depending on your settings within TIE this list contains all called functions that you have specified to be defined as stub functions When you select a tree node on the left side the corresponding editor pane will be shown on the right hand side As soon as you enter any text a new node will automatically appear at the corresponding place in the tree If you later want to change the Usercode simply 194 e Edit Test Cases Testing of Embedded Software Tessy 2 9 Usercode select the respective entry and the appropriat
155. diting within the User Code view of the SCE as shown below CY Scenario Project 23 Component Functions 2 External Function Calls Variables F lt Declarations ESS init Ed Definitions 5 set_numbertlong value lt amp Stub Functions EP handler E2 crossed_25 EB crossed_50 lt B crossed_75 B A Scenarios Z User Code 3 CY Description Specification X 1 Initialization 2 Normal Operation 23 A 4 Check some global variable TESSY_EVAL_332 check xyz xyz 42 void crossed_25 void TESSY_EVAL_US TESSY_EVAL_58 TESSY_EVAL_U16 TESSY_EVAL_S16 TESSY_EVAL_U32 TESSY_EVAL_S32 TESSY_EVAL_U64 TESSY_EVAL_S64 TESSY_EVAL_FLOAT TESSY_EVAL_DOUBLE F TESSY_EVAL_LONGDOUBLE You may add eval macros within the stub function code using the context menu like shown above Testing of Embedded Software Tessy 2 9 Component Test e 351 Evaluation of Scenarios Evaluation of Scenarios Any scenario has two different tasks to fulfill One task is the stimulation of the component like any external application would do it This includes normal behavior as well as abnormal behavior which should check the error handling of the component The other task is to check the reaction of the component caused by the scenario stimulation We will examine the different possibilities to check expected behavior of the component under test There are at least the following methods availab
156. e r range_start Min Z Max rl range_len 23 Cancel vi 711 r Permutation Rule C None Minimum Maximum Values r 11 m Teststeps 20 overwrite existing append to existing e Permutation Rule You may simply specify to use Minimum and Maximum values which are possible with the used data type Alternatively you may also specify a comma separated list of values e g 2 3 ora range of values by using squared brackets e g 7 11 The values must be separated by a blank You may also combine both notations as follows 2 7 11 19 22 25 e Teststeps TDE calculates the number of test steps resulting from the current settings e g 20 This allows you to avoid inflation of test steps by adjusting the settings You may append the generated test steps to existing test steps of this test case append to existing or you may create a test case consisting purely of generated test data overwrite existing 248 e Enter Test Data Testing of Embedded Software Tessy 2 9 The Test Data Editor TDE Enter Evaluation Modes The right lower window of the TDE specifies the output variables respectively the expected values and the evaluation mode e For all variables enter the values you expect to be calculated during the test execution of that test step Using the evaluation mode allows to specify how to compare the actual value calculated during the test run with your specified expected value
157. e lt Successfully changed configuration gt in the main window of the license manager 3 Click on Start Local Server in the toolbar You willsee lt Successfully started local License Server as Service gt in the main window of the license manager L il e Click on Info to query the license server status zimizi License Server Messages Help il sey ilm 54 Successfully changed configuration Successfully started local License Server as Service Razorcat License Server Version 4 0 Mon Jun 08 16 52 32 2009 on HELP PID 1068 Licensefile C Program Files Razorcat fls bin like dat State Checking out of license keys is enabled Usage statistics disabled Directory C Program Files Razorcat fls bin Logging Off Product CTE Version 2 4 Valid Product expires never Users O out of 1 Features 02 Product TESSY Version 2 9 Product expires never E Testing of Embedded Software Tessy 2 9 Installation e 43 Registration Note If the local license server was started you may quit the license manager Using Floating License Manager The Floating License Manager is used to control and to configure the Floating License Server You can start the FLM from the Windows Start menu Programs Tessy 2 9 default Normally there is no need to use the FLM because the configuration of a local license server takes place during
158. e long 0 The same applies for the return value of a call to a component function You may either provide a value for scalar return value types or you need to specify the symbolic name of a variable which the return value shall be assigned to in this case the variable provided should be of the same type like the return value type In the example below the return value is assigned to a variable called ret_value Testing of Embedded Software Tessy 2 9 Component Test e 353 Evaluation of Scenarios i Properties TS Actual Call Trace zop Function Set_number Parameter Name Type Yalue value long 80 This variable may be checked later within a user code fragment like shown below 2 Component Functions External Function Calls E Variables aP E C3 initialization C3 Normal Operation 3 gt ep Binto gt iF QI 53 set_number long value D Init Phandler 0 40 ms 5j 50 ms l m gt 23 set_number value 80 Bl MCheck ret value Z4 User Code C3 Description Specification E C Code Fragment 59 60ms lt crossed_50 60 60 ms V Check ret_value LB crossed_75 60 60 ms TESSY_EVAL_532 ret_value ret_value 0 IE End of Scenario 60 ms E Properties _ 5 Actual Call Trace Seale Properties are not available Please note You need to either declare define a v
159. e Ctrl I Delete Values Initialize Values Enter String Assign value to all Testcases e You may also use Show Elements to display a range of elements or one of the array elements e Globals a Parameter o I 21x char array C Show Array Elements k ZB Dynamics Di ont a imension Abbruch Enter Strings Special forms of arrays are char arrays You may enter a string instead of a value for each element separately This will also work for signed and unsigned char arrays To enter a string do the following e Select the name ofa char array and choose Enter string from the context menu The following dialog will open 240 e Enter Test Data Testing of Embedded Software Tessy 2 9 The Test Data Editor TDE Globals E a Parameter E char areyl25 Show all Elements char atray 0 Show defined Elements Show Elements B Dynamics Gut Yalue TDE32 x Ge ue E Value Enter a String Ignore Value Jabe Cancel Delete Values Initialize Values Enter String Assign value to all Testcases e Fnter a string and click OK Note The number of characters of the string is calculated by number of array elements 1 because of the final 0 The TDE will enter all characters into the input fields of the array elements Pointers The values of pointers i e target addresses can only be entered directly for pointer to functions and void pointer In this case
160. e Database Project Root Configuration File n Default 1 C Projects razorcat tessy Sample pdb 2 C tessy samples 2_4_9 sample pdb Exit E StaticLocals 86 e Test Organization Testing of Embedded Software Tessy 2 9 Databases e Select an appropriate configuration file and click OK Select Configuration File 21x Look in E config He 4KB XML Document History 4KB XML Document 74 Z configuration_project_3 xml 4KB XML Document K2 configuration _project_4 xml 4KB XML Document Desktop oN My Documents My omputer 4 aS File name Jconfiguration_project_1 xml My Network P Files of type Tessy Configuration Files z Cancel Tessy stores the path to the assigned configuration file for each database in the Registry of Windows The used configuration will be shown in the status bar of Tessy Fitessy ioi x File Tools Options Project Module Testobject View Window Help Haj a rojects razorcat tessy Sample pdb Property Value Directory C Projects razorcat tessy sample_Sample Comment StubFunctions Aliasnames SFR_Handling Usercode E OriginalBinaryTest StaticLocals A A A P E V Messages Welcome to Tessy Project Root C Projects razoreat Configuration PROJECTROOT config configuration_project_1 xml Note If you open this database on another PC once more Tessy will
161. e Tessy 2 9 Batch Test File Tools Options Project Module Testobject ssy Sample pdb Aliasnames ASAP B E Test Objects Options Test Report l Evecute Eesi Sarpe ASAP StubFunctions Open E Aliasnames 4 SFR_Handling Usercode Saveds ResultPlots OriginalBinaryT est StaticLocals C H B FA J7 Select all IV Create Logfile Test Objects Tab The Test Objects Tab displays the complete project tree as shown in Tessy You may browse through the tree and choose an item as follows e Select a project a module or a test object and choose Select Entire Project from the context menu respectively Select Entire Module or Select Test Object Alternatively press Space to select an item Tessy will mark all selected items by a red tick Testing of Embedded Software Tessy 2 9 Running a Test e 271 Batch Test x Test Objects Options Test Report Execute y IsValuelnRange s_value_in_range Open Ga ASAP f Select restobiec_y StubFunctions Aliasnames Saveds 4 SFR_Handling Gy Usercode a a gt AbsolutePointerAddresses 2 init_memory H E RepeatCount H CallT race E ResultPlots OriginalBinaryTest z J Select all Eaei amp y _Sample cea ea Save H H F I Create Logfile Options Tab The Options Tab i
162. e code fragment will be displayed in the right hand window Enter C Code e To edit the prolog or epilog of a test object select the tab Testobject Prolog Epilog and enter the code into the window e Ifyou want to edit the prolog epilog for a test case test step select a test case or test step from the tree and enter the code into the right hand window A new node will automatically appear at the corresponding place in the tree Fjusercode Editor EvalMacroInEpilog xordatabuffer a ol x File Edit Tools Uaes DAB A Declarations Mefinitions Testobject Prolog JEpilog Testcase Prolog Epilog Teststep Prolog Epilog Declarations Teststep ji zj Repeat Count J 1 Definitions a ED Testobject data 0 0x1122 oa data l1 0x3344 data 2 Ox5566 data 3 0x7788 e For stub functions select a function from the tree under Stub Functions e For declarations or definitions select Declarations Definitions from the tree You may add helper variables or definitions of external variables from the test object interface Note Please enter the definition of global variables under Definitions and not under Declarations because the code under Declarations will later be added to a generated header file and will be included in multiple source files of the generated test driver If you have already entered Usercode on a tab you will automatically arrive at the respective tab by selecting a tree node on the le
163. e inserted and partially initialized TDE 1 D Test case inserted and partially initialized TDE 4 Eval Macros inserted and or Function Call Trace used UCE s Test case inserted and initialized TDE 2 Test case inserted and initialized TDE Eval Macros inserted and or Function Call Trace used 2 UCE Test is successfully executed TDE Expected values specified in TDE are matching with the actual 3 result values Test is successfully executed Expected values specified in TDE are matching with the actual result values Eval Macro results are as expected and or 3 Function Call Trace are matching with expected values UCE Test is not successfully executed Expected values specified in TDE are matching with the actual result values but Eval Macros and or Function Call Trace 4 are not matching with expected values UCE Test is not successfully executed TDE Expected values specified in TDE are not matching with the 4 actual result values Test is not successfully executed Expected values specified in TDE does not coincide with the actual values but results with Eval Macros and or Function 4 Call Trace does agree with expected values UCE T Test is not successfully executed Expected values P 12 specified in TDE are not matching with the actual 4 Testing of Embedded Software Tessy 2 9 Running a Test e 269 Batch Test result values Also Eval Macros and or Function C
164. e left pane displays all interface elements of your test object You can view them and browse down to the basic data types see Browse the Interface e The right pane displays the respective combo boxes or edit fields to enter the passing directions of variables as well as additional information see Set Passing Directions Browse the Interface TIE classifies all recognized interface elements of the test object into eight sections as follows External Functions Only declared in the source file and called from the test object Local Functions Functions defined in the source file and called from the test object 158 e Test Preparation Testing of Embedded Software Tessy 2 9 The Test Interface Editor TIE 4 External Variables Variables only declared in the source or header files and referenced by the test object Global Variables Variables defined in the source file and referenced by the test object This section also contains global static variables and static local variables defined within functions h Parameter Parameters of the test object R Return Return value of the test object i Enums Enums which are used by the test object Declarations Unused External functions or variables that are declared and used in the source file but not by the test object itself Each section node contains their respective interface elements if any You can
165. e not executed Setup will uninstall the previous version of Tessy 2 9 before installing the new version The target environment configuration of an installed earlier version of Tessy is taken over by the installation of Tessy 2 9 automatically If you have changed default files in earlier versions of Tessy e g make templates linker files etc you have to carry out these changes in Version 2 9 manually Tessy provides the so called Tessy Environment Editor TEE to configure supported target environments and compilers s TEE Setup will always recommend the base directory of the first installed version of Tessy e g C Program Files Razorcat We recommend choosing the given base directory This will avoid unexpected results using the Modify or Repair option of Setup if necessary Testing of Embedded Software Tessy 2 9 Installation e 29 Installing Tessy Important Note The new formats of the databases used by Tessy v2 9 are not compatible with earlier versions Tessy will prompt you to convert a project database to the new format in case you want to open an existing project database with an older format After this conversion it s no longer possible to open the new database using an earlier version of Tessy The converter of Tessy 2 9 works only for project databases which have been created with Tessy 2 6 Please refer to Using Projects from earlier Versions than Tessy 2 9 Update a Previous Installed Version of Tess
166. e red marked field to get a tool tip with the differences Testing of Embedded Software Tessy 2 9 Traceability of Test Changes e 329 Diff Viewer P pift viewer File Edit Help 151 xi e Lt 4 ee Sample Bh tes esc e Ce Properties py Proana GG s GH 9 ES 10 ree wrote GS sample plModule Comment _ 20060719_101715 20060719_101715 5 88 IsValueInRange r Environment GNU GCC GNU GYD GNU GCC GNU GYD Ea Es _value_in_range okKind of Test Unit Test Unit Test Bm p Linker Options BDE 2 e Source Files File ee le iseris_val ile PROJECTROOT scr is_val_in_range c n ompiler Options D__AB_C_PROJECT__ A me double click to compare a 7 eference Test Results 9 5 2006 9 26 41 AM Comparison Test Results 9 21 2006 9 44 40 You may also double click the field to get another window that shows you the differences Fio lo x File Edt Help ae 4 t a Dee e B Properties my Proe Ena B e Sample i GS _Sample Module Comment 20060719_101715 20060719_101715 Ba IsValuetnRange Environment GNU GCC GNU GYD GNU GCC GNU GYD o 2D RANEA okni of Test Unit Test Unit Test BDE PlLinker Options BDE 2 e Source Files File SPRODECTROOT N esas r double click P Diff viewer Sample _Sample Is alueInRange is_
167. e steps with scenario actions Adding Deleting Scenarios New scenarios may be added and deleted within the Tessy main window only Either by using the CTE and exporting test scenarios to Tessy or by inserting new test scenarios using Add Scenario from the context menu Testing of Embedded Software Tessy 2 9 Component Test e 343 Editing Scenarios within SCE 4 Database D tessy samples 2_9_8 Sample pdb Usercade Name Description Specificatio ResultPlots g 1 1 Initializ operation StaticLocals 9 2 1 Normal operation c operation l Add Scenario INS operation ComponentTest DecrementHandler Scenarios Copy Scenario CTRL C The SCE displays the same list of scenarios within its scenario project view and only the content of each scenario may be edited within SCE Setting the Work Task The time based scenario description within SCE is based on time steps that represent the cyclic calls to a special handler function of the component Such a handler function controls the behavior of a time sliced component implementation The handler function needs to be selected as work task prior to executing any scenarios 3 Component Functions 2 External Function Calls Variables om C3 Initialization iS init Set as Work Task o INIT SY Oms Gg set 5 set_number long value You may select one or more of the Component Functions and use the Set as Work Tas
168. e the synthetic advanced stub variables within your test Testing of Embedded Software Tessy 2 9 Regression Testing 319 Performing Regression Testing object s new interface Testobjects Called Functions Interface New Called Functions Old Called Functions add_values A add_values A getmemory XM SetMemory A AddNumbers get_memory AddNumbers Note Please refer to the application notes Using Stub Functions from the Help Documents menu for details about advanced stub usage Assigning Interfaces The Interface Tab displays the interface of the test object just it would appear in the TIE All new interface elements are shown in the left pane of the window IDA will mark each interface element by a red cross to indicate that no automatic assignment took place Old interface elements which has been already assigned will appear in gray 320 e Regression Testing Testing of Embedded Software Tessy 2 9 Performing Regression Testing EE lolx File Assign Search Options Help gl 2424 jo JAddComplexToMemory z Testobjects Called Functions Interface already New Interface test Old Interface assigned object Globals 2 gt struct complex init_retumed_by_Getivremery gt Esg struct complex value__passed_to_SetNewMemory Ey struct complex value__passed_to_SetMemory amp float r
169. e with this project database Open an Existing File e Ifyou want to check or change an existing configuration file please choose File Configuration File Open TEE will open the Open Configuration File dialog Open Configuration File 2 x Look in i contig gt cf EE configuration_project_1 xml confiquration_project_2 xml confiquration_project_3 xml confiquration_project_4 xml gs History a Desktop File name configuration_project_1 xml led My Network P Files of type far Files x Cancel You may start TEE from within Tessy by using the Options Edit Environment menu if you have already assigned a custom configuration file to your project database TEE will automatically start this file This also ensures that TEE uses the so called PROJECTROOT from the project database if specified s Assign a Project Root e Save your changes by using File Save Adding Editing Attributes The right hand Attributes pane of TEE displays all attributes of a configuration as soon as an item was selected in the left pane 146 Tessy Environment Editor TEE Testing of Embedded Software Tessy 2 9 Adding Editing Attributes 4 ss Tessy Environment Editor File Edit Options Help a EJ xan Hide Disabled x ih General G Compiler G cosmic HCS12 B anu acc G anu acc C raskine xc166 a B Targets GNU GVD LAUTERBACH TRACE32 TASKING Crossview g Environments
170. e within the TDE e You can use these functions either through the context menu of the interface element through the Edit menu or by using shortcuts Alt x gt will cut test data of the whole test step Alt c gt will copy test data of the whole test step Alt v gt will paste the copied test data Note Copying and pasting test data is only possible with type compatible interface elements arrays of the same type and size and so on e If you want to insert a value e g for a variable directly from the clipboard or if you want to copy a value e g from a variable into the clipboard you can use the following shortcuts Ctrl v gt will insert test data from the clipboard Ctr1l e gt will copy test data into the clipboard Search for Variables If the interface of your test object is more complicated you may use the Search dialog of TDE e Select Search Identifier from the Edit menu or use Ctr1 F The Search Identifier dialog will open TDE32 Search Identifier x Identifier OK I Case Sensitive Cancel I Match whole Name e Enter your search term and choose following options if necessary Testing of Embedded Software Tessy 2 9 Enter Test Data e 257 The Test Data Editor TDE Case Sensitive Match whole name e Click OK If you want to search for the same term again press F3 Exit the TDE Before you can close the TDE you have to save your settings e
171. ease refer to Section Insert Test Cases Manually Testing of Embedded Software Tessy 2 9 Edit Test Cases e 179 Systematic Test Definition Systematic Test Definition The systematic test definition takes place with the help of the Classification Tree Method by using the Classification Tree Editor CTE The interface between Tessy and CTE has been extended to provide a list of input and output variables to CTE that may be assigned to elements classifications and classes of the classification tree This allows to assign values for variables of the test object interface within the tree If such a tree element is selected for a test case within the combination table the respective value will be used for export to Tessy Important note You must start CTE from within Tessy if you want to use this feature s Open the CTE Open the CTE Note From the naming convention used within CTE we define the more common term test item to name test cases test steps and test sequences To open the CTE do the following ek e Select the test object and choose Define Testcases from the context menu or click the respective icon from the toolbar _Sample Is alueInRange is_value_in_range IsLineCovered Import Export ASAP StubFunctions Aliasnames SFR_Handling Edit U Usercode setts OriginalBinaryTest Test Report StaticLocals montering History gt H Edit Interface Edit Ti re E E E Ed
172. ecific configuration file for a given project database s Creating Configuration Files This configuration file then contains all settings different to the 374 e Technical Information Testing of Embedded Software Tessy 2 9 Files in the Module Directory default Tessy settings and by storing this file into the version control system you may keep all necessary Tessy adaptations together with your project Tessy will propose a config folder within the S PROJECTROOT by default if you create a new project database Files in the Module Directory The module directory contains all files necessary for the test run Beside the files containing user data within the database subdirectory refer to Version Control above there are a lot of temporary generated files Some of them may be of interest when searching for causes of errors or when doing adaptations of the Tessy configuration Makefile For each test object Tessy creates a separate makefile for compilation and linking of the test driver files ts_ lt testobject name gt mak This makefile is based on a makefile template which has been specified in the Environment Editor with the so called Makefile Template attribute If you need to adapt the makefile for your specific test environment you need to do the changes in the corresponding makefile template refer to Makefile Templates below Some compilers require additional files e g a specific linker command f
173. ecisions and branches are already marked in red but the search function may assist in finding all uncovered decisions or unreached branches Testing of Embedded Software Tessy 2 9 Monitoring of C1 and C2 e 303 Flow Chart View Pi tessy Coverane viewer File Next Uncovered Decision e lt Desy Jefls He e is_value_in_range S al a MCC Coverage MC DC Coverage T C1 Coverage Z Total Coverage 75 00 Testcase Teststep Ra ia E 2 is_val_in_range c MCC Report MC DC Report C1 Report sl This is a very basic program to demonstrate the integration a of Tessy and HiTOP the debugger from Hitex ic Hitex Systementwicklung GmbH 2001 wuw hitex de fi Revision 2 struct range int range start int range_len M En 2 Searching for Uncovered Conditions By clicking on the Next Uncovered Decision button within the toolbar or selecting the respective item from the Chart menu the flow chart will change into the search result mode displaying the next uncovered decision found in normal mode while fading the rest of the flow chart as shown below 304 e Monitoring of C1 and C2 Testing of Embedded Software Tessy 2 9 Flow Chart View lolx File Chart Window Help let ev t O s I 3 is_value_in_range 53 D a MCC Coverage im MC DC Coverage O z Coverage 50 00 o 11 1 E C1 Coverage Te i
174. ect are needed for the test execution of the given test object The expected values are the calculated results of the tester regarding the input values for the test object after test execution Tessy will compare both expected and actual values after test execution The result will be either failed or passed Y RA Parameter RA Parameter AR Return E R Return Y enum result yes y amp enum result yes yjj z R Dynamics B Dynamics The decision to specify parameters and global variables as input values In or expected values Out has already taken place during test preparation with the TIE see The Test Interface Editor Start the TDE There are several ways to start the TDE Testing of Embedded Software Tessy 2 9 Enter Test Data e 217 The Test Data Editor TDE e Select a test case or test object and choose Edit Testdata from the context menu e Choose Edit Testdata from the Testobject menu Testobject View Window Help Edit Interface Define Testcases Edit Usercode Execute Test LS MESIH Edit Sourcefile EA e Click on the icon Edit Testdata in the toolbar e Or double click the test case for which you want to enter test data The TDE will open F TOE IsLineCovered is_line_covered_by_rectangle 1 1 10 x Fie Edit Search Tools Options Help Specification 4 Dese test case test step E nA Parameter ny Parameter Eh struct Rectangles E
175. ect information like the interface information of a module and the test data test cases of test objects will be stored by using the Java relational database management system Derby Upon creating and opening of a module Tessy generates a database folder which contains the repository of the database and related files For more information see chapters Files in the Module Directory and Version Control The Project Root Tessy provides a feature that allows you to specify a so called Project Root The Project Root specifies a root directory of your development projects so that all paths e g sources includes etc may be related to this root This may give you the possibility to transfer your development projects to another installation Every of your Tessy project databases will have their own project root Testing of Embedded Software Tessy 2 9 Test Organization e 77 Databases specified within the Registry of Windows Tessy will ask you for this root directory if you open the project database for the first time When you create a new Tessy project database e g sample pdb Tessy will store the database file in the specified project root PROJECTROOT tessy and creates in parallel a project folder with the same name by default in a folder named Tessy where the project database file pdb and the database root folder are stored s Creating a Project Database Initially this project folder of the project database w
176. ection or you may enable the desired configuration within the System section directly s below General Section Enable Compiler and Targets Example Compiler Cosmic HCS12 Target Hitex HiTOP Note Choose Show All from the Filter box to display all supported compiler and target environments Enable Compiler e In the left hand pane open the Compiler tree in the General section and select e g Cosmic HCS12 Testing of Embedded Software Tessy 2 9 Tessy Environment Editor TEE e 133 Starting the TEE e Choose Enable Compiler from the context menu or use Ctrl 1 Gl i 4 bes Tessy Environment Editor File Edit Options Help a g x e Te showa x en Compiler Attributes Ge ADS Arm Gae ARM RVDS Gx Analog Devices Blackfin Ge Cosmic Hes08 G Gx Cosmic 512X gS Copy Compiler Insert Gy Cosmic ST7 X Delete Delete Ge DiabData PPCS G Fujitsu FFMC16 Gk Fujitsu FFMC32 Restore Factory Value Ctr R List Gae GNU Arm Gy GNU Hitex Arm a G Gnu acc Gx GNU PPC I Colapse Subtree Gy Green Hils vs5 JE Expand all Ctri A Gx Green Hills x86 ab _ ObjFile Extension Rename F2 E Expand subtree This will enable your compiler TEE will remove the red cross from the icon to indicate that this compiler is enabled s Symbol Appearance G cosmic HCS12 Enable Targets e In the left hand pane open the Targets tree in the General section and select e g Hitex HiT
177. ed Values Input amp Actual Values Convert to integer values m Options J Update Passing Directions m Status Bl e Tessy will use the test object name as file name by default You may change this name directly in the upper text box or use the browse button to specify the file You may use txt or xls to assign the file format e Export Option To export test data select Export from the Actions section and choose Input amp Expected Values or Input amp Actual Values Both options are only available if a test run has been successfully executed Otherwise you may only export the input and expected values default Note Storing the actual results may be useful if you want to re import these values as expected results if the actual values are correct In this case please make sure that the actual values are REALLY what you expected Otherwise future test runs would check against wrong results e Import Option To import test data select Import from the Actions section and tick Update Passing Directions if necessary Note Check the box if you want Tessy to change the interface settings As a result the passing direction of every variable that will be assigned a value during import will be set to In Out or InOut depending on the data within the import file The passing directions of all other variables of the test object interface not contained in the import file will be reset to Irrel
178. ed there At the end of the test run both the test object icon and the test case icon should be turned to green see picture below If not the expected value didn t fit to the actual value lolx File Options Window Help Dis Zijpatabase C tessy database test pdb Project1 Module1 is_line_covered_by_rectangle lolx Testcase 1 al Teststep 1 done done Test needed 942 milliseconds Creating XML result file done Kil 1 50 33 PM Evaluate Test The last step of the tutorial is to evaluate the test run For this purpose you may create a test report or simply open the TDE Create a Report Tessy provides certain report formats s Test Report For now we want to use only HTML to view the report in a standard web browser ol Click Test Report either from the task bar or choose the context menu of the test object 72 e Quickstart Testing of Embedded Software Tessy 2 9 Tutorial The following dialog will appear x DB HTML File X Cancel m Style Screen z r Layout 4 Details Failed Testcases Only 4 Details Failed Testcases Outputs Only Details Failed Teststeps Only 4 Details Failed Teststeps Outputs Only Details Outputs Only Details Without CTE Graphics Summary Summary and Testcases Info m Output Directory C tessp T utorial T utorial sLineCovered report haa fal Please choose fol
179. emo license for Tessy directly on our Internet registration page For this purpose do the following e Start Tessy and select Register from the Help menu Within the Register dialog click on License If you start Tessy the first time the Register dialog will popup automatically or e Start the Floating License Manager from folder Tessy 2 9 within the Windows Start menu and select Request from the License menu You will see a dialog with the registration information License Key Request xj Please send the following registration information to Razorcat Development GmbH or complete our online form please make sure to start your browser before pressing the button below emai support razorcat com fax 49 30 536 357 60 We will send you a key file via email or fax Registration Information sco 5715C9785 000 07 Done e Click the Online Request button This will direct you to the Razorcat Internet registration page where you may request a time limited demo license key You will get a license key file from Razorcat by e mail You have to save this file to your local disk Please refer to section Register Tessy on page 39 or Install Local License Server on page 39 on how to install the license key If you have no access to the internet please send this Registration Information with your full contact information your company e mail address company address and telephone number by e mail
180. emporary License 2 x OK Product ISSA Valid for i Dats Cancel Hostid 5cD5715c9785 Note If you want to check out a license for a computer disconnected to the network e g for a traveling colleague whose license has expired then you need to enter the Host ID of this computer into the Hostid field 50 e Installation Testing of Embedded Software Tessy 2 9 Registration e Click on OK The following dialog will appear Save in Gy bin amp img EJ a notebook _like dat File name Save as type License Key File dat x Cancel Save the generated license file to your local disk The file name must be notebook_like dat Caution Don t cancel the dialog before saving the license key into a file You will lose the generated key Therefore FLM will also copy the license string into the main window of FLM e g Checked out License e79abb53dc19 You must then copy n paste the license key into a text file notebook_like dat manually Otherwise you will lose temporarily one license from the central server s license pool for the days you have chosen There is no way to return temporarily checked out licenses e Transfer the notebook_like dat to the computer where you want to run Tessy locally Save the license file into the bin directory of the license server normally to C Program Files Razorcat fls bin adjust the path according to your installation directory Note
181. ent target emulators debuggers or simulators Especially the emulators require some basic setup concerning memory mapping and default settings for the communication link between Tessy and the respective target system Please review our web page for the actual list of supported compilers and microcontrollers http www razorcat com Refer to the application notes for tips and hints on common problems You will find the respective application notes for every target debugger or emulator within the Help Documents Targets menu 372 e Technical Information Testing of Embedded Software Tessy 2 9 Version Control Please note The Original Binary Test using emulator scripting features is only available for selected targets Please review the application note Original Binary Test from the Help Documents menu for details on the supported target platforms Version Control If you want to version control your tests together with your source code you need to archive the relevant files from the module folder and other files which configure the test environment Please refer to Test Database Backup for information on how to create module backups These backup files together with the configuration file should be saved into your version control system Also save all files within the config sub directory When restoring files from the version control system make sure that you remove the write protection of the files Otherwise you will not be a
182. epo RIZON 29 chead User Host Date Time Generate Driver Execute Generate Report Testcases Instrumentation PDB file Logfile E Sample IsValueInRange Administrator Batch Statistics 01 19 2007 otal Testobjects Bano Successful Failed yes jot Executed yes yes all ci C tessy samples 2_4_9 sample pdb samplelog Project Tree x x FMis value in range 2 out of 10 Testcases Failed You may click the link to open the corresponding test object report within the browser refer to Test Report for details Note Use the Dropdown list from the Back to button of your browser to return to the Batch Test report 276 e Running a Test Testing of Embedded Software Tessy 2 9 Batch Test eC Test Report RAZ Statistics a otal Testcases 10 Successful 8 2 oj Project _Sample Module IsValueInRange Testobject is_value in range Failed 8 1 9 1 User Administrator g Testcase 4 Host BUR Date 01 19 2007 Time 13 41 06 C1 Coverage 100 00 9 Testcase 10 Goto Top Module Properties PDB File Ci tessy samples 2_4_9 sample pdb Directory C tessy samples 2_4 9 Sample _Sample IsvalueInRange arget Environment GNU GCC GNU GVD Default ind of Test Unit Test Source Files Compiler Options TESSY_SAMPLES_SOURCE js_wal_in_range c Revision 2 D_A_PROJECT_ Attributes MODULEPATH ts_is_walue_in_range cte
183. eport MCC Report if tt 11 B ge C 11 DIE E 1 2 Selecting Decisions You may select every decision of the program by simply clicking on the respective control flow element within the flow chart view The respective code fragment will de highlighted within the source code view Testing of Embedded Software Tessy 2 9 Monitoring of C1 and C2 e 309 MC DC Coverage View Piitessy Coverage Viewer 5 x Fie Chart Window Help X ee ola 7e g Called Functions fa o mede c B C1 Report MCC Repo a MC DC Report if A 1 B ge C 1 D E 1 The decisions are either green or red depending on the degree of coverage If no C2 coverage information is available e g when you ran the test without C2 instrumentation selected the decisions within the flow chart will appear in grey and the MC DC Coverage view will not be available N A F Tessy Coverage Viewer odi File Chart Window Help eet ols BE Called Functions 3 O is value in_range 3 Ollie El is_value_in_range NjA NjA ae 50 00 50 00 i of F is_val_in_range c C1 Report This is a very basic program to demonstrate the integration A of Tessy and HiTOP the debugger from Hitex c Hitex Systementwicklung GmbH 2001 www hitex de fi Revision 2 struct range int range_start int range_len
184. er Values in Decimal Hexadecimal or Binary Format You may provide the input or expected values in three different formats 0b00000001 binary 0x01 hexadecimal 1 decimal You may either use the context menu of the variable switching to the appropriate mode or you may simply type Ox or Ob in the input field to use hexadecimal respectively binary format s Bitcheck 236 e Enter Test Data Testing of Embedded Software Tessy 2 9 The Test Data Editor TDE cotas e mE ah Parameter a Parameter gt struct range ri E R Return Cut Value Ctrl x enum result B Dynamics Copy Value Ctrl C Dynamics Paste Yalue Ctrl y Undo Ctrl Z Ignore Value Ctrl I TTY Hexadecimal Ctrl H Assign value to all Testcases Bay Ctrl B In this way you may also convert a value in decimal binary or hexadecimal format by using the context menu or the appropriate short cuts Enter Characters For a single char variable you may also use the special Option Enter Character from the context menu e Select the variable name and choose Enter character from the context menu The following dialog will open mr l Gut value E B Dynamic Copy value DUSZA x Jaste Yalu Paste Vall Enter a character EEIN Undo Ignore Yal a Cancel e Enter a character e g A and click OK The TDE will enter the ASCII code of the character as hexadecimal value into the respective box s Enter String
185. ernatively you can select the last used database from the File menu Testing of Embedded Software Tessy 2 9 Test Organization e 83 Databases File Tools Options Project Module Testc Print gt New Database Open Database Close Database atabaseltest pdb 2 C Tessy_Testsuite Testsuite_gcc pdb is Exit Assign a Project Root The project root is an optional setting s The Project Root You may specify a root directory of your development projects All paths e g sources includes etc will be related to this root If not already specified see Creating a Project Database you may assign a Project Root for a given project database as follows e Open a project database e Choose Project Root from the File menu Pitessy File Tools Options Project Module Testobject View Window Print gt New Database Open Database Close Database Configuration File N gt 1 C Projects razorcat tessy Sample pdb 2 C tessy samples 2_4_9 sample pdb Exit H E StaticLocals 84 e Test Organization Testing of Embedded Software Tessy 2 9 Databases e Select an appropriate path and click OK Browse for Folder BE Select Project Root B Projects a J bin O config O inc O obj reports O ser B E tessy 2 backup 0249 5 sample HI Samnle Tessy stores the Project Root for each database in the Registry of Windows The current Project Root wi
186. es generate the license request exactly on the machine that will be your central license server within your network For node locked licenses generate the license request on each workstation that will have a node locked license If you are upgrading from an earlier version of Tessy or if there is a license server currently running on your network you may not need to request a license at this time unless the major release number has changed e g 2 6 gt 2 9 License s for Purchaser To request a permanent license file from Razorcat please provide Razorcat following information e MAC address of your PC where you intend to run either a local node locked license or a central License Server floating license e Invoice Order Number please see the delivery notes of your distributor e Contact information of a person who is responsible for Tessy CTE Customer Support will send licenses updates etc direct to this person Please send your request to support razorcat com You will get a license key file from the Customer Support by e mail Please refer to section Register Tessy on page 39 on how to install the license key Testing of Embedded Software Tessy 2 9 Installation e 37 Registration Hint To determine the MAC address of your PC physical address of the network adapter please open a command prompt window and use following command ipconfig all Time Limited Demo License You may request a time limited d
187. essy samples 2_9_8 Sample pdb 3 E X Gj StubFunctions A LN p dliasnames Fry 1 1 Initializ operation mode inil SFR_Handling 2 1 Normal operation made no H ea a 3 1 operation mode no i operation mode no k Usercode a t i ResultPlots StaticLocals H C ComponentTest DecrementHandler m 2 Messages Analyzing Interface for Module DecrementHandler Project Root D Stessytsamples 2_9_8 Configuration Default A In order to edit the scenario you may now start the scenario editor SCE The empty scenarios will be displayed within SCE providing the specification and description of the designed scenario test cases 340 e Component Test Testing of Embedded Software Tessy 2 9 Scenarios as Test Cases for the Component File Help C9 scenario Project Declarations E Definitions oS B Stub Functions EB crossed_25 i EB crossed_50 B crossed_75 CY Scenarios 2 1 Initialization 23 ay 25 Component 12 external F m variables Binto 23 set_number long value oF handler Mm s User Code ry Description Specifica 23 b Specification operation mode normal stimulating operations valid Description After implementing the scenarios within SCE you may switch to Tessy in order to execute the scenarios Select the desired scenario test cases and exec
188. est a A NewProject folder will appear in the project window File Tools Options Project Module Testobject View Window F Dis FjDatabase C tessy test pdb Directory Comment Note A valid name cannot contain any of the following characters blanks amp lt gt Only simple brackets dashes and underscore characters _ are permitted Comments on the Project If you have more than one projects created it may be useful to add a short description for every project This can be done as follows e Select the project folder and choose Properties from the context menu Testing of Embedded Software Tessy 2 9 Test Organization e 89 Creating a Project File Tools Options Project Module Testobject View Window t Fjpatabase C tessy Sample pdb _Sample ASAP StubFunctions Stubs Rename Aliasnames Delete Bataz H SFR_Handing Add Module INSERT Paste Module CTRL V The Project Properties dialog will open e Enter or read a short description on the project Click OK Open a Project You can only open a project if already modules have been added see Creating a Module e Click the or double click the project name The project folder will open and the modules will become visible File Tools Options Project Module Testobject View Window Pjpatabase C tessy Sample pdb Sample A
189. est drivers are based on a master slave concept Testing of Embedded Software Tessy 2 9 Running a Test e 259 Setting Test Options The Test Database will be accessed by the Test Driver Master During a test run the Master sends test data to the Test Driver Slave via its tst comm interface The implementation of this interface depends on the kind of target system used The Slave contains the Test Object and the test driver code to fill the input data and read out the actual results This code is compiled using the respective target compiler and the resulting binary will be executed on a target system This may either be a simulator debugger or emulator In case of the gec compiler delivered with Tessy the slave will run as a normal windows process The Slave executes the test object with the input data from the test database and returns the results to the Master The Master then stores these results into the test database Test Driver Master tstcomm tstcomm Test Driver Slave Master Slave Test Object A y At the end of the test run the test evaluation takes place e The actual results will be compared with the expected values according to the evaluation mode e The last step of this cycle is the generation of an XML result file This file will be used for reporting Setting Test Options Note You have to select at least one test case before running a test Otherwise the Run check box will be disa
190. esting of Embedded Software Tessy 2 9 Running a Test e 261 Setting Test Options Actions J Generate Driver MV Run I Testcases separately Running Test Cases Separately Use the option Testcases separately to specify that a separate test run is to be performed for each test case The normal behavior is that the test binary is downloaded to the target and all selected test cases and test steps are executed one after another Internal states of the test object may then influence the results of successive test cases e g you may get different results for test case 2 when either running test cases 1 and 2 or running test case 2 only The option Testcases separately avoids such problems associated with variable initialization since the test driver slave will be restarted for each test case or reloaded to the target environment This results in an initial state of memory and variables before execution of each individual test case When running a test on a target debugger or emulator with this option set the binary file is downloaded to the target device for each individual test case Because of these additional downloads the overall test execution will be slowed down r Actions IV Generate Driver MV Run IV Testcases separately Note The Testcases separately option is stored individually for each test object The initial setting of this option within the Execute dialog depends on the setting stored for the selected test object
191. eter add_values y 3 Within a test step you may check the values passed to the parameters they are Out variables for this reason and you may provide a value to be returned by the stub function therefore the return value is an In variable Testing of Embedded Software Tessy 2 9 Enter Test Data e 223 The Test Data Editor TDE In the example above the parameters x and y are checked for the values 2 and 3 and an erroneous return value 13 is provided instead of the correct calculation which would be 5 Shortcuts for Navigation Following shortcuts may be used to navigate through the TDE s also Copy and Paste Test Data Tab will step to the next variable Shift Tab will step backward to the previous variable Ctr1 Tab will jump to the input pane or output pane Ctrl Page Down will display the next test step of a test case Ctr1 Page Up will display the previous test step of a test case Test Steps You can add additional test steps to each test case Every test step contains a complete set of test data For instance the mechanism of test steps can be used to achieve an initialization of the test object before executing the test step that checks the actual test condition of the current test case Create Test Steps To insert additional test steps do the following e Either choose New Teststep from the Edit menu or use ALT Ins 224 e Enter Test Data Testing of Embedded Software Tessy 2 9 The Te
192. evant 214 e Edit Test Cases Testing of Embedded Software Tessy 2 9 Import Export e Conversion Option These settings apply only if you have specified a conversion method within the module properties dialog s chapter Module Properties General Tab Otherwise the default setting will be None Please refer to application notes Using ASAP Information from the Help Documents menu You may choose to convert the imported data into physical values if your import file contains the integer representation of the values In this case the conversion method will be used to convert all values to physical values to be stored within the test database Eltessy import owot o Filename Start gs Administratar Local Settings T emp AddT oMemory xls x s Cancel Actions _ Conversion Import None Cc x pes C Convert to physical values Input amp E C Input amp Actu Convert to integer values m Options IV Update Passing Directions m Status e Click Start to import or export test data The status bar will show you the progress of the operation Using a command line Tessy provides an interface to import test data from a command line into the test database of Tessy The tool is called tdbcmd exe and has been installed in the bin folder of your Tessy installation Usage tdbcmd exe import options lt project gt lt module gt lt testobject gt lt pdb file
193. ew the documentation of the Eclipse framework for further information on how to handle Eclipse applications in general In order to reset the outline of the CV to the default perspective use the Reset Perspective item from the Windows menu 298 e Monitoring of C1 and C2 Testing of Embedded Software Tessy 2 9 Flow Chart View The following views are available by default as shown below e from the test object e currently selected function e e highlighting selected decisions branches e coverage F Tessy Coverage viewer File Chart Window Help The Called Functions tree view containing the test object itself and the functions called The flow chart view showing the graphical representation of the control structure of the The different coverage views displaying the C1 MC DC and MCC coverage results The source code view showing the source code of the currently selected function and The report views showing the ASCII based summary reports for C1 MC DC and MCC lolx MCC Coverage ih MCjDC Coverage O e lt Pf ojs re B Caled Funct Called Functions View fo gt O is_value_in_range 53 Ta Function c1 mcyoc _mcc_ Lo Bis_value_in_range Flow Chart View El Coverage View B C1 Coverage Z Tm Total Coverage 75 00 1 2 a i 50 00 50 00 50 00 Source Code View Report View wj Ra is_val_in_r ec
194. f a project by selecting the project and choosing Project Backup Restore from the context menu e Restore a single module by selecting the module and choosing Module Backup Restore from the context menu The restore operation will show the Restore from Backup dialog listing the available modules from the backup directory i e the list of TMB archive files All available modules are selected by default If you don t want to restore all of them you may change the selection used Shift and Ctrl keys to select multiple entries within the list If there are no matching TMB archive files for restore within the backup directory the following error message will appear Tessy Restore Backup e L No module archives found to restore from In this case you would need to checkout the respective TMB archive files from your version control system and start the restore operation again 124 Test Organization Testing of Embedded Software Tessy 2 9 Configuration Management Tessy Environment Editor TEE Configuration Management Tessy provides the so called Tessy Environment Editor TEE to configure compiler and target environments With the installation of Tessy the configurations for all supported compiler and target environments including necessary settings and files were copied to the Tessy installation directory You need to enable the compiler and targets that you want to use with Tessy The default setting
195. file O H A Delete DELETE Linker Options Reset Initialize Attributes ConversionDL Check Sourcefile s Edit Sourcefilefs Properties Properties f To add the copied module to another project folder do the following e Select a project folder and choose Paste Module from the context menu or use Ctrl V The module will be inserted Rename Delete DELETE Add Module INSERT See Properties Save a Module You may store settings and the test data of a module in a so called module backup file tmb Such backup files can also be used to versionize a module in a version control system s Version Control Testing of Embedded Software Tessy 2 9 Test Organization e 93 Creating a Module Module backups are also recommended if you want to change your test conditions if e g regression testing will be performed In case of problems you may reject all changes by restoring the module s Restore a Module Do the following e Select a module and choose Save from the Module menu The Save Module dialog will open Save in E tessy z a EB C database Sample source testarea Filename _fts_Stubs_08 04 2003_16 03 00 tme Save as type Module Archive tmb Cancel e Specify a directory and a file name or accept the default name The TMB file will store following information
196. find the appropriate configuration file automatically This assumes that you have already installed your project files Testing of Embedded Software Tessy 2 9 Test Organization e 87 Databases If no configuration file has been chosen for a given database Tessy will use the global setting provided by the Environment Editor Configuration default Start Tessy with Last Used Database If you want Tessy to open the last used database upon startup choose Start with last Database from the Options General menu File Tools Options Project Module Testobject view windo ED Ee Hlal Test Execution gt pem eae E3 eee As Project StubFunctions vith last Database Test Report gt Close a Database To close the database click on Close in the File menu or just close the project window oxi Delete a Database To delete a database you can just delete the database file database_name pdb and their corresponding database Root Folder using the Windows File Explorer Please make sure that this database is really not needed anymore 88 e Test Organization Testing of Embedded Software Tessy 2 9 Creating a Project Creating a Project A Project is a folder used for the test organization and may contain one or more Modules see Creating a Module Add a Project e To create a new project folder choose New from the Project menu File Tools Options Project Module T
197. ft side You can also reach the previous or following prolog or epilog of a test case test step by using the shortcut Ctrl Page up Ctrl Page down on your keyboard Active Usercode The UCE provides a popup menu containing all available interface variables and symbolic constants for convenient editing To show this popup simply press the Testing of Embedded Software Tessy 2 9 Edit Test Cases e 195 Usercode Ctrl Space key You may then choose an item from the menu Pressing the Esc key removes the popup In case of struct or union variables the respective components will also be displayed if you have already written the name of the variable directly followed by a dot like shown in the example below Testobject Prolog Epilog Testcase Prolog Epilog Teststep Prolog sample structure GL range_len range_start The UCE popup contains all global variables used by the test object and the predefined variables described later The variables will be highlighted by UCE to visualize that they are part of the test object interface When saving the Usercode Tessy will replace each occurrence of test object interface variables with the internal ID of this variable This feature allows to assign changed variable names during reuse operations see The Interface Data Assign Editor resulting in automatically changed Usercode in case of changes to the test object interface One consequence is that variables
198. functions and external variables within TIE Probably you need to define the missing external variables or stub functions Multiple definition of Solution Please check whether external variables or stub functions are defined more than once at different locations e g in the TIE as well as in other function libraries Please also check the Usercode whether a variable was defined under Declarations Variable definitions must be entered into the Definitions section because the code of Declarations will be inserted into different header files during test driver generation Tessy Error Codes The following table lists error codes of the interface analyzer and error codes during the test preparation and test execution In case of internal errors please contact technical support Note In case of errors please check also the message window for further information The possible reason will be displayed before the error code Unit Error Error description code TDB 1 42 Internal errors File IO 30 Filename too long 31 File not found 32 Already open Testing of Embedded Software Tessy 2 9 Troubleshooting 365 Error Messages Unit Error Error description code 33 Not open 34 Open error 35 Write error 36 Read error 37 Close error 38 Delete error Analyzer 50 Syntax error 51 Stack overflow 52 Semantic error 53 No public f
199. ges during compilation and linking ts_ lt testobject name gt _usr c Contains Usercode prolog epilog definitions ts_ lt testobject name gt _stubs c_ Contains code of stub functions ts_ lt testobject name gt _s c Contains the test driver with declarations definitions of variables used in your code 376 e Technical Information Testing of Embedded Software Tessy 2 9 Technical Restrictions Technical Restrictions The following restrictions and limitations apply for Tessy Tasking Compiler bit Variables Due to the reason that the Tasking compiler doesn t allow indirect access to bit variables via pointer to bit bit variables cannot be assigned or evaluated if they are used within structs or unions You need to set the passing direction of those structs or unions to Irrelevant There is also a restriction for static local bit variables defined within a function or statement block Tessy may only assign input values for those variables because of technical reasons You need to set the passing direction of those variables to In or Irrelevant Test Object Interface Size The interface size of your test object should not exceed a certain number the absolute maximum size is depending on the available resources of your computer If the size of the interface exceeds the maximum TIE and TDE will run out of window handles and will be terminated by Windows In this case the respective test object cannot be handled b
200. har radian_value In v enum yes_no_t interpolate In Ind R Return signed char Out 164 e Test Preparation Testing of Embedded Software Tessy 2 9 The Test Interface Editor TIE Passing Direction of Special Data Types Pointers and complex data types will be treated slightly different as normal data types Pointers The type Parameter Global and Return and the C data type of an interface element influence the possible passing direction In principle one passing direction is defined for every interface element other than Pointers Both the passing direction of the pointer itself and the passing direction of the target to which it points have to be specified The TIE offers two combo boxes to set the passing directions for pointers Global Variables G gt struct motion forward intis_line_covered_by_rectangle static_var o Bienes E Parameter E R Return E B Declarations Unused e Using the left combo box will set the passing direction of the pointer itself and is represented by a pointer symbol e g In gt e Using the right combo box will set the passing direction for the target The passing direction of the pointer and the target may be set interdependently but they are checked or corrected by TIE to ensure valid combinations Complex Data Types Complex data types as Structure and Union have a dependency between their passing direction of the overall structure union and the passing direc
201. he Installation Firewall and Virus Scanner We strongly recommend to deactivate a running firewall or virus scanner temporarily on your PC This may prevent problems during the installation of Tessy Note that some anti virus software and firewalls can limit the functionality of a range of software applications including Tessy If your anti virus software or firewall alerts you with a warning while using Tessy it may be necessary to modify the properties of your anti virus software or firewall Data Execution Prevention DEP Setting If your system is using DEP for all programs Tessy and the Floating License Manager cannot be started In that case please add both programs to the exception list The following picture shows the situation on Windows 7 GO eli gt Control Panel System and Security System Control Panel Home Device Manager Windows edition Remote settings Windows 7 Professional Copyright 2009 Microsof Service Pack 1 Get more features with a n System protection Advanced system settings System Manufacturer Model Rating Processor Installed memory RAM System type Pen and Touch Wortmann AG support Seea Website Action Center Computer name domain and Windows Update Computer name Performance Information and Full computer name Computer description View basic information about your computer System Properties Bg Computer Name Hardware
202. he following named Razorcat provides the quarantee and the licensee according to the Following terms accepts a non exclusive licence or sublicence to utilize and reproduce software in binary Format developed by Razorcat or a third party and distributed by Razorcat or a third party InstallAware lt Back next gt Cancel e Click on Next to continue Choose Setup Type Complete e You may choose Complete to install all required components of Tessy recommended A complete installation includes Tessy files These are the main components of Tessy CTE files These are necessary files for the Classification Tree Editor CTE With CTE you determine test items and import them to Tessy Floating License Server The Floating License Server is necessary to use a local license with Tessy FLS will be installed always automatically The FLS files will be installed into the base directory s Setup Overview on page 16 22 e Installation Testing of Embedded Software Tessy 2 9 Installing Tessy Vitessy InstallAware Wizard Setup Type Choose the setup type that is best For your needs Installaware Custom e You may choose Custom to install only selected components e g CTE or Floating License Server FLS Vitessy InstallAware Wizard Custom Setup Choose the program features you would like to install Installaware Testing of Embedded Software Tessy 2 9 Installation e 23
203. he source files of a module in your preferred editor 118 Test Organization Testing of Embedded Software Tessy 2 9 Common Module Options You may specify the editor to be used in the tessy conf file as follows e Open the configuration file tessy conf with an editor SAPPDATA Razorcat Tessy Version config e Enter your preferred editor within the Options section e g Editor notepad Note You may access the tessy conf directly within from Tessy by using Options Edit Settings To edit your source file s do the following e Select a module and choose Edit Sourcefile s from the context menu If you have more than one source files following dialog will open x Select Source s to open oo OK TESSY SAMPLES SOURCE stub_fupec hs Cancel TESSY_SAMPLES_SOURCE stub_f e Choose the respective file s from the dialog and click OK Source Files Changed If the module folder is open while saving a changed source file the following message will appear Tessy Module Changed E xi Q File s of Module StubFunctions Stubs has changed on disk Close this Module Ce e Tessy will close the module folder Stubs of the project StubFunctions to ensure that a changed source file will be analyzed again Testing of Embedded Software Tessy 2 9 Test Organization e 119 Common Module Options You may do the following e Choose Yes Tessy will close the module e Choose No to ig
204. he test run Passing Direction The passing direction indicates whether a variable effects on the behavior of a function or is changed by it e In The variable is read by the test object e Out The variable is changed by the test object e InOut The variable is read and changed as well by the test object Project A project stores modules It makes sense to store modules that belong to the same subsystem into the same project Glossary TDE Test Data Editor With the TDE you can enter the input values and expected values for the test run Test Driver Files generated by Tessy for the test execution Test Environment Information about the test object the compiler used the target debugger or emulator and more settings Test Object The function to be tested TIE Test Interface Editor With the TIE you can view the interface description and set the passing direction of the interface elements Usercode Here you can enter C code which is executed before or after test cases test steps during the execution of a test object Glossary Index A AbsRange 250 Add Module 58 92 Advanced Stub Functions create 171 Arrays 232 Assignments undo 318 Attributes 112 116 CTE File 117 Execute Testcases Separately 117 Batch Test 270 Breakpoint define 264 Cc Central License Server 41 Check Sourcefile 118 119 Testing of Embedded Software Tessy 2 9 Glossary Classes 3 Classification Tree Edito
205. hen opening modules While opening the module Tessy will create a special folder idbbuild in the respective module folder to store all necessary information Updating idbbuild folder In some cases you have to update the idbbuild folder For instance this will be necessary if you have changed your PROJECTROOT or some environment variables have been changed if you have simply copied the whole project folders into another path You may also update the idbbuild folder if you receive an error message from idb mak while you open the module If you do not update the idbbuild folder the module could not open To update the idbbuild folder e Hold briefly the Ctr1 key pressed while you double click the module or click H Test Database Backup The backup feature of Tessy provides means to backup modules into a dedicated directory for easy check in into a version control system Modules may also be restored from that directory which facilitates checking out modules from the version control system onto another computer and restoring the test database You may save and restore multiple modules all modules of a project or all modules of the whole database within a single save restore operation Please refer also to the application note Test Database Setup for detailed information about which files need to be version controlled in order to save restore a complete test database Selection of the Backup Directory
206. hoose Export Tessy from the File menu or click the respective icon from the toolbar RA Pitessy File Tools Options Project Module Testobject View Window F New Ctri N i pos E on ao Die Az Bla 9 AE x2 Close Ctr E P patabase C Projects _razorcat tessy Sample pdb Save Ctrl 5 _Sample Save As Is alueInRange 0 Saye All Ctrl 2 is_value_in_range a 20 Import 4 IsLineCovered H gt e A s ER ubFunctions 6 H Aliasnames amp 70 Print Preview H SFR_Handling a Bu Print Ctrl P Printer Setup Usercode OriginalBinaryTest StaticLocals B E Important note Exported values for variables will be read only in Tessy You cannot change such values by using the TDE s chapter The Test Data Editor TDE You must use CTE and must then synchronize the test database of Tessy Before Tessy imports all test items into the test database Tessy will inform you whether test items already exist for this test object In this case the following message will appear CTE Export E xj q TestCases already exists for Testobject is_line_covered_by_rectangle in Module Module Yes No Do you still wish to continue This message indicates that possible inconsistencies may occur when importing the new test items If however only further test cases have been added to the already existing ones you just have to enter new te
207. ile a specific startup code or additional libraries Such files will either be specified within the TEE or be created copied by rules within the makefile If you need more specific settings for your tests you may also need to change the makefile template Some settings in the makefile will be carried out within the environment editor by using appropriate attributes Makefile Templates The makefile templates are located in sys templates make within the Tessy installation directory The name of the makefiles depends on the corresponding de bugger emulator compiler and microcontroller to be used The following naming convention applies ts_make lt debugger gt _ lt compiler gt _ lt processor gt tpl Example Testing of Embedded Software Tessy 2 9 Technical Information e 375 Files in the Module Directory ts_make hitop_ keil_cl166 tpl You may change the makefile templates in the following designated sections BEGIN DEFINES Here you can add defines or change existing ones END_DEFINES BEGIN TARGETS Here you can add rules or change existing ones END_TARGETS Please refer to the application notes Makefile Templates from the Help Documents menu for more details about how to do such changes Generated Files The following generated files contain code that has been entered by the user source code Usercode stub functions In case of errors in the code provided these file names will be shown in the error messa
208. iler Settings Tessy supports different target compilers for use with emulators or debuggers on the target platform Tessy supports both host based testing using the GNU gcc compiler for Windows and cross compilation for various platforms Please review our web page for the actual list of supported compilers and microcontrollers http www razorcat com For each compiler and target system combination there is a specific makefile template installed that may be adapted to your needs When using the standard installation you just need to review the default settings Tessy uses a so called typetable xml TESSY SYSPATH compiler to determine the various data types supported by each compiler In some cases you need to adapt the default settings for your used compiler e g enum_size enum sign If you want to use some specific compiler options or specify default include paths for your projects then you need either to make these changes in the corresponding makefile template or you have to use the Environment Editor Please refer to the application notes Customizing Makefile Template from the Help Documents menu for more details about how to do such changes Please Note Certain restrictions apply to the usage of registers Please refer to the application notes Register SFR Handling from the Help Documents menu for tips and hints on how to solve common problems Debugger Emulator Settings Tessy supports differ
209. iles also in the version control system together with other project related files Please mind that you probably have to revise some files manually when you install a new version of Tessy e g makefile template Steps to perform Create To create a new custom configuration file e Choose File Configuration File New TEE will insert a new File node within the Configurations section 142 e Tessy Environment Editor TEE Testing of Embedded Software Tessy 2 9 Creating Configuration Files alo x File Edit Options Help i Save Ctrl 5 Hide Disabled z Select Project Root Attributes Configuration File E 4 System G anv acc er Administrator File h G aC aC a C Er e Project Root C tessy samples 2_6_5 e You may now copy an already created configuration environment from the Configurations System section onto the File node by simply using drag n drop Testing of Embedded Software Tessy 2 9 Tessy Environment Editor TEE e 143 Creating Configuration Files Pjr Tessy Environment Editor File Edit Options Help G Gxaak ih General Compiler k Targets Ee Environments Re Configurations Ee Md System G GNU GCC GF G cosmic Hcs12 G TASKING C166 nj PERAR Tee ee G anu ccc b BR Gnu avo g Default Project Root C tessy samples 2_6_5 Change Hide Disabled z Attributes ab a Compiler Call gcc c USEROPTIONS DTESSY o OUTPUT INPUT
210. ill be the Database Root directory Projects razorcat config inc obj scr tessy 3 sample StubFunctions CallCount Stubs Project Root Database Root This database root directory will contain all project folders StubFunctions and their corresponding module folders Cal1lCount Stubs which have been created in Tessy for the given database e g PROJECTROOT tessy sample StubFunctions Stubs StubFunctions Stubs P AddTomMemory AddComplexToMemory The module folder Stubs will contain all files used to compile and execute the test objects e g AddToMemory as well temporary generated files created by the compiler see Save a Module 78 e Test Organization Testing of Embedded Software Tessy 2 9 Databases Note Please refer also to the application notes Test Database Setup from the Help Documents menu for more information to share Tessy test databases and test projects between development teams H Herta Creating a Project Database We would recommend using the so called PROJECTROOT s The Project Root and a custom configuration file s Creating Configuration Files for your project database All paths for e g source files includes and other project files will be related to this project root The custom configuration file contains appropriate target environments for the project database which can be defined with the environment ed
211. in the last test step In this case you may use the special value none 254 e Enter Test Data Testing of Embedded Software Tessy 2 9 The Test Data Editor TDE F TDE bin foo 1 2 O x File Edit Search Tools Options Help Sal a 2da eda al T a C El Globals unsigned char bin_in unsigned char dec_in Cut value Ctrl x unsigned char dec_out Copy Value Ctrl C unsigned char hein paste value Ctri y unsigned char hex_out Parameter Undo Ctrl Z Parameter B Dynamics Enter Character Dynamics Mode Assign value to all Testcases The value defined for the last test step will remain as it is If the value none is used in the first test step global variables and parameters remain none initialized In this case the actual content of these variables will depend on the initialization of the compiler used View Results after Test Execution Tessy will compare both expected and actual values after test execution The result will be either failed or passed The TDE will display results as follows r A green tick will indicate that the actual value coincide with the expected value for the given variable with respect to the evaluation mode x A red cross will indicate that the actual value do not coincide with the expected value for the given variable with respect to the evaluation mode e Ifyou move the mouse pointer over a variable the actual value will be displayed as a tool tip Tes
212. in the list e Press Enter or double click to assume the constant e g VALUE_1 Testing of Embedded Software Tessy 2 9 Enter Test Data e 245 The Test Data Editor TDE a defines foo 1 1 lol x Fie Edit Search Tools Options Help Ba 2de ode a T ail r Globals long au f a Parameter INPUT o longX INPUT B Dynamics ak a Parameter VALU R Return long vatu E_1 z z R Dynamics Automatic Test Data Generation The TDE supports automatic generation of test data The test data manifests in test steps of a single test case e Create a new test case s Edit Test Cases or select an already created test case e Open TDE e Choose Edit Generate Teststeps from the menu bar 246 e Enter Test Data Testing of Embedded Software Tessy 2 9 The Test Data Editor TDE F TOE 1s alueInRange is_value_in_range 11 1 ioj x File Edit Search Tools Options Help By Cut Testdata Alt x Copy Testdata Alt C Spec Paste Testdata Alt y Delete Testdata Init Testdata Clear Testdata Actual gt Expected a Parameter Seu Return New Teststep lt Ins Delete Teststep Alt Del Generate Teststeps enum result 2 Dynamics Ba Dynamics The Generate Teststeps dialog will open Testing of Embedded Software Tessy 2 9 Enter Test Data e 247 The Test Data Editor TDE TDE32 Generate Teststeps xj Permutation Rul
213. inary The test binary will be generated and compiled by Tessy default Use Original Binary You can use your original binary build from your own development environment If you choose Use Original Binary the Linker tab will disappear and a new tab Binary will be shown see Linker Binary Tab Note The binary test is currently only available for HiTOP and TRACE32 emulators Please refer to the application notes Original Binary Test from the Help Documents menu for more information on this topic Kind of Test Unit Enables the Unit Test of Tessy Component Enables the Component Test of Tessy Features Enable ASAP Tessy provides a close integration to the ASAP standard allowing the usage of ASAP conversion rules for physical to integer conversion of test data Please refer to the application notes Using ASAP Information from the Help Documents menu for more information on this topic If ASAP is ticked you will find additional attributes within the Attributes tab in which you have to specify your ASAP file Testing of Embedded Software Tessy 2 9 Test Organization e 101 Module Properties Module Properties x General Sources Linker Attributes Comment ASAP File TESSY_SAMPLES_SOURCE asap asap a2I ab ASAP Module MyAsapModule ab ASAP Project MyAsapProject ab Conversion DLL cvtasap Sources Tab On this tab you can add the source files to be tested All exported functio
214. ined value after the execution of a test object There are the following types of expected values e Global or external variables can always be expected values as they have a valid value after execution of a test object e The Return Value of a function is always an expected value e Dynamic Objects referenced through a pointer that is either an input or expected value continue to be accessible after execution of a test object They can therefore also be expected values just like global variables 9 Z E AR Return B Dynamics Enter Values For entering values for the interface elements suitable input fields are provided in the TDE Initially all values are undefined When running the test with undefined values the Testing of Embedded Software Tessy 2 9 Enter Test Data e 231 The Test Data Editor TDE initial value passed to the test object depends on the default initialization of the compiler used val If at least one variable in the current test step is undefined the icons Next Undefined Variable and Previous Undefined Variable will be activated If t you click on these icons the cursor will automatically jump to the next undefined variable 3 The icons Next undefined array element and Previous undefined array H element work similarly for arrays Arrays do not necessarily be completely gl initialized providing values for one array element is sufficient CTE Exported Values CTE exported values for va
215. ings Format Format specifies the file format of the test report You may choose between HTML ASCII text Microsoft Word Microsoft Excel or other available formats Style Sets the style of the document There are some styles available depending on the file format used Layout Sets the layout of the test report Various layouts are available depending on the file format used Output Directory In this box you may choose another directory for the test report By default the report will be created into the module directory e After selecting of suitable settings e g for HTML documents click Generate to generate and view the test report Tessy will start an appropriate viewing tool depending on the file format used In case of HTML reports your default web browser will be started Testing of Embedded Software Tessy 2 9 Test Report 283 Creating Reports Se Test Report 5 Menu Project Sample Statistics N Module IsValueInRange Total Testcases 0 Testcases Testobject is value in range i 4ili Testcase 1 Le Teststep 1 1 a A Testcase 2 Lgi Teststep 2 1 A Testcase 3 i e Teststep 3 1 a fa Testcase 4 i Lgl Teststep 4 1 a A Testcase 6 A Teststep 5 1 6 a Testcase 6 L A Teststep 6 1 4a Testcase 7 di Teststep 7 1 Module Properties amp A Testcase 8 PDB File C tessy25 samples 2_4_9 sample pdb Ludi Teststep 8 1 Directory CiNtessy25 s
216. inters target type You cannot assign the pointer 242 e Enter Test Data Testing of Embedded Software Tessy 2 9 The Test Data Editor TDE Globals Cmmechar AString a Parameter chac Oxa B Dynamics Ray 1 When you click on an element the variable name of that element will be entered into the field next to the pointer During test execution the address of the variable will be assigned to the pointer Globals o A c a Parameter chac Oxa 2 Dynamics e Create Target Value Create Target Value allows to create a new object as target object for the pointer The address of the object will be assigned to the pointer The size and type of the created object depends on the target type of the pointer Choose Create Target Value from the context menu to create a new object The Create Target dialog will open TDE32 Create Target x m Name Jnew_target_value p Dimension _ Cancel I As Aray of Size Testing of Embedded Software Tessy 2 9 Enter Test Data e 243 The Test Data Editor TDE Enter a valid C identifier as name for the new target object and click OK A new target object will be listed in the dynamic objects section of the TDE Globals char AString new_target_value a Parameter B Dynamics o char new_target_value e Array as Target Value It is also possible to create an array as target value u
217. into the bin folder of your Tessy installation e g tessy_2 9 bin Reset a Module Resetting a module will delete the complete test data test cases of all test objects Furthermore the passing directions of the interface of all test objects will be set to default values To reset a Module do the following e Select the module and choose Reset from the context menu _Sample H Aliasnames a eae H a eis DELETE H OriginalBinaryTes os iy M H PA Static arale snitialse Delete a Module To delete a module do the following e Select a module you want to delete e Choose Delete from the context menu or use Del on the keyboard Tessy will remove the module This will also delete the module folder from the hard disk Testing of Embedded Software Tessy 2 9 Test Organization e 97 Specifying the Test Environment File Tools Options Project Module Testobject View Wind x 4 eee C tessy Sample pdb _Sample E asap StubFunctions a Aliasname Rename H gy SFR_Hanc Eee CTRL C Reset Initialize Check Sourcefile s Edit Sourcefile s Properties Specifying the Test Environment The test environment of a module specifies the common settings to execute a test run such as e Target Compiler and Debugger combinations e Additional Compiler and Linker options e Source files With exception of the used source files you have to enable
218. ional behavior of the test objects Tessy uses a copy of the original source file when creating the test application This copy of the source file will be instrumented for coverage measurements Please note that the source code will be instrumented even if no coverage measurement has been selected in the following cases e When using the call trace feature e When using static local variables Some extra code will be added at the end of the copied source file in the following cases e When testing static functions e When using static global variables Please keep this behavior in mind when preparing and executing tests with Tessy Adaptation to Target Environment When running tests on a specific target platform adaptations of compiler options and target debugger settings may be needed within the respective target environment The verification of the Tessy core workflow covers tests conducted on a Windows host system using the GNU GCC compiler In order to verify the transmission of test data and expected results to and from the target device there are tests available that may be executed using the adapted target environment These tests check the communication layers of the test driver application Refer to the following application note for details on how to run these tests Program Files Razorcat Tessy 2 9 Documentation 048 Using Test Driver Communication Tests pdf It is recommended to run these test with your specific compiler target envi
219. ions shown in the picture below Actions Generate Driver and Run Tessy generates the test driver which is based on the interface information and user code provided Tessy will then create the executables If this has been successfully done Tessy executes Run the test Instrumentation 70 e Quickstart Testing of Embedded Software Tessy 2 9 Tutorial None Tessy supports both C1 and C2 coverage measurements We don t want to use this feature at the moment so that we are choosing None s Coverage Analysis Execute Test x Ge IV Generate Driver M Run I Testcases separately Cancel m Instrumentation None ad r Debugger J Define Breakpoint e Click on Execute to execute the test Note You have to select at least one test case to run the test Otherwise the Run check box will be disabled If you tick the option Define Breakpoint the GNU Visual Debugger will appear It s then possible to debug the test object in question Test Execution An Execute Test dialog will be shown while Tessy generates compiles and links the test driver and runs the test This may take some time Tessy Execute Test Please wait while Tessy is executing your Test Prepare Testing of Embedded Software Tessy 2 9 Quickstart e 71 Tutorial You will see the progress of the test execution within the message window of Tessy If any errors occur these messages would be print
220. ironment and choose Enable Environment from the context menu JA Pen wuu N Configurations ab ASAP Project E System Fay a Batchtest Wait Time H Gnu ccc 82 Buffer Size G Gnu GCC C 2 Call Count Size E TASKING XC166 Compiler ab Compiler Call a o gt o eae ESPN Compiler Commandline Waet Environment E a 7 z efines ee Network BB copy Environment Insert All Users X Delete Delete User Administrat Rename F2 Restore Factory Value Ctri R Enable Envir amp IB Colapse subtree Expand Subtree TE Expand all CtritA fae Functions we Enable Static Functions Customizing of Enabled Configurations TEE provides only predefined configurations for all supported compiler and target environments Normally you need to change some settings for your specific environment Some of the settings will be checked for validity TEE will check all enabled configurations and displays error and warning signs as soon as an error has been found e g the Compiler Install Path must be corrected 3 Attributes ih General a amp Compiler E awa amp 1c a Targets EJ Environments ab Compiler Call ab Compiler Commandiine ER Compiler Defines Compiler Install Path bin cc166 USEROPTIONS s a Compiler Id 0x04 a Compiler Includes amp Configurations A Compiler Install Path Programfiles Tasking C 166
221. istinguish identically named local variables within different functions communication_handler status send_bytes status If there are nested static local variable definitions within the same function the names will be enumerated automatically Note Some restrictions apply when setting input values for static local variables Refer to Input Values for static local Variables for more information 222 e Enter Test Data Testing of Embedded Software Tessy 2 9 The Test Data Editor TDE Advanced Stub Variables The parameters and return values of advanced stub functions which have been defined in TIE s next picture will also appear within the Global Variables section of TDE E 8 External Functions Eh qg add values RA Parameter int add_values x Dut a int add_values y Out R Return int add_values In b The following naming convention will apply for these variables e The parameter variables will be named using the stub function name followed by the name of the parameter in parenthesis e The return value will be named using the stub function name followed by parenthesis Example iT i extern int add_values int x int y For the external function shown above there will be three advanced stub variables available two for the parameters and one for the return value if not set to Irrelevant within TIE a add_values E add_values x 2 a Param
222. it Sourcefile Properties The CTE will open 180 e Edit Test Cases Testing of Embedded Software Tessy 2 9 Systematic Test Definition EA Classification Tree Editor is_value_in_range cte File Edit Search View Options Window Help ole Ba ga sedala saae ala aia Suiyselelsel SYSLEMTS A4 1000x700 Note Please refer to the CTE User Manual for more details on using the CTE Important note If the test object interface has still unresolved interface objects Tessy will not open the test object clamp P to indicate that Neither the interface information is available for CTE nor is it possible to transfer test cases to Tessy In that case please open the test interface editor TIE to update the status Assign Variables Tessy provides a list of input and output variables to CTE that may be assigned to classifications and classes of the classification tree Important note It s necessary to start CTE from within Tessy to use this feature s Open the CTE Testing of Embedded Software Tessy 2 9 Edit Test Cases e 181 Systematic Test Definition Currently following interface elements are not supported arrays static local variables pointer This is also true for all interface elements of advanced stubs including the scalar ones To assign variables e Open the Interface Variables window by using View Variables EA Interface Variables 4 js_value_in_range return
223. itor s TEE Tessy will create a folder named Tessy to store files related to this project database if a PROJECTROOT has been specified s below The configuration file will also be stored in a special folder named config which will be created within the Tessy folder s below Steps to Perform To create a new project database either click on New Database in the File menu or click the respective icon in the toolbar The Create New Database dialog will open Testing of Embedded Software Tessy 2 9 Test Organization e 79 Databases Create New Database Vv st ______ Specify Project Root By default you have to specify the project root of your Tessy project s The Project Root If you don t want to use a project root please deselect the check box not recommended Bl e To specify a Project Root click the path selection button and choose an appropriate directory from the dialog 80 e Test Organization Testing of Embedded Software Tessy 2 9 Databases Specify Configuration File By default you have to specify a custom configuration file for the project database You may use a specific configuration file for each project database s Creating Configuration Files This file should be stored in the recommended folder named config within the Project Root The Configuration File will automatically be created if it doesn t already exist It will contain the GNU gcc compiler environment th
224. k button within the toolbar as shown above The component function s selected as work task will be displayed with a special icon Please note Several component functions may be selected as work tasks This may be useful when testing several components together which all have a handler function 344 e Component Test Testing of Embedded Software Tessy 2 9 Editing Scenarios within SCE Scenario View Selecting a scenario within the Scenario Project view will open a new view with the name of the scenario as the title showing the content of the scenario Each scenario consists of the following elements e The INIT step which may contain any initialization necessary before the first execution of the handler function e A number of time steps representing the calls to the main handler function These time steps contain the stimulation of the component and the expected reactions e The End of Scenario step indicating the length of the scenario Elements of the scenario view may be added and moved using drag amp drop from the component functions or called functions view The toolbar of the scenario view provides actions to add new time steps and other specific scenario elements Setting the Step Size and Time Unit You may specify the timely distance between the time steps as well as the time unit globally for all scenarios Select the Scenarios entry within the Scenario Project view and change the settings within the properties view
225. l Qualification Package A tool qualification package for use within certification activities according to standards like DO 178B IEC 61508 or Automotive SPICE is now available The package includes a well documented suite of tests for checking the certification relevant input output evaluation reporting functionality of Tessy Customer specific adaptations or consulting services may also be offered For more information please contact support razorcat com New Compiler and Debugger Integrations Check for new integrations on the Razorcat home page at http www razorcat com Conventions Select Tools Batch Test indicates a menu selection followed by a submenu selection In this case select Tools from the menu bar and then select Batch Test from the drop down menu Note Indicates important or supplemental information Tip Indicates suggestions that may be helpful Important note Indicates very important information 10 e Preface Testing of Embedded Software Tessy 2 9 Conventions Fixed Space Font represents information that you need to type and messages from the system The fixed space font is Courier New The manual instructions assume that you installed Tessy in the default location If you installed in another location you must navigate to files in that location instead of the location specified in the instructions Testing of Embedded Software Tessy 2 9 Preface e 11 Preparing for the Installation Inst
226. l enter general settings for the module e g target environment source files additional compiler options and the kind of your test Properties General tab Within the Genereal tab of the dialog we have to specify the Target Environment which we want to use Because we have used the default configuration file of Tessy the GNU tool set is already selected We want to use this tool set instead of an embedded compiler You may change the default target setting to use your target compiler But we recommend to use the GNU tool set for the tutorial at first The kind of test which we want to perform is here Unit Testing Note Potentially your Target Environment is not yet available in the Environment list box The default configuration file of Tessy contains only the GNU tool set In that case you have to enable and configure your environment Compiler Debugger using the Tessy Environment Editor Add Source File We want to use a sample source file which has been stored normally under C Program files Razorcat Tessy 2 9 samples tessy is line cov ered c by default Please copy this file in a folder which should be located within the project root c tessy e g c tessy source This makes sense all paths e g sources includes etc should be related to the project root 60 Quickstart Testing of Embedded Software Tessy 2 9 Tutorial Properties Source tab Now we are ready to add is line covered c to the module For this purpo
227. l interface elements by the test object You may change the passing direction of an interface element to suite your needs s Set Passing Directions on page 161 In case you want to go back to the default value of the passing direction you may reset the passing direction to the initial value by using Reset initial passing Testing of Embedded Software Tessy 2 9 Test Preparation e 163 The Test Interface Editor TIE e You may reset the passing direction for all interface elements of one Section Select the respective Section and choose Reset initial passing from the context menu External Functions amp Local Functions 4 amp 3 External Variables Global Variables Eh unsigned char sine_values 26 1 Dimension 26 of type unsigned char irelevant 7 Parameter amp Reset initial passing unsigned char radian_value Irrelevant Irrelevant a enum yes_no_t interpolate R Return signed char Out v e You may also reset the passing direction only for an individual Interface Element Select the respective Interface Element and choose Reset initial passing from the context menu amp External Functions amp Local Functions 4 amp 3 External Variables Global Variables unsigned char sin Reset initial passing 26 of type unsigned char irelevant x 1 Dimension RA Parameter unsigned c
228. le Checking return values of component functions called while stimulating the component Checking the values of global variables of the component Checking the calling sequence of underlying external functions of the component This would check the interface to any underlying components used by the component under test Checking parameters of calls to underlying external functions implemented as stub functions The following sections describe the required settings for the above mentioned check methods Checking Return Values of Component Functions When dragging component functions into the scenario you need to provide the parameter values For scalar values you may simply add decimal or floating point numbers depending on the type of variable You may also provide a symbolic name of a variable with the corresponding type This name will be added into the test application without any checking If the symbolic name doesn t exist there will be error messages when compiling the test application 352 e Component Test Testing of Embedded Software Tessy 2 9 Evaluation of Scenarios 2 Initialization C2 Normal Operation 5 3 t THE ERAN O INIT 0 40 ms SY 50 ms 60 ms EB crossed_50 60 60 ms i crossed_75 60 60 ms End of Scenario 60 ms E Properties 5 Actual Call Trace aay Function Set_number Parameter Name Type Value value long 80 Return Type Valu
229. le loop The loop body was only reached once without repeated execution of the loop body branch and the exit branch was reached The loop decision was not fully covered Decision elements are either red or green depending on the coverage result Testing of Embedded Software Tessy 2 9 Monitoring of C1 and C2 e 301 Flow Chart View e Ifthe decision was fully covered MC DC and MCC it will appear in green e Ifthe decision wasn t fully covered i e there is at least one condition combination that was not executed the decision will appear in red If no C2 coverage has been selected for the last test execution the decision elements remain grey but they are still selectable in order to find the respective line of code in the source code view Selecting Elements You may select decisions branches and code statement elements within the flow chart The respective code section will then be highlighted within the source code view Since not all connection lines within the flow chart are branches in terms of the C1 branch definition some of the connection lines may not be selectable Some elements like the operator and statements containing boolean expressions may also appear in green or red CY Tessy Coverage Viewer Leg File Chart Window Help PS SO eke ols v BE Called Functions A S function 3 0 ah mco ja mcc 7 0 gt function indigates a sub flow chart
230. le test objects with a few test cases that can be documented in a few words manually To create test cases do the following e Select a test object from the module Choose the unit tab from the right pane e Click within the pane and choose Insert Testcase from the context menu or press Ins Testing of Embedded Software Tessy 2 9 Edit Test Cases e 187 Insert Test Cases Manually _C ET o File Tools Options Project Module Testobject View Window Help Hel salaa Bs 2 P patabase C Projects razorcat tessy Sample pdb E _Sample F a Is alueInRange Ga IsLineCovered 2 ASAP StubFunctions Aliasnames SFR_Handling Edit Testdata Usercode Edit Usercode OriginalBinaryTest Initializ StaticLocals H H H H H H H A new test case with one test step will be created Important note If the test object interface has still unresolved interface objects Tessy will not open the test object clamp P to indicate that You will not be able to insert test cases The Insert Testcase context menu option will be grayed out In that case please open the test interface editor TIE to update the status Each test case contain at least one test step The test step contains the input and output values of a test object You may add additional test steps to add more test data for the same test context Add Test Steps You can add additional test steps to each test case
231. les do the following e Choose Init Testdata from the Edit menu The following dialog will open Testing of Embedded Software Tessy 2 9 Enter Test Data e 233 The Test Data Editor TDE LI x m Fill with D C Pattem oxfo0 Veue o Cancel Random from jo to jo C Ignore Values rm Display Values Decimal Hexadecimal Options V Initialize all Array Elements You may use following options e Pattern a pattern in hexadecimal format e Value a specific value only e Ignore Values all input and expected values will be set on none e Display Values you may decide to display Value Random in decimal or hexadecimal format e Random a range of generated values for the initialization The random values will adhere to the min max limits of each interface variable type e Initialize all Array Elements if selected all array elements will be initialized Otherwise only visible array elements will be initialized In accordance with the size of the type of a given variable an initialization value is derived from the pattern in hexadecimal notation e g if you entered the pattern 0x01 the initialization for a 16 bit value would be 0x0101 234 e Enter Test Data Testing of Embedded Software Tessy 2 9 The Test Data Editor TDE yy Parameter 042424242 2 inta floatb 0 0 chare 0x42 Vv char aaf0 charaafl char aa 2 All interface compone
232. lete Testcase DEL Add Teststep Edit Testdata Edit Usercode Initialize Testcase Description Specification Testcase 1 Cancel Description my first testcase e Enter a Description and a Specification for the test case e Click OK Usercode Tessy provides an interface to specify the so called Usercode that will be executed at a certain point in time during the test execution Using the Usercode Editor UCE you may specify such C code fragments or emulator scripts depending on the selected target configuration In the C part of the Usercode you may Testing of Embedded Software Tessy 2 9 Edit Test Cases e 191 Usercode e define and initialize test object specific variables like complex structures or arrays e g characteristic curves e execute code to initialize variables of your test object s interface e define or declare global helper variables to be used within the usercode e enter define statements to be used within the usercode e specify the number of execution times for a test step e evaluate any kind of variable or memory location to be of interest for the test report e trace the actual number of calls to all functions called from the test object e implement the code body of stub functions called from the test object The C part of the usercode will be integrated into the test driver and executed at the places specified e g before or after execution of a
233. lick the desired old function or vice versa Testobjects Called Functions Interface New Testobjects Old Testobjects A AddToMemory AddToMemory AddComplexT oN ewMemory A GetMemory X SetNewMemory AddComplexT oMemory SetMemory R In both cases the mouse pointer will change to indicate your assignment x All functions can be assigned automatically as follows e Either click the Automatic Assign symbol in the toolbar or choose Automatic Assign from the Assign menu IDA will try to assign all functions using names Testing of Embedded Software Tessy 2 9 Regression Testing 317 Performing Regression Testing When an old function has been assigned to a new one its name will appear next to the new function s name i e the function will move up above the black line The appearance of the old function under the horizontal black line will change to gray Assignments already made can be replaced with new assignments It s also possible to assign one old function to several new functions Undoing Assignments e To undo an assignment select the respective function and choose Deassign from the context menu IDA will deassign the function Testobjects Called Functions Interface New Testobjects Old Testobjects A AddToMemor AddT oMemory AddComplexT oNewMemory AddComplexT oMemory SA GetMemory XM SetNewMemory Assign Deassign GetMemory SetMemory Symb
234. ll be shown in the status bar of Tessy Pitessy 15 x File Tools Options Project Module Testobject View Window Help Hle a rojects razorcat tessy Sample pdb Property Value Directory C Projects razorcat tessy sample_Sample Comment StubFunctions Aliasnames SFR_Handling Usercode OriginalBinaryTest StaticLocals 4 H E Welcome to Tessy Project Root C Projects razorcat Note If you open this database on another PC once more Tessy will ask you for the Project Root automatically Testing of Embedded Software Tessy 2 9 Test Organization e 85 Databases xl G This database requires a project root to be selected Tessy has detected that the directory C Projects razorcat could be used as project root Yes Accept the project root No Select a different project root directory Cancel Cancel opening the database Yes No Cancel This assumes that you have already installed your project files Assign a Configuration File You may assign a specific configuration file for each project database see Creating Configuration Files This file contains only your target environments you want to use To use a configuration file e Open a project database e Choose Configuration File Select from the File menu File Tools Options Project Module Testobject View Wi Print gt New Database Open Database Sample pdb Clos
235. lling Python 2 2 InstallAware e Installing Java Tessy setup will install Java silently with default settings Abe InstallAware Wizard BI x Installing Tessy Requirements The program requirements are being configured Ca Please wait while the Install4ware Wizard installs Tessy requirements This may take several minutes Status Installing Java 1 6 Installaware As soon as the installation of Tessy Requirements is finished Setup will continue 20 e Installation Testing of Embedded Software Tessy 2 9 Installing Tessy with the installation of Tessy s Installing Tessy Installing Tessy e The following steps will guide you to install Tessy Pitessy InstallAware Wizard mie E Welcome to the InstallAware Wizard for Tessy The Install4ware Wizard will install Tessy 2 6 18 on your computer WARNING This program is protected by copyright law and international treaties To continue click Next Cancel e Click on Next to continue License Agreement Please read the license agreement carefully To install Tessy you must accept this agreement Testing of Embedded Software Tessy 2 9 Installation e 21 Installing Tessy Piitessy installaware wizard UE License Agreement Please carefully read the following license agreement Tessy V2 6 c 1998 2008 Razorcat Development GmbH and Daimler AG License Agreement Razorcat Development GmbH in t
236. llowing declaration because the variable shall be used within a stub function Declarations Definitions ma unsigned char sample_dataf The declarations will be included into the generated Usercode files and stub function files In case of local functions that shall be stubbed the declarations will also be added at the beginning of the source file that contains the local function before compilation Important note The declarations may conflict with type definitions of the source file if you are stubbing local functions as opposed to external functions If you need to declare conflicting types enclose the conflicting declarations like described below In order to make declarations only visible within the generated Usercode files use the following define statement ifdef TESSY_USERCODE some declarations endif This define is only active when compiling Usercode parts e g prolog epilog stub code for external functions It s not active when compiling the source files of the module if the source file contains local functions to be stubbed This causes any declarations enclosed within the above define statement to be invisible within the respective source file Testing of Embedded Software Tessy 2 9 Edit Test Cases e 197 Usercode Repeat Test Step Prolog Epilog Execution The prolog and epilog may be executed several times using the repeat count field located at the upper right border of the test step tab Setting
237. llowing options if necessary Case Sensitive Match whole name e Click OK Save Interface Information and Exit the TIE Paj e To save your settings either choose Save from the File menu or click the respective icon from the tool bar e Toclose the TIE either choose Exit from the File menu or use Alt F4 178 e Test Preparation Testing of Embedded Software Tessy 2 9 Enter Test Cases Edit Test Cases Enter Test Cases The next step of the test preparation will be the definition of test cases One test case includes at least one test step to hold the test data for test execution e Please refer to section The Test Data Editor TDE If suitable you can also specify user code to be executed at specified places during the test execution e g c code for defined stub functions e Please refer to section Usercode The systematical approach to create test cases is to use the Classification Tree Method The distribution of Tessy includes the specialized Classification Tree Editor CTE to perform the specification of test cases The CTE has a direct interface to Tessy and allows to assign values for variables of the test object interface within the classification tree You can export all test items and the assigned test data into the test database of Tessy e To find out how to access the CTE from Tessy refer to the Section Systematic Test Definition You may also create test cases manually by using Tessy e Pl
238. lowing e Select the respective project and choose Add Module from the context menu or press INS on the keyboard A new module folder will be added FjDatabase C tessy database test pdb Rename Directory Delete DELETE Comment Paste Module CTRL Properties Rename a Module e To rename a module folder you may either click once the module name or select Rename from the context menu File Tools Options Project Module Testobject view Window Hel Dies FjDatabase C tessy Sample pdb _Sample Directory ASAP aa Comment StubFunctions Compiler H ama Environment ii a Kind of Test Aliasnames Sourcefile SFR_Handling Note A valid name cannot contain any of the following characters blanks amp L lt gt Only simple brackets dashes and underscore characters _ are permitted 92 e Test Organization Testing of Embedded Software Tessy 2 9 Creating a Module Copy and Paste Modules For the same open database you may copy a module from one project folder to another one Please do the following e Select the module that you want to copy e Choose Copy from the context menu or use Ctrl C The module will be copied Fjpatabase C tessy Sample pdb _Sample E asap StubFunctions Ga Be Aliasnames __ Rename SFR_Hand Directory Comment Compiler Environment Kind of Test Source
239. lowing options e Format HTML Document e Style Screen e Layout Details e Output Directory Please specify an output directory If you have finished your selection please click Generate Now the test report will be created and shown in your standard Web Browser see picture below Main components of the test report The right hand window of the test report contains following sections e Inthe upper left corner general settings are listed like project name module name or the name of the test object e Next to it you see a summary of all test cases sorted by successful and failed e Inthe tables below you see the module properties and module attributes listed if any Testing of Embedded Software Tessy 2 9 Quickstart e 73 Tutorial _ Test Report KIROM Menu Tutorial Statistics otal Testcases i 1 1 Successful lot Executed o Project Module IsLineCovered m f Testcase 1 Testobject is line covered by rectangle i 4 Goto Top User Administrator Date 09 22 2005 Time 14 12 46 Module Properties Ci tessy Tutorial pdb Directory C tessy Tutorial Tutorial sLineCovered arget Environment GNU GCC GNU GVD Default ind of Test Unit Test inkeroptions o ources C Program Files Razorcat Tessy 2 4 Samples tessy s_line_covered c Compileroptions Conversion DLL none Expand All Collapse All Help Home Frames No Frame
240. ludepath form the context menu m Source Module Ee Environment IsValuelnRange E PROJECTROOT scr is_val_in_range c m Compiler Remove Incdudepath DEL N Replace Includepath Moye Includepath Up SHIFT UP Move Includepath Down SHIFT DOWN J Change local Includes Defines f Edit as Text e From the Browse for Folder dialog choose an appropriate path If possible Tessy will always use defined path variables rather than absolute path names e g PROJECTROOT inc s The Project Root on page 77 Module Properties x General Sources Linker Attributes Comment rm Source Module Cancel ikh r A Browse B PROJECTROOT scr is_val_in_range c r Compiler PROJECTROOT Nine IV Change local Includes f Defines j Options j Settings j Edit as Text You may also add include paths with option Edit as Text This is useful if you have a configuration file which defines the include paths for your source code e Right click on the Includes pane and choose Edit as Text from the context menu Testing of Embedded Software Tessy 2 9 Test Organization e 105 Module Properties e Copy n Paste your include path list into the edit field of the dialog e Click OK The paths will be inserted Source Module EES CERESESISTE x Esl Environment E IsValuelnRange B S PROJECTROOT scrhis_val SPROJECTROOT scr stubs
241. m manually or you can change the default settings to your needs see Open the TIE Open the TIE To open the TIE do the following e Select your test object for which you want to edit the interface information 156 e Test Preparation Testing of Embedded Software Tessy 2 9 The Test Interface Editor TIE El e Choose Edit Interface from the context menu or click the respective icon from the tool bar _Sample IsValueInRange Ga IsLineCovered is_line_covered_by_rectangle H ASAP Import Export H StubFunctions eataa a Aliasnames Define cae H SFR_Handling Edit Testdata Usercode Edit Usercode E OriginalBinaryTest Eagete Tests a StaticLocals Test Report Monitoring Edit Sourcefile Properties The TIE will open Testing of Embedded Software Tessy 2 9 Test Preparation e 157 The Test Interface Editor TIE REG 32 IsLineCovered is_line_covered_by_rectangle loj x File Search Options Help Bs al 24 Zil Jis_ine_covered_by_rectangle z amp Local Funct test object j amp F External Var passing directions Global Variables RA Parameter gt struct Rectangle rectangle E b struct Line line R Return gt enum E B Declarations Unused External Functions 4 amp 3 External Variables interface elements The TIE window is vertically divided into two parts e Th
242. m Wegener Tessy has been well tried in practice at DaimlerChrysler and is since applied successfully Tessy is commercially available since spring 2000 and is further developed and marketed by ATS Software Since 2001 the company trades under the name Razorcat Development GmbH Safety Procedures Tessy is qualified for safety related software development according to IEC 61508 and ISO 26262 Core Workflow and Registration for Safety Information Important Note If you work with Tessy in a safety relevant environment please read this chapter carefully and register for our safety customer e mail list to be informed about known problems as described below Tessy is used for testing of safety relevant software Therefore based on our certified safety concept certified for ISO 26262 2011 Tessy development procedures are validated and verified and our quality management assures the management of all development processes and constantly improves all procedures concerning quality and safety Testing of Embedded Software Tessy 2 9 Preface e 5 Safety Procedures Tessy Core Workflow Tessy editing test data Tessy evaluating test Tessy generating report Classification Tree Editor CTE designing a test case result file function under test test driver application The figure above shows the core workflow of Tessy that is fully automated and subject to tool qualification
243. may be replaced by stub functions like within the normal unit test The Component Functions section lists all the component functions i e these are the functions visible from outside the component Local static functions will not be listed here The meaning of the eye icon for component functions is as follows e Ifthe eye icon is striked this indicates that the variables used by this function shall not be available within the component test interface of the scenario These variables are set to IRRELEVANT and the passing direction may not be changed like the variable decrement _rate in the above example e Ifthe eye icon is visible the variables used by this function will be available within the scenario and the passing direction may be adjusted like the variable number in the example above The default setting is that the eye icon is striked for all component functions resulting in an empty interface of the scenario You may then choose to show the variables used by a 338 e Component Test Testing of Embedded Software Tessy 2 9 Scenarios as Test Cases for the Component certain function using the Show Variables used by this Function menu entry of the context menu for the respective function Scenarios as Test Cases for the Component Testing a component requires a set of scenarios that stimulate the component and check the behavior of the component Such a scenario contains calls to component functions and other possible actions
244. may use a specific make template file linker file or specific libraries and compiler include paths There are two ways to perform such advanced configurations e You may copy already created configurations and change their settings to suit your needs s Copying Configurations e You may also save your settings in a specific configuration file to use this file with a given project database This allows easy sharing of specific settings between developers s Creating Configuration Files Testing of Embedded Software Tessy 2 9 Tessy Environment Editor TEE e 137 Advanced Configurations This is the recommended method to use configurations Note Since Tessy 2 6 the cloning feature has been removed from TEE Copying Configurations This feature is available in the Configurations section of TEE and allows copying an already existing configuration This is the recommended method to create your own configurations because all required default settings will also be copied To copy a configuration e Within the System section select one configuration e g Cosmic HCS12 e Choose Copy Compiler from the context menu Alternatively drag n drop the configuration onto the System section icon or one of the other configuration groups Network All Users or User Ra Configurations E System a Gnu acc a Cosmic HCS12 gt Copy Compiler Insert ge Network sot ree it E All Users Xe Delete Delete User Admi
245. me is used by default Specify Comment e Enter a Comment This may help you to distinguish your project databases Save Your Settings Click OK when all settings are complete Tessy will now create e anew PDB file e anew configuration file if not existing e the database root directory Tessy will also open the database A NewProject folder see Creating a Project on page 89 has been already added see next picture P Database C Projects razorcat Tessy sample pdb Property Value Directory C PROJECTS RAZORCAT Tessy sample Comment Properties f 82 e Test Organization Testing of Embedded Software Tessy 2 9 Databases The current project root configuration file setting is displayed within the status bar of Tessy _ i cx Welcome to Tessy Project Root C Projects razoreat Configuration PROJECTROOT config configuration xml Y Note Please refer also to the application notes Test Database Setup from the Help Documents menu for more information to share Tessy test databases and test projects between development teams Open a Database To open an existing database choose Open Database in the File menu or click the respective icon Open Database in the toolbar The Open dialog will pop up Please select a database file and click Open 21x Look in databases tts ED test File name ftest pdb Files of type Tessy Project Database pdb x amt Alt
246. mmend at least a 1 5 GHz CPU and 1 GB RAM for Tessy This is dependent of the Operation System used Software Requirements Tessy requires MS Word 2000 2 3 7 10 and MS Excel 2000 2 3 7 10 to be installed for report generation if you want to use these report formats s Test Reports You may also use a web browser if you choose HTML as report format Tessy supports standard web browsers e g MS Internet Explorer Firefox Your browser must have both cookies and JavaScript enabled If you want to use CHM compiled HTML as your report format it must be installed HTML Help Workshop This tool can be downloaded under www Microsoft com Tessy requires Python version 2 2 1 Python Win32 extensions version 1 48 and Java SE Runtime Version 1 6 0_x to be installed Note Please mind that other versions of Python could cause problems during report generation You may install Python 2 2 1 parallel to your used version Tessy requires the installation of compilers debuggers and emulators which are intended to be used with Tessy After the installation of Tessy you have to configure Tessy by means of the Tessy Environment Editor to use these tools Please check for updates of supported environments at www razorcat com Note The configuration of an earlier version of Tessy is taken over by the installation of Tessy 2 9 s Update a Previous Installed Version 14 e Installation Testing of Embedded Software Tessy 2 9 Preparing for t
247. mple IsValueInRange B is_value_in_rang Import Export Edit Interface Define Testcases Edit Testdata Edit Usercode Execute Test Test Report Monitoring History Clean Snapshot l Edit Sourcefile Properties Tessy lists all Test Results with their date and time in the Compare dialog 328 e Traceability of Test Changes Testing of Embedded Software Tessy 2 9 Diff Viewer Compare is_value_in_range 2 x Select File s to compare Cancel 9 5 2006 9 20 2006 9 26 41 AM 1 37 26 PM Test Results Test Results e Select one Test Results compares the actual test results with a selected test results or two Test Results compares both selected test results e Click Compare The Diff Viewer will appear The Diff Viewer is divided into three areas e The left pane shows the project database name the project folder and the module of the test object and the respective test cases e The upper and lower panes on the right side display the respective differences of an item as soon as it was selected The kind of information depends on the tabs Inputs Results Call Trace Properties etc which have been selected Only suitable tabs will be enabled for a selected item In addition the respective tab will be marked with a red cross to indicate differences The Diff Viewer highlights every difference in red You may move the mouse pointer over th
248. n Database 83 Open Support Dialog 362 Output Directory test report 283 286 Output Values 68 156 P Parameter 65 159 221 Passing Direction 64 161 bitfields 166 enumerations 166 extern 64 161 229 in 64 161 inout 64 161 irrelevant 64 161 229 out 64 161 pointers 165 reset 163 structures and unions 165 PDB Files 374 Pointers passing directions 165 Index e 387 Glossary Prev unknown object 163 Project Root 77 80 assign 84 Projects 2 89 comments 89 create 89 delete 91 open 90 rename 90 Properties module 99 project 89 Properties tab 57 R Range 250 Regression Testing 4 315 Report Author 289 Date 289 Revision 289 keyword expansion 289 Restore module backup files 95 Return Value 65 159 Root Directory database 286 Run test 267 S Search identifier 177 257 variables 177 257 Set Pointer target 242 Shortcuts TDE 257 Show all elements 240 first array element 239 Source File changed 119 changed interface 120 edit 118 file status 109 specify 61 102 Specification 219 Start Local Server 43 44 Static Functions 108 Stop Local Server 44 Strong Syntax Checking 236 Structures 238 passing directions 165 Style test report 283 286 Support dialog 362 Systematic Test 4 T TDE arrays 232 239 bit check 253 browse Interface 229 enter expected values 229 enter input values 229 enter string 240 enum variables 237 start 218 strings 241 structures 238
249. n a project 122 e Test Organization Testing of Embedded Software Tessy 2 9 Test Database Backup 4 File Tools Options Project Module Testobject view Window Help dliasnames FFA Usercode ResultPlots StaticLocals C HE EP A _Sample ASAP Ga Bibrenetions ay Stubs Rename H CallCoun Delete DELETE SFR_Handlinc Add Module Paste Module INSERT CTRL Properties ComponentTest The save operation will show the Save to Backup dialog listing the desired modules All available modules are selected by default If you don t want to save all of them you may change the selection used Shift and Ctrl keys to select multiple entries within the list m Modules to save Abbruch After clicking the OK button Tessy will save all selected modules into the previously selected backup directory as TMB archive files Testing of Embedded Software Tessy 2 9 Test Organization e 123 Test Database Backup Restore from Backup Directory Modules may be restored from the backup directory into the currently open test database i e the PDB file You have the following possibilities to restore modules from the backup directory e Restore all modules from the backup directory into the current test database i e the current PDB file by choosing Database Backup Restore from the File menu e Restore all modules o
250. n will have a separate configuration file s Configurations System Network all Users e User Administrator The configuration file of System contains the default settings for all supported compiler and target environments and has been installed with Tessy As soon as the TEE is launched a configuration file will be generated for the respective User The configuration files for User respectively All Users will be empty as long as no configurations were created e g copied into this subsection Unlike the configuration file of System the configuration file for User respectively All Users contain only compiler target configurations which you have copied into these subsections TEE will always merge the configuration files during startup to display the resulting settings for the respective configuration groups The configuration files for System Network All Users and User will be stored in following default folders System C Program Files Razorcat Tessy 2 9 config e configuration xml Contains settings for the General and Configurations section 130 Tessy Environment Editor TEE Testing of Embedded Software Tessy 2 9 Starting the TEE e configuration default xml Represents the factory settings of Tessy During installation of new Tessy versions the settings within this file will be used to update configuration xml if necessary Network C Program Files Razorcat Tessy 2 9 config e network config
251. nes 294 Monitoring of C1 and C2 297 View Coverage Results ccccccccsseessesssesscessceseeeeeeeseeeeesscenseensecnseeeseceeeneeenes 297 Starting the Coverage Viewer CV ecceccscessecsseesseeseeeseeeseeeeeeseenteeneensees 298 Window Structure of the CV occ ccecccssecsessecseceeceseeeseecaeeecsaeceeeseeaeeereseees 298 Blow OET ARAVA A EA A dete ccecle cess EAE 299 Displayed Elements ccccsccesccsseesseesceesecseeeseeseceeessecnseceseecseeaecseeeaeeenes 300 Searching for Uncovered Conditions or Unreached Branches 0 303 C1 A ETARA E E E E NE EEEE E E 306 Summarized Total Coverage cccecccssecsseesseeseeeseeseeeseeeeeeeseeeeeeereneeseessees 307 Branch Coverage for selected Test Steps ccccccesceeseseceseeesseeeesseeneeenes 307 MC DC Coverage View A E E EE E 307 Selecting DIEA E a a EARE A E E E E EE 309 Uncovered Condition Combinations ccesscssecsseeceeceeceseeeeeseeeeeeeneees 311 MCG Coverage View neesii ths eae nah a E nr EEEE S EE E a 311 AES AATA ETE E E E AE ST 311 Highlighting Code Fragments cccccccessessseseeeeeceeeeesceeeceseeseeceeesseenneeses 311 Coverage Statistic View ccccccccsseesseesseeseeeseeesceseeeeeeeeeseenseceaecaeeeseceeeaeeenes 312 Coverage Report Views ccccesccsseessessseesceseceseeseeeeeeeseenseenseeeseeaecesecseeeaeeenes 313 Regression Testing 315 viii e Contents Testing of Embedded Software Tessy 2 9 Contents Performing Regression Testing
252. nistrz Rename F2 Restore Factory Value Ctrl R v Enable Compiler Ctrl E Expand Subtree E collapse subtree T Expand All Ctri A TEE will insert an additional entry Cosmic HCS12 1 oN Configurations E 4 System G cnuacc H G Cosmic HCS12 G osmic HCS12 1 i ce Network All Users User Administrator 138 Tessy Environment Editor TEE Testing of Embedded Software Tessy 2 9 Advanced Configurations e You may rename this item to describe your environment It is not always necessary to copy the whole configuration You may copy only the target entry or the environment entry to create a different configuration for a given compiler amp Configurations E 4 System H Gnu ccc H G Cosmic HCS12 S BB Hitex HTOP EA Copy Environment Insert Network y All Users Delete User Administrat Rename F2 Restore Factory Value Ctrl R v Enable Environment Ctrl E E Expand Subtree I collapse Subtree TE Expand All Ctri A TEE will insert an additional entry Default 1 N Configurations E System G anuace G Cosmic HCS12 G E Hitex HiTOP ag Default Bes Default 1 ge Network allusers User Administrator This additional configuration will be available within the Environment list box in the General tab of the Module Properties dialog Testing of Embedded Software Tessy 2 9 Tessy Environment Editor TEE e 139 Creating C
253. nit Proper View For this purpose you must use CTE and reimport them for the respective test object to Tessy This will prevent possible inconsistencies within the CTE document when deleting test cases by Tessy see Systematic Test Definition Testing of Embedded Software Tessy 2 9 Edit Test Cases e 189 Insert Test Cases Manually This way you can only delete test cases created by Tessy as follows see Insert Test Cases Manually e Select one or more test cases e Choose Delete Testcase from the context menu or press Del Name Description Specification _ Insert Testcase INS Cut Testcase CTRL Copy Testcase CTRL C Paste Testcase CTRL Y Add Teststep Edit Testdata Edit Usercode E E E m 6 m i Initialize Testcase Properties View Delete Test Steps You can delete test steps of a test case using the Test Data Editor TDE Please see The Test Data Editor TDE for more information At least one test step will remain Enter Test Case Description and Specification You have the option to enter a short description and specification for every manually created test case see Insert Test Cases Manually e Select a test case and choose Properties from the context menu 190 e Edit Test Cases Testing of Embedded Software Tessy 2 9 Usercode pecification Insert Testcase INS Cut Testcase CTRL Copy Testcase CTRL C Paste Testcase GTRLFY De
254. nitialization takes place upon the first execution of the code Tessy added after the definition of the variable Note Input values for static local variables may not be assigned until the first execution of the definition scope of the variable e g the first execution of the test object if the variable is static local within the function body of the test object Static local variables cannot be used in the UCE For a test object containing static local input variables the first test step would always require to ignore the input variable causing the initialization value of the variable within the source code to be used 230 e Enter Test Data Testing of Embedded Software Tessy 2 9 The Test Data Editor TDE EZ a j send_bytes status ffnone send_bytes status STATE_IDLE x Equa Any further test step could then be used to assign arbitrary values to this variable assuming that the definition scope of the variable will be executed by the first test step a2 a j send_bytes status 0x99 send_bytes status STATE_IDLE x Equa Note Beware of this restriction when debugging single test cases The input settings for static local variables of at least the first test step to be executed will be ignored because of this reason Expected Values The expected values determine what results are expected after test execution Expected values can only be defined for interface elements or dynamic objects that have a def
255. nore the message The module will stay open Important note Remember to generate and compile the test driver since the implementation of the test object may have changed Changed Interface If you open a module and the interface of a test object has changed e g after editing of a source file the following dialog may appear Tessy Open Module x Q Module Interface has changed Do you want to reuse the old database or create a new one New Cancel Note Source files are often modified extensively during the later stages of development thus making it necessary for a new test e g a regression test to take place This can alter the interface of an existing test object Tessy enabled you to Reuse test data that has already been entered You may do the following e Click Reuse in order to start the IDA Interface Data Assigner for reusing your test data see Interface Data Assign Editor e Click New if you want to delete all test data and restart from scratch Interface Analysis If you open the module for the first time source files and the respective header files will be scanned and a list of dependencies will be generated This allows to check for file changes when opening the module a second time before analyzing the interface If no file changes 120 Test Organization Testing of Embedded Software Tessy 2 9 Test Database Backup occurred no comparison of the IDB will be carried out thus saving time w
256. ns from the Options Test Execution menu 4 ee File Tools Options Project Module Testobject View Window He General Test Execution Run Test with current Options gt Se Fret Directory Project Comment This will prevent the Execute Test dialog from appearing and allowing test execution to start immediately Testing of Embedded Software Tessy 2 9 Running a Test e 265 Execute Test Run Execute Test Run Potentially you have to launch your debugger first before you can start the test execution in Tessy Please refer to the appropriate application notes for your target environment under Help Documents Targets Once all settings have been completed see Setting Test Options you can start the test as follows e Choose Execute from the Execute Test dialog Execute Test x IV Generate Driver M Run J Testcases separately Cancel m Instrumentation None hd m Debugger J Define Breakpoint The message Please wait while will appear 266 e Running a Test Testing of Embedded Software Tessy 2 9 Execute Test Run ox Fie Tools Options Project Module Testobject View Window Help ta eaaa BIS I dl Database C tessy29 samples 2_6_5 sample pdb _Sample Name Description Specification IsValueInRange 1 1 Simple The normal com Range Start Po 2 1 Range Start Po oa 2 te TER a E gt Ra Start Ze E asap essy Execute Tesi q Range St
257. ns will be displayed if the module is opened By default Tessy displays the module folder in the Source Module pane in which the source files are added Some additional compiler options may be specified on module level by selecting the module entry other options may be specified for each source file in the list Such local changes display Tessy with a red tick in front of the module or source file name The check box Change local will be ticked Some of the displayed options e g include paths in the lower Compiler pane may be specified in the Environment Editor s Using Default Configurations and will be inherited from there 102 e Test Organization Testing of Embedded Software Tessy 2 9 Module Properties x Module Properties x General Sources Linker Attributes Comment Cancel ikh Browse IV Change local Includes f Defines j Options f Settings j Add Source Files To add source files Select a module folder a source file or right click into the Source Module pane you e may also use the Browse button Choose Add File from the context menu Source Module Es Environment Is ValuelnRiange Remove File Replace File If possible Tessy will always use defined path variables rather than absolute path names e g PROJECTROOT s The Project Root on page 77 Replace or Remove Source Files To remove a source file Select a source
258. nse checked out M check out License for days I remind me to check out e Click on OK Tessy tries to check out a license from the central license server The license will be saved as notebook like dat into the bin directory of the local license server Testing of Embedded Software Tessy 2 9 Installation e 49 Registration Once your notebook has disconnected from the network you have to restart Tessy to operate independently from the central license server As long as the license key is valid Tessy will automatically start a local license server on this computer Important note You will check out a license for Tessy and CTE Checkout using the Floating License Manager Note Probably this option has been disabled by your system administrator in case that the check out option is not available This option is available only for floating licenses s Registration on page 36 Please take the following steps to checkout a license from the Floating License Manager e Start the Floating License Manager You will find the license manager in the folder Tessy 2 9 within the Windows Start Menu FF e Click on Check out in the toolbar e The following dialog will pop up Please select the product to check out and the desired number of days up to 30 Important note The License Manager will check out a license for Tessy and CTE if you choose TESSY The edit field Hostid contains the HostID of the local computer Create T
259. nt note If you have changed default files in earlier versions of Tessy e g makefile templates linker files etc please save these templates before you update your Tessy installation Setup will uninstall the previous version of Tessy 2 9 before installing the new version Multiple Installations of Tessy 2 9 x The installation process will be nearly the same as for a new installation as described in chapter New Installation on page 17 Some of the installation steps will be not executed e Start Setup as described on page 17 New Installation and follow the instructions e Inthe Application Requirements dialog tick the check box Keep old version of Tessy Testing of Embedded Software Tessy 2 9 Installation e 31 Installing Tessy eles Application Requirements The Following requirements must be processed before starting setup Previous ersion 2 9 6 Uninstallation To continue click Next InstallAware e Click next to update a previous installed version of Tessy 2 9 e g 2 9 6 Setup will rename the version directory Razorcat Tessy_2 9 in Razorcat Tessy_2 9 6 to keep the old version 2 9 6 of Tessy Setup will create a new shortcut in the Program folder of the Windows Start menu for the previous installed version e g Tessy 2 9 6 32 e Installation Testing of Embedded Software Tessy 2 9 Installing Tessy Ae InstallAware Wizard Bl xi Welcome to the InstallAware Wizard for Tes
260. nterface element is both read and written by the test object InOut provide a value within the UCE Usercode Editor of Tessy Extern With this setting the interface element is visible in the scope of the user code and may be set using C code not use the interface element at all Irrelevant In this case you will not see this variable for all further testing activities Choose Passing Directions The passing directions are displayed in the right part of the main window To set a passing direction of a variable do the following Choose a suitable passing direction from the combo box list next to the variable e g In a Parameter gt struct Rectangle rectangle gt Sei R Return Elsy enum no yes Testing of Embedded Software Tessy 2 9 Test Preparation e 161 The Test Interface Editor TIE The following table shows possible passing directions of the different types of interface elements Passing directions InOut Extern Irrelevant Automatic Analysis of the Passing Directions During processing of the source files when opening the module Tessy analyzes the passing directions automatically and stores its findings in the interface database This information is available in the TIE as default values of the passing directions Tessy analyzes the usage of individual interface elements by the test object Depending on that usage the following passing directi
261. nts are treated according to their type Dynamic objects are also initialized The following table shows the initialization values for certain data types Type Contents Integer 0x00000000 e g if 0x42 is entered as initialization value all int variables will be initialized with 0x42424242 Float 0 0 Char 0x00 or what is entered Struct All sub components are initialized according to their type Union The first sub component is initialized as active component Enum The first enum constant is used as initialization value Array All array elements are initialized according to their type if option Initialize all Array Elements is used Pointers Pointers are initialized with NULL provided that they don t point to dynamic objects Testing of Embedded Software Tessy 2 9 Enter Test Data e 235 The Test Data Editor TDE Note If values have already been entered for some components it is still possible to initialize the remaining components In this case only the undefined components will be initialized Enter Numerical Values Integers and floating point numbers are entered into a simple text box e g 27 28 C s h Parameter float THE_FLOAT floatf zs StCid a Parameter B Dynamics AR Return 2 Dynamics Note You may select Enable checking from the Options menu for strong syntax checking to prevent inappropriate values for a given data type Ent
262. ols IDA tries to assign all elements automatically Functions with names that have been changed cannot be assigned automatically They must be assigned manually using Drag and Drop 318 e Regression Testing Testing of Embedded Software Tessy 2 9 Performing Regression Testing Testabjects Called Functions Interface New Testobjects Old Testobjects A AddToMemory AddToMemory AddComplexT oNewMemory SA GetMemory X SetNewMemory GetMemory AddComplexT oMemory SetMemory IDA will mark all functions to indicate the respective status Following symbols are used wi Function is assigned interface is identical Ny Function is assigned but interface has changed You need to assign the interface of the test object e Double click the function or select the function and choose the Interface Tab to assign the interface x Function could not be assigned e Try to assign the function manually if any e Use Sort from the Options menu or press F5 to sort the function list Assigning Called Functions The mechanism to assign called function is the same as for test objects described above There is one important point to keep in mind when using advanced stubs or get set functions within your test objects e Ifthe name of the called function has changed then you need to assign the called functions first before assigning the interface of your test object As a result you will se
263. on From the context menu choose Create stub function for all testobjects REG 32 _Stubs AddToMemory File Search Options Help BY 24 20 aditomemoy o amp External Functions Create stub function for all testobjects get memory Create advanced stub for all testobjects set memory Create stub for current testobject Create advanced stub for current testobject amp Local Functions TIE will create a stub for the selected function and indicate that by a red tick TIE will also define this stub for all other test objects in the module and indicate that with G lobal 168 e Test Preparation Testing of Embedded Software Tessy 2 9 The Test Interface Editor TIE F tiE 32 _Stubs addToMemory File Search Options Help Bal 3 20121 Poctoneroy 8 External Functions ladd_ values 9 get_memory set memory amp Local Functions e Create stub for the current test object Example AddToMemory This option enables you to create a stub independently of the global setting of the module Select one function in section External Functions or Local Function From the context menu choose Create stub function for current testobject GEG 32 _Stubs AddToMemory Fie Search Options Help Bal 3 20121 ostoneroy amp External Functions Create stub Function for all testobjects get memory Create advanced stub for all testo
264. on enables the representation and adjustment of the interface structure independent of the test data or expected values All settings on the interface page e g the definition of external variables or stub functions can be specified separate from the data required for the test The test data itself is entered in a special editor the test data editor TDE The data is assigned to the respective interface elements via internal references This separation of the interface information and its test data achieves a clear distinction between structure and data This offers an enormous advantage when handling changes in the source codes On the one hand the test of the interface is possible indicating changes in the first place On the other hand if a change occurs usually only a few elements of the interface of a function under test are changed 4 e Preface Testing of Embedded Software Tessy 2 9 Safety Procedures Consequently the procedure when handling interface changes is simple With a special tool the Interface Data Assigner IDA the elements of the new interface can be assigned to the elements of the old one This assignment can be carried out automatically new elements are simply assigned by using Drag and Drop History The test system Tessy was developed by the Research and Technology Group of DaimlerChrysler The developers of the method and tool at DaimlerChrysler are Klaus Grimm Matthias Grochtmann Roman Pitschinetz Joachi
265. on forward in ba unsigned char var Irrelevant 7 Eh int aray 10 o Dimension of type int If a value for an interface element has not been recognized automatically the respective text field will be empty or contain the value 1 In case of arrays TIE will also use question marks to indicate that e g array In all those cases you have to add values manually Eh y struct motion forward In EI unsigned char var finelevant gt Eb int arrayl o Si of type int 166 e Test Preparation Testing of Embedded Software Tessy 2 9 The Test Interface Editor TIE Note Wrong array dimensions or wrong values for enumeration constants can lead the test object to crash during test execution TIE cannot check for plausibility of used values Define Stubs for Functions The TIE displays all functions used by the test object either in section External Functions or Local Functions TIE provides an interface to define Stubs for these functions that will be executed instead of the original function TIE distinct two different Stub Functions e A stub function for which you may enter C code by using the Usercode Editor of Tessy see Usercode Create Stub Function e Aso called advanced stub function that allows to provide values for parameters and return values of stub functions like normal variables in the TDE Using Advanced Stub Functions You may define stubs globally for all test objects
266. on of the output values during test execution or will be used as a predicate of a condition There are three types of input values e Global and external variables used by the test object e Function parameters transferred during function call Testing of Embedded Software Tessy 2 9 Enter Test Data 229 The Test Data Editor TDE e Dynamic Objects they represent pointer targets referenced through a pointer of the test object interface they are not really dynamic variables will be created for each one within the generated test driver Globals gt o Dynamics Input Values for static local Variables Static local variables require special handling within the generated test driver causing some restrictions for the data input of the test cases Example void send bytes i i static state_t status STATE_IDLE Normally static local variables are not accessible outside the scope of the function or statement block where they are defined To be able to assign input values and save the actual results of the expected values Tessy adds some code after the definition of the static local variable This code initializes a pointer to the static local variable This pointer will then be used for each subsequent access to the variable within the test driver As a consequence this pointer needs to be initialized before Tessy may assign input values to the static local variable The i
267. onfiguration Files xi General Sources Linker Attributes Comment oc r Test Directory C Mtessp samples 2_4_9 Sample _Sample IsValuelnFlange Cancel Environment Janu GCC GNU GYD Default pe 12 m Target Binary Generate Test Binary Use Original Binary Creating Configuration Files You may create and use a specific Configuration File for each project database This is useful if you want to share the environment settings with other members of your development team The configuration file should be stored within your project root directory together with other project related files e g source files Such a configuration file may contain only the compiler target environments you want to use All other environment configurations are not visible for the user as long as this file is assigned to a given project database see Assign a Configuration File Create a New Custom Configuration File We recommend using a so called PROJECTROOT for your configurations to be able to use relative paths within your configuration file s The Project Root You may specify a temporary PROJECTROOT in TEE for the configuration of your test environment You may start TEE from within Tessy by using the Options Edit Environment menu if a project database is open This ensures that TEE uses the so called PROJECTROOT from the project database if specified s Assign a Project Root
268. only acting as host The example of the tutorial using the GNU tool set instead of an embedded compiler You may change the default target setting to use your target compiler s Tessy Environment Editor We recommend to use gcc at first Upon successful completion of the tutorial you will be able to e Create a Database that contains all meta data belonging to your projects e Create a default custom configuration file which specifies your test environment Testing of Embedded Software Tessy 2 9 Quickstart o 53 Tutorial e Create a Project and add a Module for the given source code e Add source code for testing e Use the Test Interface Editor TIE and Test Data Editor TDE to specify test data and expected results for the test object under testing e Execute a test run and evaluate the test results using reports Start Tessy and Create a New Database Open the Tessy program e Select Programs Tessy 2 9 Tessy from the Windows Start menu essy 2 9 gt B Documentation A Cygwin gt ge CTE A Python 2 2 gt E Diff viewer A Snagt7 gt Cif Environment Editor TEE E Internet Explorer Floating License Manager gt 2 Microsoft Excel Known Problems Microsoft Word e Release Notes PD Uninstall Tessy E Online Help Manual Astr HEUISSAGS The program will start with an empty main window Welcome to Tessy 54 e Quickstart Testing of Embedded Software Tessy 2 9 Tutorial Aas File Options Wind
269. ons will be set as default e read only n In e write only Ne Out e read and write Inout e not used a Irrelevant Note The clamp the test object icon will be opened in case that no unresolved interface objects have been found You may insert test cases directly without opening the TIE 162 Test Preparation Testing of Embedded Software Tessy 2 9 The Test Interface Editor TIE val Ril Using the buttons Next unknown object or Prev unknown object from the toolbar will navigate you to either the previous or next interface element that has to be set In case that the passing directions or any other interface information could not be determined the respective fields in the TIE will be empty For instance If Tessy could not calculate the size of an array dimension indicated with a question mark you have to set them manually E TIE 32 IsLineCovered is_line_covered_by_rectangle i loj x Fie Search Options Help 8 External Functions amp Local Functions 4 External Variables Global Variables E struct motion forward unsigned char var yy MEENE 1 Dimension 2 of type int Note Although Tessy usually correctly recognizes all interface settings you need to open the TIE for every test object to make sure that the value are set correctly or does match your needs Reset Passing Direction to the Initial Value Tessy analyzes the usage of individua
270. orcat tessy Sample pdb Directory C Projects yazorcat tessy sample _Sample IsvalueInRange arget Environment GNU GCC GNU GYD Default ind of Test Unit Test inkeroptions 0 Sources PROJECTROOT scr js_val_in_range c Revision 2 Compileroptions F File MODULEPATH js_value_in_range cte Displaying Keywords Revision Author and Date Version Control Systems provide keyword expansion to embed version control information into text files Tessy will display such expanded keywords within the test report for the used source files Following keywords are supported e Revision Revision number Example Revision 2 e Author User who checked in the revision Example Author Konrad Lorenz e Date Date and time stamp for the revision Example Date 2 24 06 5 15 59 Module Properties PDB File C Projects yazorcat tessy Sample pdb Directory C Projects yazorcat tessy sample _Sample sValueInRange arget Environment GNU GCC GNU GYD Default ind of Test Unit Test Sources PROJECTROOT scr is_wal_in_range c Revision 2 Author Konrad Lorenz Date 2 24 06 5 15 59 Compileroptions Testcase Definitions The test report will also contain the structure of the classification tree in case you have used CTE for your test case definitions Tessy will then insert a graphic for each sub tree refinements of the classification tree Testing of Embedded Software Tessy 2 9 Test Repo
271. ories the Classification Tree Method is used for the systematic determination of test cases low in redundancy and error sensitive in this way enabling an extensive and effective testing of a test object The basic concept of the Classification Tree Method is to first partition the set of possible inputs for the test object separately and from different aspects and then to combine them to obtain redundancy free test cases covering the complete input domain First of all specify the relevant aspects for the test Each aspect must be clearly defined to allow for a clear differentiation of all possible inputs for the test object Then the partition of the set of all possible inputs for every aspect is carried out This partition is a Classification in the mathematical sense i e the set of possible inputs is partitioned disjoint and completely into subsets the so called Classes The partition is fairly easy to carry out since it is done for each aspect separately Each aspect will then have a classification Combining classes of different classifications where exactly one class from every established classification is considered creates a Test Case In other words a test case is the intersection of the selected classes It is necessary to heed the logical compatibility i e the intersection may not be empty Select as many combinations as test cases in order for all aspects to be considered sufficiently The Classification Tree Editor CTE has been
272. ort file of Tessy s Open Support Dialog Open Support Dialog In case of problems during compile link or test execution Tessy can create a file containing all information to help Razorcat Support for troubleshooting Please do the following e Enable logging This may be helpful for troubleshooting s Enable Logging for Troubleshooting Problem The Module cannot be opened e Clear the message window by choosing Delete all from the context menu 362 e Troubleshooting Testing of Embedded Software Tessy 2 9 Contact Support e Choose Check Sourcefile s from the module context menu s Error Messages Try to open the module you may press the Ctrl key while you open the module s Updating idbbuild folder Continue with step Create Support File Problem The next steps are suitable if the module is open but the test execution failed e Clear the message window by choosing Delete all from the context menu e Select your test object within the module that caused the problem e Repeat test execution with Generate Driver and Run Continue with step Create Support File Create Support File You have to select either the module if the module cannot be opened or the test object e Choose Support Create Support File from the Help menu Tessy Support dialog will appear Se E Tessy OK Version 2 2 6c x Patch n 2 266 Database C tessy Sample Cancel Project ASA
273. ow Help Die a Alpe Welcome to Tessy Project Root None Configuration Default Create a Database Tessy uses a so called project database a single file with extension pdb which contains the meta data of projects and modules as well as information on the test environment used source files compiler debugger etc s Databases of Tessy e Please select File New Database or click on o in the toolbar to create a new database Project Root and Database Name e Inthe following dialog please enter a so called Project Root e g c tessy and a Database Name for the new database e g Tutorial The Project Root allows to specify a root directory of your development projects so that all paths e g sources includes etc may be related to this root s The Project Root Testing of Embedded Software Tessy 2 9 Quickstart e 55 Tutorial 56 e Quickstart Testing of Embedded Software Tessy 2 9 Create New Database xi m Project Root j IV Use Project Root Ie tessy E Cancel r Configuration File IV Use Configuration File S PROJECTROOT Tessy config configuration xml El m Database Name fT utorial Root Directory SPR DJECTROOT STessy Tutorial l File SPR QJECTROOT Tessp Tutorial pdb al m Author Administrator m Comment A quick start understanding of the features incorporated into Tessy Configuration The Configuration option
274. ow indicating that it now contains a module s below e Please change the name of the module to IsLineCovered by using Rename from the context menu of the module folder 58 Quickstart Testing of Embedded Software Tessy 2 9 Tutorial F Database C tessy Tessy Tutorial pdb E Tutorial Property Value a lslinecovered Directory C tessy T essy Tutorial T utorial sLineCove Comment Environment GNU GCC GNU GYD Default Kind of Test Unit Sourcefile Attributes You may change project or module names by clicking twice on the name with a slight delay Specify Target Environment e Select the newly added module IsLineCovered and choose Properties from the context menu F Database C tessy Tessy Tutorial pdb Tutorial Property Value irectory C tessy T essy Tutorial T utorial sLineCove m omment CTRL C nvironment GNU GCC GNU GVD Default DELETE ind of Test Unit ourcefile tributes Check Sot Edit S wi Properties f The Module Properties Dialog will pop up Testing of Embedded Software Tessy 2 9 Quickstart e 59 Tutorial Module Properties xi General Sources Linker Attributes Comment R r Test Directory C tessy TutorialTutoria lsLineCovered Cancel r Environment GNU GCC GNU GVD Default zi Features Kind of Test I Enable ASAP Unit Component r Target Binary In this dialog you wil
275. pe Table File ab New Attribute Insert Reset Attribute Delete f aff Edit attribute G Edit attribute value Restore Factory Value Ctri R Open with Editor Open with Application 148 e Tessy Environment Editor TEE Testing of Embedded Software Tessy 2 9 Adding Editing Attributes Factory Settings TEE preserves all default settings If necessary you may always use Restore Factory Value to revert to the default value ab a Preprocessor Cali fab Scanner Call aby New Attribute Insert EJ Type Table File K Reset Attribute Delete B Edit Attribute G Edit Attribute value Restore Factory Value Ctri R hi Editor h Application Add Attribute e Right click in the Attributes pane and choose New Attribute from the context menu The New Property dialog will open xl Name JUSERCODEINCLUDE PaT EN Cancel FI PROJECTROOT include ss SS pType String C Float C Boolean C File Number C Directory Flags I Inheritable T As List IV Visible T Validate T Multiline T Not Empty I Read Only J System J Internal I Always Valid F Hex Format J Add to PATH Variable Attribute Properties There are different attribute Types available String Boolean Number Float File and Directory Please make sure to specify the desired type before pressing the OK button The type may not be changed once the attribute is crea
276. pilog Teststep fia zj Repeat Count J 4 P Pa Use the desired correction as new actual position amp pctual position TS_TESTOBJECT_RETURN Testing of Embedded Software Tessy 2 9 Usercode In this example the return value of the test object is assigned to the input variable actual_position With the test step repeat count set to 15 the test object is called in a sort of closed loop 15 times with the return value as feedback value Important note The TS_TESTOBJECT_RETURN variable holds valid data only within the test step epilog Call Counter for Stub Functions For the implementation of stub function code it is sometimes useful to know about the current number of calls to this same function The predefined variable TS CALL COUNT is available in the scope of each stub function code and counts how many times the function has been called There is a separate counter for each stub function if there is more than one function The count starts from one so the first time the stub function is called TS CALL COUNT equals 1 Example Fjusercode Editor CallCount serial_communication_receive File Edit Tools Bis ek 24h stub Functions read_sci_byte 5 Declarations Definitions Declarations Return data from test data array Definitions eturn sample _data TS_CALL COUNT 1 ED Testobject Signed char read_sci_byte In the example above the stub function returns values from an array u
277. plays the test case specification and the optional description of the current test case in individual input fields The actual test case specification should a tester enable to provide concrete input values and expected results for this test case The description is optional and may be empty Testing of Embedded Software Tessy 2 9 Enter Test Data e 219 The Test Data Editor TDE Note The description and specification panes are not editable if test cases have been created and exported by using the CTE The respective fields are displayed then in gray s picture below F TDE Module1 is_line_covered_by_rectangle 1 1 E 40l x Fie Edit Search Tools Options Help a 2z da A T afi zl Description Specification coverage yes degree of coverage complete position of endpoint P1 line endpoint P1 located inside the rectangle position of P1 in the rectangle inside the rectan position of endpoint P2 line endpoint P2 located inside the rectangle Browse the Interface The TDE shows the interface of the test object which has been adjusted during the test preparation using TIE s Test Preparation Set Passing Directions F TOE IsLineCovered is_line_covered_by_rectangle 3 1 x File Edit Search Tools Options Help 2 a 2e pde a f aif J Specification F Description a Bal X a a g r E nn Parameter Parameter Elsy struct Rectangle rectangle ER Retum G D str
278. port ff This 1 emonstrate the integration a ae Ci tessy samples 2_6_S sourcelis_val_in_range c from Hitex ce Hitex Systementwicklung GmbH 2001 www hitex de Revision 2 a Ki 3 Highlighting Code Fragments When selecting elements of the flow chart view the respective source code lines will be highlighted within the source code view All elements of the control flow and most of the connection lines i e those representing C1 branches are selectable Omitted code statements e g the missing else branch of an if statement will be visualized by highlighting the last character of the previous statement where the omitted one would be placed Testing of Embedded Software Tessy 2 9 Monitoring of C1 and C2 e 311 Coverage Statistic View Pitessy Coverage Viewer File Chart Window Help jesto le 101 x BE Called Functions gt D Vis value inrange 3 Om ci coverage a Function c mooc A total coverage 50 00 is_value_in_range NA NIA testcase Teststep Coverage pe 7 e 1 1 50 00 i a Bay 50 00 D 21 50 00 3 1 50 00 i gt 4 gt gt i is_val_in_range c C1 Report 7 ae IYL S ri range Start aj return no if vl gt rl range_start ri range_len return nop return yes a Ki The picture above highlights the missing else branch of the if statement You can move the mouse poin
279. preprocessor if necessary Important note Please enter all definitions without the normally used option of your target compiler e g D Tessy will use the appropriate option automatically Macros have to be separate by a comma or semicolon Example IAR SYSTEMS ICC 6 7 intrinsic m Source Module E SPI Range ROJECTROOT sersis_val_in_range c r Compiler _IAR_SYSTEMS_ICC__ 6 __intrinsic IV Change local Includes Defines j Options f Settings j Options Tab Within the Options tab you may specify additional directives for your target compiler Please mind that macros for the preprocessor and include paths has to be specified within the Defines tab respectively within the Includes tab Testing of Embedded Software Tessy 2 9 Test Organization e 107 Module Properties m Source Module IV Change local Includes f Defines j Options f Settings j Settings Tab module selected Within the Settings tab you can force Tessy to enable static functions static local variables or to hide inline functions These options apply to the whole module though it may be selected only when the module entry is selected m Source Module Ee Environment 2 IsValuelnRange E PROJECTROOT scr is_val_in_range c m Compiler IV Static Functions J Inline Functions Static Local Variables I Change local Includes l Defines i Options Settings f
280. r 3 Classification Tree Method 3 Classifications 3 Command line restore module backup files 95 Compiler settings 372 Configuration typetable xml 372 Configuration File assign 86 140 146 specify 81 Copy amp Paste modules 93 Coverage Analysis C1 263 MC DC 263 MCC 263 Create Database project root 80 root directory 81 Create Target Value 243 CTE export to Tessy 184 open 180 D Database close 88 delete 88 root directory 81 start with last database 88 Database Root 78 Databases new 79 142 open 83 root directory 286 Debugger Emulator settings 372 Define Breakpoint 264 Index e 385 Glossary Define Testcases 180 Delete modules 97 test step 225 Description test case 219 E Edit Source Files 118 Edit Test Data 218 Edit Testdata 66 Enable checking 236 Enable Inline Functions as Testobjects 108 Enable Static Functions as Testobjects 108 Enter Character 237 Enter Values CTE exported 232 Error Codes Tessy 365 Error Messages 361 Eval Macros 202 Evaluate Test 72 281 Execute Test 70 261 generate driver 261 run 261 testcases separately 261 Testcases separately 117 Expected Values 68 156 231 Export 212 External Functions 158 create stubs 167 External Variables 65 229 F File Status 109 Floating License Manager 38 Floating License Server 36 FLS 36 Format test report 283 286 Function Parameter 65 G Generate Driver 267 Generated Files 376 Global Variables 65 159
281. r by their differing indentations Icon Description gt This icon indicates that a further level exists The interface element in question is of a complex C type F This icon represents the browsed open state of a complex C type struct union array The sub elements of this type are represented below and indented by one level fet This icon indicates a basic type that cannot be browsed open View Type Modifier Type modifier such as far near const etc can be displayed within the TDE as follows Testing of Embedded Software Tessy 2 9 Enter Test Data e 221 The Test Data Editor TDE e Press Shift and move the mouse pointer over a variable The type modifier will be displayed as tool tip if any Global Variables int oh a Parameter Modifier const far o p struct rani Special Global Variables As mentioned above the Global Variables section contains variables with the following lexical scope e Defined within the source file e Declared within the source or header files e Defined static within the source file e Locally defined static within the scope of a function or at the beginning of a statement block In case of the first three bullets there will be no difference in the display of the variables In the last case of static local variables the name of the variable will be the function name followed by double colons and the variable name in order to d
282. r case defines an enum variable values for yes or no Section Declarations Unused At the end of the list you will see the section Declarations Unused These sections will be explained in more detail later in this manual For our sample we don t have to care about these sections s Define Missing Linker References Please exit the TIE by pressing ALT F4 or use EXIT from the File menu Since we didn t change anything we don t have to save something Enter Input and Expected Values In the next step of our tutorial we need to create at least one test case to enter input and expected values of our test data Please do the following Click in the right pane of the main window Unit tab and choose Insert Testcase from the context menu Testing of Embedded Software Tessy 2 9 Quickstart e 65 Tutorial F Database C tessy Tutorial pdb B Tutorial B IsLineCovered Edit Testdata Edit Usercode Initialize Testcase une w Properties A new test case will be created in the list One test case includes at least one test step to hold the test data for test execution You can add additional test steps to each test case Every test step contains a complete set of test data s chapter Enter Test Data gt Test Steps e Now please select the test case and choose Edit Testdata from the context menu om Insert Testcase INS Cut Testcase CTRL X Copy Testcase CTRL C P
283. r cross compiler e g Tasking C166 The error messages of your compiler will be printed into the Tessy message window F Database C tessy samples 2_6_5 sample pdb Sample GC aerenga Rename Ga Asap Copy CTRL C StubFunctions Delete DELETE Aliasnames E SFR_Handling Usercode E ResultPlots OriginalBinaryTest StaticLocals J Gy c efile s Edit Sourcefile s PEREA A H Properties H A How to Handle Errors Appearing in the Message Window The most relevant error will be found at the top of the error output The subsequent errors are mostly due to the previous ones and may be confusing We recommend to follow the two steps described below when searching for an error reason e At first delete the content of the message window e Repeat the erroneous action Please mind The error messages of your compiler will be printed into the Tessy message window In case of syntactical errors or linker errors please refer to the manuals of your compiler 364 e Troubleshooting Testing of Embedded Software Tessy 2 9 Error Messages Common Error Messages No such file or directory Solution Please find out which file exactly was not found Most commonly the compiler fails to open some include files In this case you have to add the include paths in the Defines tab of the module properties Undefined reference to Solution Please check the settings of stub
284. rds the configuration hierarchy Indicates a warning that there are errors within the attributes of that item that need to be resolved somewhere else within the configuration hierarchy e amp Indicates a warning but the cause for the warning is somewhere within the attributes inherited by this item You should check for warnings and errors upwards within the configuration hierarchy and fix the errors there 152 Tessy Environment Editor TEE Testing of Embedded Software Tessy 2 9 Symbol Appearance Representation of Values in TEE The attributes and values in the Configuration section are normally inherited from the respective General section Compiler Targets and Environment TEE will mark the respective icon with a triangle to indicate that TEE will display the values and attributes in different fonts to indicate the following situations Normal letters Represents the factory settings respectively default settings from the General sections and have been inherited Bold face The value has been defined the first time for the attribute Italic The factory setting respectively a default setting from the General section has been overwritten Testing of Embedded Software Tessy 2 9 Tessy Environment Editor TEE 153 The Test Interface Editor TIE Test Preparation The Test Interface Editor TIE After configuring the test environment of a module you have to define the interface information for every
285. reees 343 Setting the Work Task ccs hevcieci cafe hectecssessdestavesele ween a E aE EASES uS 344 Scenario Vie Wasani odena a a a a a Si 345 Editing User e1 A EE E A T 351 Evaluation Of SCCMALOS srren riuen aea eae a A e E Eni 352 Checking Return Values of Component Functions 352 Checking Global Variables cccccccecsesssesseeescesceeeceereesecesecnseenaeeeeeeeenes 355 Checking the Calling Sequence 0 ccececseessesseeeeseeeeeceeeceeeeeeeeesseenteeaes 355 Checking that a Function is not Called cceccccseesceeseeeecesseeseeeseeneeeeeenes 357 Checking Stub Function Parameters ccccccecsseesceesceeeeseceseceeeeseeeeeenes 359 Troubleshooting 361 Contact SUPPOIE nnen e ods atk See Cadet eae hacen eae ecto 361 Enable Logging for Troubleshooting cccccceesceeseeeseeeeeeteeeeeneeeeeenes 361 Testing of Embedded Software Tessy 2 9 Contents e ix Contents Open Support Dialogs si isc ccccssecdes ccc ceeciecsonienssecveedvesea cosine deevscdiciectesccvestieces 362 Error Messa pesene ieiet e E EE AEA E AREO 364 How to Handle Errors Appearing in the Message Window 00000 364 Common Error Messa gesn accenna ie e e i a S e E 365 Tessy Error Cod s ess nears i R R E a A 365 FAQ oiei EEE E ER e AE ETRE EK ia 368 Errors While Opening a Module ss ssssesseseeseesesseeesrsrssessesesesseenessesressese 368 Errors While Generating the Test Driver s ssssssseesserssessessrsersreeessee
286. resses 368 Module Interface has Changed ccccessessseseeesseseeeesceeeceeeeeeeeneesseeneeenes 369 Test Cass s Cant be Inserted nonr ia e A E R testes 369 I Can t Choose a Certain Compiler or Debugger sssseeseserseeseeeerseeseeeee 370 Application Notes Of Tessy cccccsscssessecesecsseceeesseceseceecseecaeeseeeseeesneeerees 370 Technical Information 371 OVER VIC AEE eat eea eas oa cea EEE TEE eed se 371 Compiler Settini Sks aee cad ave 5 ac EE E OE E E ent onesssheatas 372 Debugger Emulator Settings ccccccceescessceesceesceseeeseesecnseceseeaecaeeneeeaeeenes 372 Version Control nosies nests eens ves Masons eben Me a RA ee 373 Files from the Module Folder cccccccccscessecsseccessecsseceeseecsseceeeeeesseeeenes 373 Files outside the Module Folder ccccccecsccccscccssseesscecsseceeseecsseceeseeenas 374 Files in the Module Directory cccceccceescessceeseeseeeeeeeeceseeeseesaecnsecseeeneeenes 375 Makee e N a 375 Generated Files E E A EAA E EAT 376 Technical R estrictioNS sernai Aa Ses airs A N Ae 377 Tasking Compiler bit Variables 0 ccccceccseseeeseeeeeeeceeseeeeeeseceeeneenseenes 377 Test Object Interface Size ee eeccsseesseesceeeceesceseeeeceeenseceseessecaeenaeeneeeaes 377 Structs Unions Enums and Multiple Source Files 0 ccceceeseeeeeeeeeetees 377 Glossary of Terms 379 Index 385 MTV OX aate Fes sees sicc a ahs Micah PR eee Reead oh GOS aOR nace oR BRA ah oes 385
287. riables are read only in TDE The respective input fields are displayed in gray inixi File Edit Search Tools Options Help Ba 2uler ale a PF SCO a Specification Description Range Start Positive Range Length Positive v 4 gt Globals Globals EF y struct range r1 exported x Return values 0 enum result yes fi po 7 B Dynamics intrange_start intrange_len intv1 B Dynamics You must use CTE respectively the underlying CTE document to change such values if necessary 232 e Enter Test Data Testing of Embedded Software Tessy 2 9 The Test Data Editor TDE Assigning Values for Variables in all Test Cases For convenient editing of new interface values or even for initialization purposes during test data input you may assign the current value of a variable to this variable within all test cases E a Parameter RA Parameter r e li Cut Value Ctrl x X w stait Copy Value Ctrl C yes length Paste value Gerty namics Undo o v1 Undo a Dynamics Ignore Value Assign value to all Testcases This menu is available as soon as the respective variable has a value for the current test case Even structs unions or arrays may be assigned to all test cases and test steps in this way Initialize Test Data At Once TDE provides an option dialog to initialize all interface variables of a test step at once To initialize variab
288. rmine the test objects and their interfaces A central database manages all data needed for the unit test alt x File Tools Options Project Module Testobject View Window Help as skaala aE 2 Database C tessy Sample pdb _Sample i 5 Is alueInRange Ami Range Start Positiv is_value_in_range Range Start Positiv Ali Range Start Zero Aiasnames Range Start Negati E asap 5 1 Length 0 Special case Le Range Start Positiv OriginalBinaryTest 6 1 Range Start Zero SFR_Handling 7 1 Range Start Negati StubFunctions 8 1 Special More sophistica Range Start Positiv Usercode eee eee FR 9 1 Range Start Negati Range Start Zero Testcase 10 Teststep 1 done done Test needed 1602 milliseconds Creating XML result file done E 2 28 56 PM The systematic test case determination is carried out with the help of the Classification Tree Editor CTE which is fully integrated into Tessy Test data and expected values are entered into the test data editor which allows you to browse the interface of a test object down to the basic data types The remaining testing activities e g test execution test evaluation and test documentation are fully automated 2 e Preface Testing of Embedded Software Tessy 2 9 About Tessy Classification Tree Method and Classification Tree Editor Developed in DaimlerChryslers software laborat
289. ronment Operating Limits Tessy is constructed for usage as a unit testing tool in order to verify the functional correctness of the function under test The following restrictions and prerequisites for Tessy apply Testing of Embedded Software Tessy 2 9 Preface e 7 New Features in Version 2 9 e The source code to be tested shall be compilable without warnings by the respective target compiler Tessy may fail analyzing the interface of the module to be tested if there are syntactical errors within the source code e Tessy does not check any runtime behavior or timing constraints of the function under test e The test execution on the target system highly depends on the correct configuration of the target device itself the correct compiler linker settings within the Tessy environment and other target device related settings within Tessy if applicable Any predefined setup of the Tessy tool for the supported devices requires manual review by the user to ensure proper operation of the unit testing execution e The usage of compiler specific keywords and compiler command line settings may require additional tests for tool qualification Correct operation of the Tessy toolset with respect to the QTS test results may only be provided for ANSI compliant C code New Features in Version 2 9 2011 DocRev 2 5 5 Changes This version of Tessy 2 9 called Tessy 2 9 MinGW supports Windows 7 32bit 64bit and Vista 32bit 64Bit Tessy
290. rsssersrssresesseeeessesees 29 Multiple Installations of Tessy 2 9 X ccsccsscsseeseeseeeeeesseeeeeeeeesereeeeeeensees 31 Modify Repair or Remove Installation s ssesesseeseeeesseseessesseereseesessreeessesees 33 Using Projects from earlier Versions than Tessy 2 9 secere 34 Registration ie niiit ai iE o RA EE EAE A R EE 36 Floating License snsnnn renr e n a e a 36 Node Locked Licensee eeren ii AR E R tides 37 Request License inr E E ae eee 37 Register Tessy nrnna a od etch whi N E a Abe 39 Install Local License Servei onenian e e ES 39 Install Central License Server iccscs02 sci od oss ann e a s 41 Using Floating License Manager ccccscccssesseceeeceeceeeeseeeeeeeseeseeeseeneensees 44 Troubleshooting License Server cecccsseesesseessecseceseecseeeeeeeseeeseeerenseensees 46 Checkout LicenseS 4 s tacckicisiarce nad ot oh wide ina kee SE 48 Quickstart 53 Tutofal oee ial ts ages etait ETAR E E elena ees ks 53 Start Tessy and Create a New Database cccccecseeseeesceseeceseeeenseeneeeeeenes 54 Create a Project a Module siccicc sccceccdscs cccesccece beediacs cae cendines coveacuieedideeeetee dence 57 Specify Target Environment cccccccccseesceesceesceeeeeeeeeeceeceecnsecnseenseenseenes 59 Add Source File pinoia EER hh eee debian eee 60 Open the Mod le onseren E Ba a Rives a eee 62 Edit Test Object Interface inoren E ee ane 63 Enter Input and Expected Values ccccecccssesseessecseceeeeseeeeeen
291. rt e 289 Creating Reports Lays Testcase Definition is_vaiue_in_range rath If you don t want to insert graphics please choose Details Without CTE Graphics from the Create Test Report dialog s Generating a Report after a Test Run Test Cases The Details layout of a report lists all test cases and test steps in their respective tables regarding their test step numbers A green tick or a red cross will indicate whether a test step was successfully executed or failed Result mia AA Testcase 1 Simple Specification Range Start Positive Range Length Positive Position Inside Position in Range Middle 1 range_start 10 1range_len 20 1 15 is_value_in_range yes yes Y test passed 290 e Test Report Testing of Embedded Software Tessy 2 9 Creating Reports aa TY Testcase 8 Special Specification Range Start Positive Range Length Negative Position Inside Position in Range Middle Teststep 8 1 1range_start Lrange_len 1 is_value_in_range test failed The previous or next arrows will direct you to the previous or next failed test step The rows of the test step table will be marked in red if an Actual Value didn t coincide with the Expected Value for the given Evaluation mode Not executed test cases will be displayed in yellow and have no tables attached ee T i Testcase 3 Specification Range Start Zero Range Length Positive Po
292. ry contains the time step where this call occurred the expected call trace entry shows the expected time frame period Call Trace rossed_25 60 ms 1 crossed_25 20 80 ms v rossed_50 50 ms 1 crossed_50 20 50 ms 1 v rossed_75 30 ms 1 crossed_75 20 30 ms 1 v 356 e Component Test Testing of Embedded Software Tessy 2 9 Evaluation of Scenarios The table below shows the possible evaluation results for the call trace of the example calls to function crossed_50 and crossed_75 Time step Result for call to Result for call to crossed_50 crossed_75 40 ms 40 80 ms 40ms Ok Ok 50ms Failed Ok 60ms Failed Ok 70ms Failed Ok 80ms Failed Ok 90ms Failed Failed If you need to check the exact calling sequence you should set the time frame to zero Other functions called in between the expected function calls are ignored On the other hand the time frame provides you with a powerful way to describe expected behavior of the component without knowing details about the exact implementation Checking that a Function is not Called You may check that a function is not called within a given time interval The example below checks that the function crossed_75 is not called within 100ms after the stimulation of the component by setting the Expected Call Count to zero Testing of Embedded Software Tessy 2 9 Component Test e 357 Evaluation of Scenarios ry Initialization 9 Normal Oper
293. s Enumeration Types For the input values of enumeration types e g enum variables you may select one of the defined enumeration constants from the combo box Testing of Embedded Software Tessy 2 9 Enter Test Data e 237 The Test Data Editor TDE You may also directly enter the name or a numerical value for the enumeration type RA Parameter o E Enumerator Choose the name from the list Th Parameter Q enum tag_enum Enumerator or enter a numerical value for the constant This will cover the case if an undefined constant is given Edit Structures and Unions Structures struct and unions union are processed as structured types in the TDE If you browse open them the components of the struct appear in the next structural level The values for the components are entered like normal interface elements of the according type There is no possibility to enter values for the structure itself Only unions have active components in the combo box If there is more than one component available the selected component will turn sensitive while the other components turn insensitive Globals 2 intINT You can only enter values for the active component of Unions All other components cannot be selected because they are insensitive 238 e Enter Test Data Testing of Embedded Software Tessy 2 9 The Test Data Editor TDE Arrays Arrays will be displayed as a single entry with one or more inp
294. s Specify Central License Server on page 41 The process running on host is not a valid license server Upon a license request of a client machine the central License Server on your network server tries to resolve the name of the client using reverse lookup In case that reverse lookup is failed e g your server is not in the same domain network as the client the license server will not be able to provide a license for the client In that case you have to set the following environment variable for the central license server on your network server to solve the problem FLSD_FLAGS no dns License key file is invalid by using NAT In computer networking the process of network address translation NAT involves re writing the source and or destination addresses of IP packets as they pass through a router or firewall This will cause different IP addresses and the local license manager doesn t accept the license file which has been sent by the central license server upon a request of Tessy To use NAT with Tessy you have to set following environment variable on the client machine FLSD_FLAGS enable nat Alternatively you may also use the following option in the configuration file of the license server fls conf Testing of Embedded Software Tessy 2 9 Installation e 47 Registration Server EnableNat 1 Note You will find this configuration file for each user under APPDATA Razorcat fls config
295. s or choose only one kind of interface element from the respective sub menu e g Globals File Assign Search Options Help TA By Name Parameter gt By Position Tes Struct Union Members gt By Type New v Assign Globals in all Testobjects Deassign all Testing of Embedded Software Tessy 2 9 Regression Testing 323 Performing Regression Testing Specify Options for Automatic Assignment The options menu allows you to set options for the automatic assignment of functions and interface elements Functions Tab The following options are available from the Functions tab x Functions Interface m Function Assignment V Automatic Assignment of Functions on Start Cancel I Sort after Assignment Action on Interface Differences C No assignment Try auto assignment Save as default Function Assignment Panel e Automatic Assignment of Functions on Start IDA will attempt to perform an automatic assignment of functions and interface elements whenever started e Sort after Assignment The list of functions will be automatically sorted after each assignment Action on Interface Differences Panel One of the following two options can be selected for the interface assignment of an individual function e No assignment IDA will not assign any elements Each element will mark by a warning sign to indicate that 324 e Regression Testing Tes
296. s Floating Menu Done Detailed information about test cases Note The test case is a container of test steps and contains at least one test step The next picture shows the summary of each test case e Input values 5 6 22 25 e Actual values yes e Expected values yes e Result of the test run Specification The actual value after test run yes must be equal with the expected value yes Result As the actual value and the expected value are equal the result of the test is v 74 e Quickstart Testing of Embedded Software Tessy 2 9 Tutorial eS TS Test Report Rowe Menu B f Testcase 1 Lg Teststep 1 1 hw Goto Top Name ved by verge Aal Valwe Evalempected Value Result s_line_covered_by_rectangle yes yes v il Expand All Collapse All Help Home Frames No Frames Floating Menu Done Open TDE For a fast view on your test results especially if test cases not have been executed successfully you can simply open the TDE e Double click the test case or choose Edit Testdata from the context menu The TDE will open Testing of Embedded Software Tessy 2 9 Quickstart e 75 Tutorial F TOE IsLineCovered is_line_covered_by_rectangle 1 1 ioj x File Edit Search Tools Options Help EE zza ede al T ah z Description E Specification expected value CU Globals Et Parameter Eh sy struct Rectangle rectar
297. s may need to be adapted to your needs i e the installation path of the compiler or target debugger is one of the settings that normally need to be changed to your local values Settings for compiler and target environments which have already been used with a previous version of Tessy were also taken over during installation The TEE configuration management allows you to create variants of compiler and target settings and assign them to a module You may also save your settings in a specific configuration file to use this file with a given project database This allows easy sharing of specific environment configurations between developers of the same development team As a result you have all your basic settings at one central place e g include paths additional compiler options etc Once configured you may start testing immediately using the required configuration for all your modules Testing of Embedded Software Tessy 2 9 Tessy Environment Editor TEE 125 Starting the TEE Important note TEE provides only predefined configurations for all supported compiler and target environments We recommend checking these settings for your specific environment e g linker files project files makefile templates Starting the TEE We recommend starting TEE from within Tessy by using the Options Edit Environment menu if a project database is open This ensures that TEE also uses the so called PROJECTROOT from the project database if spe
298. s similar to those offered for an individual test run see Setting Test Options for details Following additional options are available e Check Interface The interface checking will be omitted if the check box is disabled e Generate a Report The report will be generated for the entire batch test run e Test Cases Only the first the last or all test cases will be executed 272 e Running a Test Testing of Embedded Software Tessy 2 9 Batch Test 5 Test Objects Options Test Report Execute p ey H il r Actions Check Interface M Generate Driver M Execute IV Generate Report r Instrumentation None x r Test Cases First Test Case Last Test Case All Test Cases IV Create Logfile Tip You may choose only Generate Report to create a batch report without running the test again The current results of all previously executed tests will be used for report creation This is useful if you ran a batch test and some test objects or modules failed to execute You may then just run the not executed tests again start them manually and create a report for the whole batch test afterwards Note Unlike previous versions of Tessy v2 3 and earlier the Execute Testcases Separately option has been removed from this dialog The batch test will now use this setting of the Execute Test dialog for every test object individually because this settings is now stored for each te
299. s the appropriate CTE document for the respective test object automatically The CTE document will always be stored in the module directory After you have carried out changes in the CTE document you must synchronize the test database of Tessy This mean you must export the test items a second time s Export Test Items to Tessy Status of assigned Variables The status of an assigned variable is indicated by a colored dot on a classification tree element Following states are displayed Status Description A variable was assigned no value was specified or values are not complete s gray Assign Values to Variables 186 e Edit Test Cases Testing of Embedded Software Tessy 2 9 Insert Test Cases Manually yellow A variable was assigned a value was specified CTE was not launched by using Tessy s Open the CTE Or a variable was red assigned but is no longer valid e g has been removed from the source code Representation of Test Results As soon as a test was carried out in Tessy the results for every test case appear also in the CTE A test case is marked be a green tick if the test has passed A red cross will indicate that the test has failed Uv 1 Simple Ov 2 By 3 Ox 4 uv Length 0 Ox 6 Insert Test Cases Manually Tessy provides an interface to create test cases respectively test steps manually without the need to use the Classification Tree Editor CTE This is useful for simp
300. s the relation between the total numbers of branches of the currently selected function compared to the number of reached branches This coverage calculation includes the currently selected test cases and test steps within the Testcase Teststep list By default all test cases are selected when opening the CV Branch Coverage for selected Test Steps If you select individual test cases or test steps within the Testcase Teststep list the respective branches covered by those test steps will be highlighted in green within the flow chart This allows finding out the execution path of the selected test step By selecting multiple test steps you may review the resulting cumulated branch coverage within the flow chart The Total Coverage number will also be updated with the C1 branch coverage for the selected test cases test steps MC DC Coverage View The MC DC Coverage view displays the coverage of the currently selected decision within the flow chart view If no decision is selected as initially when starting the CV the MC DC Coverage view is empty Testing of Embedded Software Tessy 2 9 Monitoring of C1 and C2 e 307 MC DC Coverage View When selecting a decision the respective combination table according to the MC DC coverage definition will be displayed within the MC DC Coverage view like shown below The example decision consists of 4 atoms All condition combinations are fully covered by the sample test steps 0 false 1 true
301. se please choose the Sources tab of the module properties menu e To enter source files for the module please click on Browse 4 file selection dialog will appear Module Properties x General Sources Linker Attributes Comment p Source Module Bj Environment Is Select Source E 2x Look in source Bek tne coveede OR Includes te Flesottype Sorco Fies o m a e Please select is_line_covered c from C tessy source and click OK You will now see the selected source file in the Source Module pane Please notice that Tessy has used the project root rather than the absolute path to the source file Moute Properties General Sources Linker Attributes Comment Linker T r Source Module Environment Cancel IsLineCovered B PROJECTROOT source is_line_covered c r Compiler F Change local Includes Defines f Options f Settings f At the moment we don t need to use the other tabs Linker and Attributes nor the Testing of Embedded Software Tessy 2 9 Quickstart e 61 Tutorial special tabs Includes Defines Options and Settings s Module Properties Click OK to close the dialog Open the Module Double click on module IsLineCovered or click the plus sign Tessy will preprocess and analyze the source file s The module will open if no errors appeared After this processing all functions which were defined in the source
302. sed on any computer on the network The number of users who can use the software simultaneously is determined by how many licenses you have purchased A license manager running on the license server keeps track of the number of users You may also check out licenses for computers that don t have access to your network e g notebooks while traveling see Checkout Licenses on page 48 e Please read section Specify Central License Server on page 41 if you want to use a floating license from an already installed license server within your company e Please read section Install Central License Server on page 41 if you want to install a central license server in your network e Ifyou need a license key refer to section Request License on page 37 36 e Installation Testing of Embedded Software Tessy 2 9 Registration Node Locked License A node locked license can be installed on a local license server in conjunction with Tessy and CTE A node locked license operates only on the particular machine for which the license is issued e Please read section Install Local License Server on page 39 if you want to install a local license server on your computer e Ifyou need a license key refer to section Request License on page 37 Request License The license key for Tessy and CTE is issued for one specific PC or network server and can only be used on that particular machine For floating licens
303. seeeeeesrenseensees 65 Execute Test Rum nnne eE chvnvelescoswo ET EEE 70 Evaluate Testerenin niga ts E ea E A ee ae 72 Test Organization 77 Databases c iisii potion ie een braves cess cpus a a song 77 The Project ROGt va c iicccccevececccsscesceeeteececlibcc ves cckcose dese oti i i es 77 Creating a Project Database cccceccceseesceeseeeseeeeeeseeeeeeeeeeeeeeeeeeseeneeeseensees 79 Opeta Database iccicccs lish nnn ves ccucesk dass otk i 83 Clos a Database scciic cscosecccceeeeheete ei eai a iat 88 Delete Databasen einet e E 88 iv e Contents Testing of Embedded Software Tessy 2 9 Contents Creating a Project csciseciccesecskesseeies hevsecveseoecczeeeeeetese Add a Project jivi cccciie cette eeiiec denied inccweeneenvenk Open a Proj ects ccsscc nce ee eh nienie Rename a Projectin oriee eke Delete a Pr j Cteronnranieron i a Creating a Modul sasccnnronriieinieiisii res Add a Modules iiinn Rename a Module cccecceesceeseceteceeeeseeeseeneeeneeeaes Copy and Paste Modules ecccesceessesseeseeereeneeenes Save a M d ul k ecni inene mi aai ii Restore a Module s sssnssseesseserseeseeeessrereseeeesseereses Reset a Mod le ices esau nnn aea a Delet a Modules a Specifying the Test Environment essssessseseeereeesee Module Properties nsciis i in General Tab nrinn a ost a eee Sources Tab enra a eis s Linker Binary Tabee nieri pat Attributes Tab eien a aa aia Comment Tabrani oe he a
304. sing the TS_CALL_ COUNT variable as index Subsequent calls to the stub function will return one element of the array after the other Note When using the TS_CALL_COUNT as index into an array don t forget to substract 1 because TS_CALL_COUNT starts with 1 and not with 0 as required for C indices The data type of TS_CALL_COUNT is 8 unsigned char by default You may enhance the size to 16 unsigned short or 32 unsigned long within the environment editor by using the Call Count Size attribute Testing of Embedded Software Tessy 2 9 Edit Test Cases e 201 Usercode Using Eval Macros Within the test step epilog or within stub functions you may evaluate any variable or expression using the Tessy eval macros These predefined macros allow to check an expression against an expected value this may also be an expression The result is stored within the test report like the evaluation of normal output variables of the test object Eval macros may be used within the following Usercode sections e test step epilog e stub function code Fjusercode Editor EvalMacroInStub message_handler i File Edit Tools Uatt 24 B 48 Stub Functions oid send _ message void data unsigned int size ED Testobject B41 sf Bis 2 B21 TESSY_EVAL_S8 TESSY_EWAL_U16 TESSY_EVAL_516 TESSY_EVAL_U32 TESSY_EWAL_S32 TESSY_EVAL_U64 TESSY_EVAL_S64 TESSY_EVAL_FLOAT TESSY_EVAL_DOUBLE TESSY_EVAL_LONGDOUBLE A context menu within
305. sing the Dimension option of the Create Target dialog You need to tick the check box for As Array of Size to enter an appropriate size into the input field Click OK Globals gt ian a Parameter Name Bi Dynamics tL AStiing Cancel r Dimension ance IV As Array of Size g The name of the new object appears in the field next to the pointer TDE will create an array of the pointers target type The pointer will point to the first array element 244 e Enter Test Data Testing of Embedded Software Tessy 2 9 The Test Data Editor TDE Globals char AString Lasting ah Parameter E B Dynamics char t_AString 5 chart _AString 0 char t_AString 1 char t_AString 2 char t_AString 3 char t_AString 4 eo Within the Dynamics section you will see the newly created target object Next to it you can enter values like for every other interface element Important note TDE doesn t support to create target values for void pointer In this case you have to use the usercode editor UCE to provide an appropriate target value Using Symbolic Constants TDE will be able to use defines of constant values as symbolic test data e Select the variable and press the Space bar e Choose one of the constants from the list or type the initial letter and the following of the constant in the field This will direct you to the first hit
306. sition Inside Position in Range Upper Border not executed Navigate Through the Test Cases The navigation menu of the test report left hand window displays all executed and not executed test cases using a tree structure The green red icons mark the passed failed status of the test object Yellow icons indicate that the test cases were not executed By clicking on one item will display the corresponding test case test step part of the report in the right hand window Testing of Embedded Software Tessy 2 9 Test Report e 291 Creating Reports Menu The caption of the menu means the following a Teat e Expand all i beg Teststep r L g Teststep 1 2 Expands all test cases within the navigation H A Testcase 2 Mi Testcase 3 tree H A Testcase 4 H A Testcase 5 e Collapse All em Tesicase 3 Collapses all test cases within the navigation H A Testcase 7 A Testcase 8 tree i i ga Teststep 8 1 H A Testcase 9 H A Testcase 10 e Home b Goto Top Jumps at the top of the test report Expand All Collapse All Help Home Frames Frames No Frames Floating Menu Shows the test report with the test case test step navigation menu on the left side e No Frames Shows the test report without the test case test step navigation menu e Floating Menu Undocks the navigation menu and shows it in a separate window Simply click on the close window button of the navigation menu
307. ssary If already installed some or all of the installation steps will be omitted Setup will continue then with step Installing Tessy s below Abe InstallAware Wizard Application Requirements The Following requirements must be processed before starting setup Installaware e Click on Next to continue e Installing Python 18 e Installation Testing of Embedded Software Tessy 2 9 Installing Tessy Piitessy tnstalawore wizard TE Python Installation Folder Select folder where Tessy will install Python Destination folder for Python installation IC python22 Please note You may change the default installation path if you choose to show the Python setup dialogs by unchecking the above checkbox InstallAware lt Back next gt Cancel If you want to choose another destination folder please deselect Silently install Python Follow the instructions on the screen to complete the Python installation Note Other versions of Python could cause problems You may install Python 2 2 1 parallel to your installed version e g 2 4 e Click on Next to continue Testing of Embedded Software Tessy 2 9 Installation e 19 Installing Tessy Pitessy InstallAware Wizard BI x Installing Tessy Requirements The program requirements are being configured a Please wait while the InstallAware Wizard installs Tessy requirements This may take several minutes Status Insta
308. ssy will inform you if the limitation has been exceeded tsci information Condition with more than amp atoms 10 for MC DC evaluation skipped tsci Information Condition with more than 12 atoms 13 for MCC evaluation skipped You may increase the default values in the Tessy conf Help Options Edit Settings with the respective options TSCI_MAX_MCDC_ATOMS and TSCI_MAX_MCC_ATOMS But this will cause longer calculation time after test execution Setting Breakpoints If a test case returns an unexpected result debugging of the test object is possible by using the Define Breakpoint option 264 e Running a Test Testing of Embedded Software Tessy 2 9 Setting Test Options Debugger Define Breakpoint If this option has been enabled Tessy will define a breakpoint at the beginning of the test object during test run This will effect that the test run will be stopped after down loading the test binary into the debugger and running until the beginning of the test object code The Define Breakpoint option allows you to jump start into debugging and step through the test object for troubleshooting Note This option may not be available on certain target debuggers or emulators that do not support interactive debugging when running automated tests Run Test with Current Options You can start your testing immediately using the last settings of the Execute Test dialog by default e Choose Run Test with current Optio
309. st Data Editor TDE i Bite Module1 is_line_covered_by_recta File Edit Search Tools Options Help Cut Testdata Alt X Copy Testdata Alt C Paste Testdata AIE Delete Testdata Init Testdata Clear Testdata Actual gt Expected New Te Alt Ins Dele eststep 4 E Del Ls F y struct point p1 The TDE will automatically show the newly generated test step If there is more than one test step in your test case you may choose the appropriate one using the respective combo box Customer Testcase Delete Test Steps To delete a test step do the following e Choose the test step which you want to delete e g 2 e Select Delete Teststep from the Edit menu or use Alt Del Testing of Embedded Software Tessy 2 9 Enter Test Data e 225 The Test Data Editor TDE amp TDeE SineFunction calc_sine 2 2 File Edit Search Tools Options Help fq Ct Testdata Alt x S Copy Testdata Alt c D Spec Paste Testdata AITH medit Delete Testdata Init Testdata Clear Testdata SS Actual gt Expected New Teststep Alt Ins F Delete Teststep Alt Del Generate Teststeps ls 5 enum yes_no_t interpolate pes x Bi Dynamics TDE will delete the test step and the corresponding test data and dynamic objects to Note By default at least one test step will be left and cannot be deleted s Dele
310. st data for the new test cases see The Test Data Editor TDE e Ifyou click Yes all test cases will be moved into Tessy s test database Existing test data will be preserved e Ifyou click No you will cancel the operation Testing of Embedded Software Tessy 2 9 Edit Test Cases e 185 Systematic Test Definition Note Each exported CTE test case will create a Tessy test case with one test step by default You may add further test steps within Tessy if required Each exported CTE test sequence will create a Tessy test case with a corresponding number of test steps as of the CTE test sequence If you want to add further Tessy test steps you need to add them within CTE and export again Now you can close the CTE Select Exit from the File menu You will now be returned to the main window of Tessy Important note After exporting of test cases Tessy will copy the CTE document into the respective module folder and rename then the document in ts_the_testobject_name cte The CTE document must be stored in the module folder Synchronize CTE and Tessy Exported values for variables will be read only in Tessy Therefore you cannot change such values by using the TDE s chapter The Test Data Editor TDE You have to use CTE respectively the underlying CTE document to change exported values You have to start CTE from within Tessy otherwise the interface description of the test object will not be available s Open the CTE CTE load
311. st object individually Test Report Tab The Test Report Tab is nearly similar to those offered for an individual test run see Test Report for details Following additional options are available e Batch Layout Testing of Embedded Software Tessy 2 9 Running a Test e 273 Batch Test e Test Object Layout xl Test Objects Options Test Report Beste m Format J e r Style Open l Screen ha Save m Batch Layout e Multiple Documents z Save s m Testobject Layout Details Failed Testcases Only Details Failed Testcases Outputs Only Details Failed Teststeps Only Details Failed Teststeps Outputs Only J Details Outputs Only x m Output Directory C tessy report x El IV Create Logfile Note The batch test report will be stored in a directory tree corresponding to the projects modules and test objects executed during the batch test run The whole report structure will be created in a subdirectory that will be named using the batch test name Save and Execute Batch Test When you have completed all settings click on Save to save your settings to a file The Save Batch Description dialog will open fiessy Save natch oesaiion T Save in E tessy z e ex FE Save as type Tessy Batch Script tbs gt Cancel 274 e Running a Test Testing of Embedded Software Tessy 2 9 Batch Test e Enter a name and click Save By default
312. store module backup files tmb from Tessy 2 5 directly in Tessy 2 9 This is the fastest conversion method But you have two possibilities to perform the conversion Using module backup files recommended e Create a module backup file Module Save for each module which you want to use in Tessy 2 9 To restore all tmb files in Tessy 2 9 within their project folders please name the tmb file as follows project _name module name tmb e Save all tmb files in a folder of your choice e g tmb2 5 project_database_ name e Open Tessy 2 9 and create a new project database Adjust the project root configuration file etc so that the project settings are identical as in Tessy 2 5 s Databases e Select the backup folder using File Database Backup Backup Directory e g tmb2 5 project database_name e Restore all backup files using File Database Backup Select e Inthe Restore from Backup dialog choose all tmb files Tessy will now try to restore and to convert the tmb files Tessy creates also the respective project folder for the modules to be imported Using Tessy 2 6 If you prefer converting your Tessy 2 5 projects using Tessy 2 6 you have to open the respective project database in Tessy 2 6 Tessy 2 6 can be downloaded from http www razorcat com e Tessy will prompt you to convert the old database in the new format e Inthe next step you have to open all modules within Tessy 2 6 In this case only the data
313. sy The InstallAware Wizard will install Tessy 2 9 7 on your computer WARNING This program is protected by copyright law and international treaties To continue click Next lt Back Cancel e Inthe Welcome dialog click Next to continue the installation of the new version of Tessy e Follow the steps as described under Installing Tessy on page 16 Note Setup will always use the base directory of the first installed version of Tessy e g C Program Files Razorcat This base directory is not changeable The target environment configuration of an installed earlier version 2 9 x of Tessy is taken over by the installation of the new version of Tessy automatically if you start Tessy the first time If you have changed default files in earlier versions of Tessy e g make templates linker files etc you have to carry out these changes in Version 2 9 manually Tessy provides the so called Tessy Environment Editor TEE to configure supported target environments and compilers s TEE Modify Repair or Remove Installation If you run Setup once again and Tessy has been already installed you will see a dialog with the following options Testing of Embedded Software Tessy 2 9 Installation e 33 Installing Tessy lel Ee Pitessy InstallAware Wizard Welcome to the InstallAware Wizard for Tessy Please choose a maintenance operation to perform Modify Available Options GE Uninst
314. t them into Tessy In this case you should create a dummy test case initialize the values to zero using the init feature within TDE and export this test case You will end up with a perfect template file for this test object and you just need to fill in the input and expected values into the values sheet of the Excel file Important note You have first to initialize all test cases to be able to export test data To export or import test data of a test object do the following e Select one test object and one or more test cases from the Unit tab In case that there is no test case selected Tessy will export all test cases 42l e Click either the Import Export icon in the toolbar or choose Import Export from the test object s context menu FjDatabase C tessy Sample pdb eal Sample H Gy asap StubFunctions a Stubs a Addcompl a SE E GetMemor Edit InterFace D SetMemor Define Testcases H Aliasnames Bs SESH Shon Edit Usercode SFR_Handiing Execute Test Test Report Monitoring Edit Sourcefile Welcome to Tessy Properties The Import Export dialog will open Testing of Embedded Software Tessy 2 9 Edit Test Cases e 213 Import Export Eltessy Import emport m Filename Start gs Administrator Local Settings T emp AddT oMemory xls x cn Cancel Actions Conversion Import None e Export Convert to physical values Input amp Expect
315. te advanced stub For current testobject The function will then be marked by a red double arrow and a G to indicate the global setting of the advanced stub Testing of Embedded Software Tessy 2 9 Test Preparation e 171 The Test Interface Editor TIE TIE 32 _Stubs AddToMemory loj x Fie Search Options Help REA e E4 External Functions a add_values E a Parameter int add_values x Out he int add_values y Out hd int add_values result Jin gt 7 In0ut x 9 get memory set memory You may set the passing directions for parameters and the return value Note Remark the slight difference in passing direction semantics as follows The passing direction Out for a parameter means that the parameter of the stub function will be checked in the event of calling the stub function from your test object e g to check if the test object calls the stub with a specified value The passing direction In for the return value means that you need to provide the value to be returned by the stub function when called from your test object A pointer needs to have the passing direction In if you want to return a value within the pointer target which would result in passing direction In for the target If you want to check the pointer value of a parameter e g if the pointer targets a specific variable within the test object s interface then you need to set the passing direction to
316. te or Clear Test Data for a Test Step Delete or Clear Test Data for a Test Step You may remove the test data for a test step by using either option Delete or Clear Delete will completely remove the test data and dynamic objects target values of the test step e Choose Delete Testdata from the Edit menu 226 e Enter Test Data Testing of Embedded Software Tessy 2 9 The Test Data Editor TDE F TDE Simple Dynamic_IN_2int 1 1 15 x File Edit Search Tools Options Help By Cut Testdata Alt x Copy Testdata Alt C Spec Paste Testdata Aly Custe TDE Delete Testdata x 7 Delete testdata and all dynamic objects for this teststep Init Testdata Clear Testdata Actual gt Expected New Teststep Alt Ins Delete Teststep Alt Del Generate Teststeps B Dynamics long Target long Next alue a Parameter rus Return B Dynamics long Target2 If you click OK the test data and the dynamic objects will be removed F TDE Simple Dynamic_IN_Zint 1 1 5 x File Edit Search Tools Options Help Pal cf 22a ular al T ah al Specification Customer Testcase Parameter long FirstValue o long Dynintt long LastValue long Dynint2 long NextValue Dynamics ma Parameter rus Return B Dynamics Clear will only remove the test data of a test step but will keep dynamic o
317. te that You may change these default interface settings by using TIE s below e Click on test object is line covered_by rectangle and select Edit Interface from the context menu F Database C tessy Tutorial pdb E Tutorial Name Description specification Edit Sourcefile TIE Test Interface Editor e After configuring the test environment of a module you have to define the interface information for every test object using the Test Interface Editor TIE see next picture below The TIE works like a browser You can navigate through complex interface elements e g structures down to the basic data types specifying settings The interface Testing of Embedded Software Tessy 2 9 Quickstart e 63 Tutorial information comprise to determine the passing directions of interface elements e g input or output values as well as arithmetic values e g array dimensions or values of enumeration constants E TIE 32 IsLineCovered is_line_covered_by_rectangle lolx Fie Search Options Help esj al 2421 is_line_covered_by_rectangle GH Local Funct test object Bastien amp F External Var directions Global Variables E Parameter E struct Rectangle rectangle GI D struct Line line ER Return G p enum EE Declarations Unused lt External Functions 43 External Variables interface elements TIE Passing directions e On the right side there is a column with combo boxes indicating
318. ted Additionally every Type may have specific attribute flags This depends on the Type used Testing of Embedded Software Tessy 2 9 Tessy Environment Editor TEE e 149 Adding Editing Attributes The following table gives a brief description of these flags Flags Descriptions Inheritable This flag will always be ticked by default It controls the inheritance of the attribute The attribute will be available in all child section nodes Some basic attributes are defined at the main nodes e g Compiler Each supported compiler will inherit these basic attributes Validate This flag may be important for Directory or File types The attribute value will be validated by TEE e g whether the path respectively the file is available An error sign will indicate that the file or directory could not be found Read Only This flag makes it impossible to change a default value by using the attribute pane of the module properties dialog Always Valid internal flag of TEE As List Using this flag the attribute value will be handled as list of values comma separated The values may be edited using a special list dialog This is useful for File or Directory types Multiline Provides a text window for Multiline editing System internal flag of TEE Hex Format This flag is useful in combination with the Number type TEE will convert all inputs i e a decimal value to a hex
319. ter over the source code line to show the line number in a tooltip Coverage Statistic View CV displays the summary of the coverage for C1 MCC and MC DC in the Called Functions tab You may activate the view with the Show Coverage toggle button 312 e Monitoring of C1 and C2 Testing of Embedded Software Tessy 2 9 Coverage Report Views Fi tessy Coverage Yiewer ioj x File Chart Window Help Fuad Show Coverage at ojs oe az Called Functions gt O comm pack 28 7 O MCC Coverage a Coverage O L Pt eee rage MCDC E communication_handler v control_status Coverage 50 00 message _buffer st o 3 1 pack_yyy_data 1 E send_bytes 9 a C1 Coverage ca Total Coverage 50 00 En static_locals c MCC Report MC DC Report C1 Report B Message buffer busy if message_buffer state MSG SENT return taal yyy get raw data data amp size k ki fa A green tick in the C1 MC DC or MCC column indicates that 100 coverage has been reached N A indicates that the respective coverage measurement is not available for the function The gray red bar displays the currently reached coverage for the respective coverage measurement scaled in 10 steps You can move the mouse pointer over the bar to display the values as tool tip Coverage Report Views There are
320. ter the value of the enum constant manually within TIE 300 Syntax error in source file Use the Check Sourcefile s command from the context menu of the module 301 303 Internal errors Test 661 Error during test preparation Preparation The possible reason will be displayed before the error code The reason is dependent of the target used Testing of Embedded Software Tessy 2 9 Troubleshooting e 367 FAQ Unit Error Error description code Test 666 667 Error during test execution Execution The possible reason will be displayed before the error code The reason is dependent of the target used You may debug your test object Please use option Define Breakpoint in the Execute Test dialog for this purpose FAQ Errors While Opening a Module Problem Some error messages show up when opening a module Solution Such problems are either caused by erroneous compiler options or syntactical errors in the source file Use the Check Sourcefile s command from the context menu of the module to make sure that your source files compile correctly Check the messages in the message window and correct your source files if necessary Did you choose the right compiler The GCC GNU C Compiler doesn t understand certain target compiler types e g bit bitword etc Is the source file available Check within the module properties dialog whether the source files are really located in the specified
321. tessy T essp T utorial NewProject Comment Project Window Properties Pane Configuration PROJECT ROOT JT essy config configuration xml y You will also see the Messages Window of Tessy at the bottom of this main window The status bar shows the used Project Root and the used Configuration Create a Project a Module While creating the database a new Project folder called New Project has already been created You may create another project folder using Project New e Please change the name to Tutorial by using Rename from the context menu of the project folder Testing of Embedded Software Tessy 2 9 Quickstart e 57 Tutorial P patabase C tessy Tessy Tutorial pdb Delete N DELETE Add Module INSERT Paste Module CTRL Property Value Directory C Messy Tessy Tutorial T utorial Comment You may change project or module names by clicking twice on the name with a slight delay Project folders may contain one or several modules A module is necessary to add source files and to set the test environment Please add a new module to the project folder e Select the project folder and choose Add Module from the context menu or just press Insert F Database C tessy Tessy Tutorial pdb Value Rename C Atessy Tessp Tutorial Tutorial Delete DELETE Paste Module CTI ER Properties Peis sC lt CSstsS The color of the project icon will change to yell
322. test object using the Test Interface Editor TIE The TIE works like a browser You can navigate through complex interface elements e g structures down to the basic data types specifying settings The interface information comprise to determine the passing directions of interface elements e g input or output values as well as arithmetic values e g array dimensions or values of enumeration constants Testing of Embedded Software Tessy 2 9 Test Preparation e 155 The Test Interface Editor TIE F re 32 IsLineCovered is_line_covered_by_rectangle ol x File Search Options Help Bal Al zalza is_ine_covered_by_rectangle x amp Local Funct test object j Too directions Global Variables E RA Parameter gt struct Rectangle rectangle D struct Line line y Return gt enum Declarations Unused External Functions 4 External Variables interface elements Input values are all interface elements that have to be set before execution of a test object Output values are compared with the expected values after test execution Note For your convenience Tessy tries to analyze all interface objects while opening the module If no unresolved interface object has been found Tessy will open the test object clamp to indicate that s Automatic Analysis of the Passing Directions In so far as Tessy has not automatically set all interface information you have to set the
323. test objects by default You may disable this option by clicking the respective icon in the toolbar Note You can also assign a single old element to several new elements z Prl 322 e Regression Testing Jump to undefined values The Next Undefined Value and Previous undefined Value buttons can be used to jump to the next or previous new interface element that has to be assigned Both buttons become inactive as soon as all interface elements are assigned Automatic assignment Automatic assignment can also be performed on certain groups or kinds of interface elements Testing of Embedded Software Tessy 2 9 Performing Regression Testing e Choose an appropriate sub menu from the Assign menu File Assign Search Options Help Ta By Name Parameter Tes Struct Union Members gt By Type New v Assign Globals in all Testobjects Deassign Deassign all Note The option Struct Union Members of the Assign menu can be applied only to already assigned variables All options of the Assign menu are also available from the context menu on a selected interface element a float r By Type Undo Assignments To undo an assignment select the respective interface element and choose Deassign from the context menu x struct complex value__passed_to_SetNewMemory o float i aan gt You may also use the Deassign all option from the Assign menu to undo all interface element
324. the counter to a value greater than one will repeat the following sequence the specified number of times e execute the prolog C code and script code e call the test object e execute the epilog C code and script code Testobject Prolog Epilog Testcase Prolog Epilog Teststep Prolog Epilog Teststep 2 F Repeat Count J 21 aj This repeat count may be used to execute the test object several times with continuously changing input data like in the example below The input value signal initially set using the TDE will be incremented for each loop Example zioz Fie Edit Tools Bee DAR Declarations Definitions Testobject Prolog Epilog Testcase Prolog Epilog Teststep Prolog Epilog j a Teststep fi z Repo Court 170 B 1 Bais increment raw value Prolog og raw io In the same way you may assign calculated output values of your test object to other input variables within the prolog Repeat Test Object Execution Furthermore you are provided with a repeat count for the execution of the test object itself Without executing the prolog epilog This would be useful if you need to execute the test object many times with the same input values to reach a certain state of the test object e g for testing debouncing functions Syntax TS REPEAT COUNT lt Number of executions gt 198 e Edit Test Cases Testing of Embedded Software Tessy 2 9 Usercode
325. the passing directions of the respective variables The variables are either read within the function In written within the function Out both read and written InOut to be altered by Usercode Extern or they are simply not used within the function Irrelevant Upon opening the module Tessy will try to set the default passing directions automatically You may change these default interface settings to your needs TIE Interface Objects Please have a look at the several sections on the left side of TIE e Section External Functions In this section you will find all called functions of the test object These functions are not defined within the source file s of the module 64 e Quickstart Testing of Embedded Software Tessy 2 9 Tutorial Section Local Functions In this section you will find all functions defined within the source file s and called from the test object Sections Global External Variables The next two sections list the external and the global variables The External Variables are all used variables which are not defined within the source file s of the module Section Parameter In this section you will see the Parameter of the test object Our sample test object has two structures Line and Rectangle You can browse through these structures by clicking on the plus sign to see the basic components Section Return In this section you will see the Return value of the test object In ou
326. ting of Embedded Software Tessy 2 9 Performing Regression Testing e Try auto assignment IDA attempts to assign interface elements according to settings within the Interface Tab Interface Tab The following options are available from the Interface tab IDA Options xj Functions Interface r Show Interfaces C All Incomplete Cancel m Auto Assign Globals Parameter by Name by Name by Position by Position by Type C by Type Struct Union Members Enum Constants by Name by Name by Position C by Position C by Type IV Assign Globals in all Testobjects IV Save as default Show Interface Panel With these options you can decide to keep all interface elements visible within the Interface window after completion of the assignment e All All interface objects will be visible e Incomplete All interface objects will be disappeared on tab changing Auto Assign Panel These options allow you to set the rules for the automatic assignment of interface elements Click OK to accept the settings made Ensure that the check box Save as Default is selected so that the new settings will remain effective for subsequent starts of the IDA Accepting Changes and Exiting IDA To commit your assignment Testing of Embedded Software Tessy 2 9 Regression Testing 325 Performing Regression Testing g Click the Commit Assignment symbol or use Ctr1 E to accept settings for the new interfa
327. ting of Embedded Software Tessy 2 9 Enter Test Data e 255 The Test Data Editor TDE Y int b_torque_limit a unsigned u_thi jen T Parameter Actual Value 80 Adopt Test Results as Expected Values TDE provides an option to take over actual value as expected value from the last test run You may assign actual values for a single variable or the whole test step e Select a variable and Choose Actual gt Expected from the context menu TDE will use the actual value as expected value Globals a Parameter E AR Return signed char jaca ij5 A Dynamics Cut Value Ctrl x Copy Value Ctrl C Paste Value Gey Undo Ctrl z Ignore Value Ctrl I Enter Character Mode Assign value to all Testcases Assign eval mode to all Testcases e To take over actual values for the whole test step choose Actual gt Expected from the Edit menu A dialog will indicate that your expected data will be overwritten TDE Copy Actual Data x This Operation overwrites all expected data of this Teststep Do You wish to continue c If you choose OK TDE will take over the actual values as expected values into the expected values fields 256 e Enter Test Data Testing of Embedded Software Tessy 2 9 The Test Data Editor TDE Copy and Paste Test Data Cut Copy and Paste are functions that allow you to move or copy test data from one test step variable structure and array etc to another on
328. tion default is 1 e Optionally a period of time the time frame from that starting point where the invocation of the function call is still successful with respect to the expected behavior of the component Both these settings are available for each expected call to an external function The time frame is zero by default indicating that the expected function call shall take place within the same time step Testing of Embedded Software Tessy 2 9 Component Test e 355 Evaluation of Scenarios C3 Initialization C2 Normal Operation so 7 Z CHIEN O INIT 0 ms 23 set_number value 80 10 ms GY 20 ms 2 crossed_25 20 80 ms EB crossed_50 20 50 ms B crossed _750 20 30 ms End of Scenario 120 ms Properties _ T5 Actual Call Trace zaop zoo Function crossed_25 Expected Call Count 1 Time Frame 60l If you specify the time frame as 60 like within the example above this indicates that the expected call could take place within time step 20ms 30ms or up to 80ms to be successful In the example above you can see that there are three different function calls checked within the same time step but with different time frame values The exact sequence of the calls to those functions will not be examined any of them may be called within the given time frame interval The report shows the result of the evaluation of the call trace for the example above The actual call trace ent
329. tions of their components To avoid invalid combinations the TIE checks the setting of passing directions for these data types in the following manner e When the passing direction of one component is set TIE determines the resulting passing direction for the overall structure union and set them automatically Testing of Embedded Software Tessy 2 9 Test Preparation e 165 The Test Interface Editor TIE e When the passing direction for the overall structure is set all components are automatically set to the same passing direction Arrays The passing direction of the data type Array will be set for the entire to the same direction For the data type Array only one passing direction will be defined for the whole array All array elements have the same passing direction If the array is made up of structured array elements e g structures it is possible to define different passing directions for the components of these structures Enter Array Dimensions and Constants For test execution the information on data types of the test object interface has to be complete The dimensions for Arrays the values of the enumeration constants for Enumerations and the dimensions for Bitfields have to be defined If these values have been automatically recognized by Tessy while opening the module the respective text field will show the calculated value for every data type In this case there is no need to changed these values sy struct moti
330. to switch it back into the main report window e Help Open a support request form requires an internet connection One of our Razorcat team members will contact you promptly Test Reports with Results Plots The Result Plot integration allows to graphically visualizing the test results This feature requires no further software to be installed e g MatLab but the special evaluation modes for result plots to be used s Enter Evaluation Mode The preparation of a report with result plots takes place in the same manner as described before In addition result plot reports contain graphics of the result plots and additional icons in the navigation menu 292 e Test Report Testing of Embedded Software Tessy 2 9 Creating Reports Menu m Testcase 1 ie Goto Top A green or a red graphics icon will indicate whether a test case was successfully executed or failed Clicking on a graphics icon will display the corresponding result plot graphic in the right hand window of the test report Example Testcase successfully executed Teststep 1 Testcase Result Plot 150 0 100 0 50 0 0 0 100 0 150 0 Example Testcase with failed test steps Testing of Embedded Software Tessy 2 9 Test Report e 293 Creating Reports 180 adian_value yes interpolate icalc_sine o 5 1 Testcase Result Plot Variable calc_sine for Test Case 3 00 50 0 Expected
331. tool tip ri range_start 10 Testing of Embedded Software Tessy 2 9 Edit Test Cases e 183 Systematic Test Definition Note If you assign a variable to a classification element all connected classes will inherit the variable and an assigned default value too You may assign a specific value for every connected classes This will then overwrite the default value that has been assigned to a classification if any If necessary you may assign a variable and a value only to a class If a tree element is selected to specify a test case within the combination table e g Positive s picture below the respective value will be used for export to Tessy s Export Test Items to Tessy EA Classification Tree Editor ts_is_value_in_range cte Tessy Document are x A Zs Fie Edit Search View Options Window Help oley 4 ae sl xeleed Sal wa Aaaa aja ci cit Range Length Aa 10004700 Modified Export Test Items to Tessy You can directly export all created test items into Tessy s test database CTE will export all specifications and values for variables if used Important Note Please make sure that you have the appropriate test object selected within Tessy CTE will export the test items to the currently selected test object To export test items to Tessy do the following 184 e Edit Test Cases Testing of Embedded Software Tessy 2 9 Systematic Test Definition e C
332. ture allows creating calling scenarios of functions provided by a software component Within these scenarios the internal values of component variables and any calls to underlying software functions may be checked Tessy provides the scenario editor SCE for this purpose All scenario related inputs are available through the SCE Instead of having individual test objects and test cases for the component functions the component test itself provides a special node Scenarios seen as one test object The test cases belonging to the Scenarios node are the different scenarios for the component Within one scenario you may set global input variables call component functions check the calling sequence of underlying software functions and check global output variables The content of each scenario may be divided into the following parts e Setting the global input variables using TDE e Calling component functions using SCE Testing of Embedded Software Tessy 2 9 Component Test o 335 Component Test Modules e Checking calls to underlying functions using SCE e Setting checking variables during scenario execution using SCE e Executing usercode and eval macros using SCE e Checking the global output variables using TDE The normal Usercode Editor UCE is not available for component testing because the prolog epilog code and definitions declarations sections may now be edited directly within SCE You will find C Code Fragments that may be
333. uct point rect_p enum 2 int width l Dynamics intheigth GI p struct Line line B Dynamics The interface elements are structured into the following sections g Global Variables Variables referenced by the test object either locally defined or external This section also contains global static variables and static local variables defined within functions 220 e Enter Test Data Testing of Embedded Software Tessy 2 9 The Test Data Editor TDE RA Parameter Parameters of the test object R Return Return value of the test object Dynamics Represent pointer targets referenced through a pointer of the test object interface see Pointers Each section node holds its respective interface elements as child nodes if any You can open a section to browse through the interface tree Note You may expand collapse all items of a subtree if you right k click a section or one other node in the tree The browser for input values and expected values is vertically divided into two parts for each set of values e The left window is used to specify the input values of the test object e The right window specifies the output respectively the expected values and the evaluation mode You will find a structure icon in front of every element when you open a section node of a browser The icons are explained in the following table The elements of different levels can be recognized in the browse
334. unction 54 No name space 55 Parse error 56 Static name too long IDB 101 111 Internal errors 150 Preprocessed source file not found probably due to preprocessing errors Use Check Sourcefile s from the context menu of the module to use the cross compiler 151 Preprocessed source name too long 152 154 Error reading preprocessed source file Check the permissions of the module directory and the source file 170 177 Internal errors 200 Bad type definition 201 Multiple declaration of tag names 202 Bad usage of tag names 366 e Troubleshooting Testing of Embedded Software Tessy 2 9 Error Messages Unit Error Error description code 203 Unknown tag name 204 Multiple declaration of type names 205 Could not calculate bitfield size You need to enter the size manually within the TIE 206 Bad type for bitfield Check the compiler settings e g the gcc allows only signed and unsigned for bitfields 207 Multiple declaration of symbol 208 Bad initializer for array dimension 209 Error in function definition Check the compiler settings This indicates an error with a certain compiler specific keyword Contact suppport if Check Sourcefile s command from the context menu of the module succeeds 210 Multiple definition of function 211 Could not calculate array dimension s You need to enter the dimension size manually within TIE 212 Could not calculate enum constant You need to en
335. up files All other files and subdirectories may be removed from the module folder lt project database name gt pdb Project database contains information about projects and modules lt module name gt database Contains all files relevant for the module e g interface database test database usercode files CTE files Files outside the Module Folder The key part of any Tessy database is the project database pdb file The project database file contains the Meta data of projects and modules as well as information on the test environment used source files compiler debugger etc This file should reside within the PROJECTROOT directory and it should also be saved into your version control system Backup files of the modules within the project database may be saved and restored like described in Test Database Backup The Tessy Environment Editor specifies all settings which are relevant for your target environment The files which must be stored depend on the compiler target e g some of the following e Makefile Template e Linker File e Project Files for the debugger e Libraries You should copy such files in a separate folder within your PROJECTROOT directory and reference the files within TEE from this project specific location instead of the default location within the Tessy installation In this way these files may also be stored in the version control system You should also create a sp
336. up to three coverage reports available depending on the instrumentation mode selected for test execution They contain the summarized coverage information of the last test execution The C1 coverage report contains some meta information e g number of branches reached branches total branch coverage and the source code of the test object as well as of all called functions if applicable with the branch counters added in a separate column on the left side of the document Testing of Embedded Software Tessy 2 9 Monitoring of C1 and C2 e 313 Coverage Report Views e The MC DC coverage report lists all decisions of the test object code as well as of all called functions if applicable including the coverage tables with the respective MC DC condition combinations e MCC coverage report also lists all decisions of the test object code as well as of all called functions if applicable including the coverage tables with the respective MCC condition combinations These report documents are already available as ASCII text files within the module directory of the respective test object after the test run The report files are named like follows ts_cl_ lt test object name gt _report txt ts_c2_mcc lt test object name gt _report txt ts_c2_mcdc lt test object name gt _report txt The CV displays these reports for convenience and provides a save operation to store a report as text file within another location than the default module directory
337. uration xml Specifies a configuration xml which was stored in your network The syntax is as follows lt xml version 1 0 encoding ISO 8859 1 gt lt link target PATH configuration xml gt Note We recommend to use a custom configuration file instead of a configuration file in your network s Creating Configuration Files This is still backward compatible with former versions of Tessy All Users SALLUSERSPROFILE Application Data Razorcat Tessy Version c onfig e configuration xml Contains settings for this section if any User SAPPDATAS Razorcat Tessy Version config e configuration xml Contains settings for this section if any e configuration system xml Contains all your changes made in the General and Configurations sections if you don t have enough privileges restricted user to change the system configuration file of the Tessy installation Another User account on the same computer will not be updated Testing of Embedded Software Tessy 2 9 Tessy Environment Editor TEE e 131 Starting the TEE Using Default Configurations TEE provides predefined configurations for all supported compiler and target environments You will find these configurations in the Configuration section under System The settings of these combinations are inherited from the General section By default at least the GNU GCC GNU GVD Default Environment will be enabled and all your compiler
338. ut fields next to it Each of these input fields represent one dimension of the array e g you will see two input fields for a two dimensional array p Globals B char aaf3 2 i o Ro Parameter To enter data for a specific array element e Enter the indices of the array element into the input fields and press Return The array element will now have a child entry for a specific array location Globals zy y char aa 3 2 fi o o MEEL Ro Parameter e Enter an appropriate value Tip When you have defined a value for an array element press Ins to return to the first array dimension field Now you can enter the indices for the next array element By default TDE shows always the first array element even if it is empty You can remove this setting using Show first array element from the Options menu Note Choose Save as Default from the Option menu to preserve your setting Show all or only defined array elements If you want to display all array or only defined elements do the following Testing of Embedded Software Tessy 2 9 Enter Test Data e 239 The Test Data Editor TDE e Select the array name and choose either Show all Elements or Show defined Elements from the context menu Globals a Parameter char anasl25 D chararay 0 Show defined Elements be 2 D Show Elements ynamics Gut Value Gtr Gtr C Paste Yalue Ctrl y Ignore Valu
339. ute the test using the Execute Test button within the Tessy toolbar The result status of the scenarios after test execution will be shown within Tessy as well as within the SCE File Help 2 Scenario Project E Declarations Definitions Stub Functions EB crossed_25 B crossed_50 EB crossed 75 5 0 Scenarios amp 1 Initialization i amp 2 Normal Operation 3 234 File Tools Options Project Module Testobject View Window Help slala 4 Data Usercode ResultPlots E StaticLocals C ComponentTest DecrementHandler Beenarios Hey m Testing of Embedded Software Tessy 2 9 am 42 fanal Component Properties j Component Test e 341 Editing Scenarios within SCE Please note All scenarios may be passed within SCE while the test cases showed within Tessy may be failed due to test data checks In this case you will see all scenarios within SCE in green passed and the respective test case s within Tessy in red failed Editing Scenarios within SCE The list of scenarios within Tessy may be edited using the scenario editor SCE After completing the interface settings you may edit the test cases for the component i e test scenarios amp Tessy File Tools H ow P m tions Project Module Testobject View Window Help Op ol amp G eH The Edit Scenario toolbar button will open
340. value_in_range PROJECTROOT scr is_val_in_range c File PROJECTROOT scr is val in range c erence Test Results 9 5 2006 9 26 41 AM Comparison Test Results 9 20 2006 1 37 26 PM You may use the Jump to next differe 330 e Traceability of Test Changes nce button to navigate through the project tree Testing of Embedded Software Tessy 2 9 Diff Viewer Ppitt Viewer File Edit Help eed2ump to next difference 5 Gea _Sample 5 Gay IsValueInRange B SD is_value_in_range a m 1 H m 2 Create Snapshots At any point in time you may create a Snapshot of a test result This may be suitable if you have disabled the automatic feature of Tessy s Automated Collecting of Test Results e Select a test object and choose History Snapshot from the context menu Take Snapshot is_value_in_range 2 x Snapshot Name after reuse Cancel e Enter a name and click OK Clean History Every test result will be stored in the history folder of the module in a separate xm1 file You may remove the history of test results if you have finished your tests To clean the history Testing of Embedded Software Tessy 2 9 Traceability of Test Changes e 331 Diff Viewer e Select the respective test object and choose History Clean _Sample IsValueInRange p ners Import Export Edit Interface Define Testcases Edit Testdata Edit Usercode Execute Test
341. will be instrumented with a counter to monitor how often a branch of the program is run through CTE Classification Tree Editor Defined A new variable is introduced in the source file Declared The name of a variable is declared in a source file The definition of the variable takes place in another source file or in a library Expected Values These are the values that are expected to be calculated by the test object The actual values are checked against the expected values after the test run Glossary IDA Interface Data Assign editor If the interface of the test object has changed you can assign the new interface to the old interface Your test data will be assigned automatically Input Values Function parameters global and external variables which have effect on the behavior of the function Interface Description Information about the passing direction and usage of interface elements parameter global variables and function parameters These settings are made within TIE is_line_covered_by_rectangle The function which is used in the tutorial It tests whether a given line is covered by a given rectangle Module A module contains source files compiler settings interface description and test data You can pool modules in projects Output Values These are the return value global and external variables which are changed by the test object They are evaluated against the expected values after t
342. y The number of repetitions can be specified in the user code prolog of a test step see Repeat Test Step Prolog Epilog Execution e You can edit user code directly using Edit Usercode from the Tools menu or click the respective icon in the toolbar Tessy will use the same input values for each repetition Only the actual values of the last repeat cycle will be stored to the database Edit Input and Expected Values The interface settings carried out within TIE determine if a variable will be displayed within TDE and if you may enter an input or expected value or both values Note All interface elements with the passing direction not set to Irrelevant or Extern will be displayed within the TDE Every variable will be assigned to one of the section elements described above e g Parameter Global etc Initially the Dynamics section will always be empty s Browse the Interface on page 220 Input fields for each interface variable will be displayed for input values and or expected values depending on the used passing directions The passing direction of dynamic objects is depending on the passing directions of the pointer variables pointing to the respective target object s chapter Test Preparation Pointers Input Values Input values are all interface elements or dynamic objects that need to have a defined value at the beginning of the execution of a test object These values are included in the calculati
343. y 2 9 Installation e 41 Registration To install a central license server within your network please take the following steps e Install the Floating License Server on your network server refer to Choose Setup Type on page 22 e Start the Floating License Manager on that server s Using Floating License Manager on page 44 You will find the License Manager in the folder Programs Tessy 2 9 from the Windows Start menu e Click on Configure in the toolbar e The following dialog will pop up Configure Local License Server 2 x m Run Local Server as Service as Application Cancel m Port fi 0000 m License Key File C Program Files Razorcat fls bin r Settings I Autostart T Remove mice from Registry e Please choose following options within the dialog to run the license server as service normally used for a network server Run Local Server As service Port Change the default port number 10000 if already in use License Key File You must copy the license key file to the bin directory of the license server normally to C Program files Razorcat fls bin depending on your installation path 42 e Installation Testing of Embedded Software Tessy 2 9 Registration Settings Autostart the license server will be started automatically during the boot process of the network server e When you have finished your selection click on OK You will se
344. y Tessy Structs Unions Enums and Multiple Source Files This restriction applies only for Tessy modules with more than one source file Due to the fact that the interface database of a module holds the combined interface of these several source files there may appear conflicts for certain type definitions or declarations In the cases below it will not be possible to successfully build the test driver e Two enums in different source files without tag names or with different tag names or typedef names and at least one identical enum constant that are used within two functions one function in each of the source files and one function is calling the other e Two structs unions in different source files with the same tag names or typedef names and differing components that are used within two functions both functions in different source files and one function is calling the other Testing of Embedded Software Tessy 2 9 Technical Information e 377 Technical Restrictions In both cases you may nevertheless run the test successfully when testing each source file separately with only one source file in the respective module 378 e Technical Information Testing of Embedded Software Tessy 2 9 Glossary Glossary of Terms Actual Values Values which were calculated by the test object during execution These values are compared with the expected values after the test run C1 Test During the C1 test each branch of the test object
345. y Time Steps controls this behavior It may be toggled on and off If the button is on the default all empty time steps will be hidden If you like to add a time step at a certain point in time you need to select Insert Time Step At from the toolbar This is useful if you would like to stimulate the component e g 1 second after initialization and you expect a reaction within 5 seconds With a given step size of 10 ms this would cause a lot of time steps to be displayed This scenario would look like follows with the time steps hidden CY Scenario 3 7 z E Q A INIT SSF init 0 990 ms 1000 ms isp set_number value 90 1010 4990 ms 5000 ms l number End of Scenario 5000 ms Showing the time steps would result in a list of 500 time steps 348 e Component Test Testing of Embedded Software Tessy 2 9 Editing Scenarios within SCE Moving Time Steps Time steps may be moved using the CRTL UP and CTRL DOWN cursor keys e When moving up the selected time step will be replaced with the previous time step e When moving down the selected time step will be replaced with the next following time step If the moved time step would be replaced by a hidden time step the respective hidden time step will be displayed The example below shows the time step 5000 ms moved one step backward in time to time step 4990 ms CS Scenario 23 INIT 8 init 0 990 ms 1000 ms
346. y less than 2 9 The installation process will be nearly the same as for a new installation described on page 17 in chapter New Installation Some of the installation steps will be not executed An update will preserve your previous installed Tessy version e g 2 6 and will choose another installation folder for the new version 2 9 of Tessy You may also use the previous version for testing Please refer also to chapter Multiple Installations of Tessy 2 9 x on page 31 Update and Replace a Previous Installed Version of Tessy 2 9 The installation process will be nearly the same as for a new installation described on page 17 in chapter New Installation Some of the installation steps will be not executed e Start Setup as described on page 17 New Installation and follow the instructions e Inthe Application Requirements dialog click next to update a previous installed version of Tessy 2 9 The check box Keep old version of Tessy remains unchecked 30 e Installation Testing of Embedded Software Tessy 2 9 Installing Tessy Vitessy InstallAware Wizard BI x Application Requirements The Following requirements must be processed before starting setup Previous ersion 2 9 6 Uninstallation Keep old 2 9 6 version of Tessy To continue click Next Installaware Cancel If you want to keep the old version of Tessy 2 9 please continue with Multiple Installations of Tessy 2 9 x Importa
347. ynamics Specify the Evaluation Mode Now you have to specify the evaluation mode for the expected value The evaluation mode defines how to compare the Expected Values with the Actual Values resulting from the test run e Please use the right most combo box to specify the evaluation mode You can choose one of the predefined logical operators from the dropdown list In our case choose for equal s Enter Evaluation Modes This is the default mode and is automatically selected Globals a Parameter AB Return een zB Dynamics gt lt gt lt s t Saj e Click on Save to exit TDE Testing of Embedded Software Tessy 2 9 Quickstart e 69 Tutorial Please notice that both the test object icon and the test case icon will be turned to yellow This will indicate that we are now ready to run the test File Tools Options Project Module Testobject View Window Help jle salage pi F Database C tessy Tutorial pdb a Tutorial IslineCovered 2 ne covered by recta Welcome to Tessy Analyzing Interface for Module IsLineCovered 6 01 12 PM Execute Test Run All necessary preparations are done at this point so we can start the test run g Click on Execute Test in the toolbar or choose the context menu of the test object In the following dialog you may select the actions to be performed during the test execution e Please use the default select
Download Pdf Manuals
Related Search
Related Contents
AMPOUTES BUVABLES - "`" Samsung GE107YD User Manual Elektrostapler BUHÉ - Dune LED-Laufschrift LED Light Writing Afficheur de texte défilant LED Setting up Grower, Farm, Field Setting up Manual de Instruções Básico - (11) 3107 2219 Focus Escola de Mega 700 D Superior P910I User's Manual Copyright © All rights reserved.
Failed to retrieve file