Test and Analysis Tools in ABAP
Extended Program Check
Code Inspector
Doing a Fast Ad Hoc Code Inspection
Starting an Ad Hoc Inspection from the Code Inspector
Defining and Running Reusable Code Inspections
Creating Code Inspections
Creating and Processing a Set of Objects
Creating and Processing a Check Variant
Managing Code Inspector Exceptions
Special Checking Tasks in the Code Inspector
Code Inspector Glossary
Inspection
Set of Objects
Check Variant
ABAP Unit
ABAP Unit - Overview
ABAP Unit - Notes on Use
Creating ABAP Unit Tests
Using the ABAP Unit Wizard
Correct Use of Global Test Classes
Test Classes
Test Attributes
Test Methods
Methods of Class CL_ABAP_UNIT_ASSERT
Complex Comparisons of ABAP Objects
Using Constraints in ABAP Unit Testing
Production Code and Test Code
Fixtures
Customizing ABAP Unit Test Execution
Executing ABAP Unit Tests
Starting a Test Run in the ABAP Workbench
Starting Test Run in ABAP Unit Browser
Creating and Starting a Test Run in the Code Inspector
Displaying Code Coverage in the ABAP Unit Browser
Understanding the Code Coverage Display in the ABAP Unit Browser
Evaluating ABAP Unit Tests
ABAP Unit Browser
Grouping Unit Tests into Favorites in the ABAP Unit Browser
ABAP Unit - Example
ABAP Unit - Terminology
eCATT: extended Computer Aided Test Tool (BC-TWB-TST-ECA)
Overview
Preparing Systems and Computers for eCATT
Maintaining Table T000
Enabling Scripting at the Front End
Enabling Scripting on the Application Server
Patching the Systems
Preparing to Use an External Tool with eCATT
Preparing Systems for Testing Web Dynpro
Authorizations
Starting eCATT
Creating eCATT Objects
Displaying or Changing eCATT Objects
Deleting eCATT Objects
Renaming eCATT Objects
Copying eCATT Objects
Uploading eCATT Objects
Where-Used List
User-Specific Settings
Downloading eCATT Objects
Downloading Referenced eCATT Objects
Migration of CATT Test Cases
Migrating CATT Test Cases to eCATT
Preparing to Test the System Landscape
Creating System Data Containers
System Data Editor
Specifying Target Systems
Using System Data Containers
Developing Test Scripts
Creating Test Scripts
Test Script Editor
Entering Values
Refreshing Command Interfaces
Maintaining Attributes
Test Script Versions
Version Management for Test Scripts
Simulating Version Selection
Parameters
Special Variables
Inline ABAP
Testing Applications
Checking or Activating Customizing Settings
Testing Function Modules
Using TCD (Record) to Record Transactions
Parameterizing the TCD Command Interface
Checkboxes and Radio Buttons with TCD
Screen Simulation
TCD Command Interface
Setting Fields and Values in TCD Dynamically
Using SAPGUI (Record) to Record Transactions
Reading Values with GETGUI
Checking Values with CHEGUI
Retrieving an Output Value
Parameterizing an Input Value
Parameterizing the IDs of Controls
Check Boxes and Radio Buttons with SAPGUI
Extending Scripts with SAPGUI (Attach)
Splitting Commands
Joining Commands
Checking Initial States
SAPGUI Command Interface
Notes on the Playback of SAPGUI Commands
Testing Global ABAP Objects Classes
Testing Web Dynpro Applications
Recording a Web Dynpro Application
Setting a Value in WEBDYNPRO
Getting a Value in WEBDYNPRO
Checking a Value in WEBDYNPRO
Changing Actions in WEBDYNPRO
Messages in WEBDYNPRO
Importing Web Dynpro Test Scripts
Using the Web Dynpro Simulator
Splitting or Joining WEBDYNPRO Commands
Testing Web Services
Logical Ports for Web Services
Message Handling in WEB SERVICE
External Tools
Creating Test Scripts with an External Tool
Executing External Test Scripts in eCATT
Handling Messages
Release-Dependent Incompatibilities
Organizing Test Data
Creating Test Data Containers
Creating Variants in Test Data Containers
Importing Parameters into Test Data Containers or Test Scripts
External Test Data (External Variants)
Using External Test Data During Test Execution
Test Data Editor
Accessing Test Data by API
Category for General Methods
Method Category for General Read Access
Method Category for Read Access to Content
Method Category for General Write Access
Method Category for Write Access to Content
Building Executable Tests
Creating Test Configurations
Creating Variants in Test Configurations
Editing Variants in Test Configurations
Test Configuration Editor
Executing Test Scripts
Start Options
Saving the Settings of the Start Options
Execution Control
eCATT Debugger
Logs
Displaying and Printing Logs
Deleting Logs
Archiving Logs
Using Logs
eCATT Command Reference
*
=
Examples for the Assignment Operator (=)
ABAP
APPEND
BCSET
BREAK
CALLMETHOD
CALLSTATIC
CHEATTR
CHEGUI
CHESTATIC
CHETAB
CHEVAR
CLEAR
CREATEOBJ
DELETE
DELSTORE
DO
ELSE
ELSEIF
ENDABAP
ENDDO
ENDIF
ENDMESSAGE
EXIT
FUN
GETATTR
GETGUI
GETLEN
GETSTATIC
GETTAB
IF
INSERT
LOG
LOGMSG
LOGTEXT
MESSAGE
ON_LAST_MESSAGE_CHECK
REF
REFCATT
REFEXT
REMOTECATT
RESCON
RESTAB
RETRIEVE
SAPGUI
SENDEXT
SETATTR
SETSTATIC
SETTAB
STORE
TCD
WAIT
WAIT_ON_DYNPRO
WEBDYNPRO
WEBSERVICE
eCATT Tutorial
Creating Your System Data Container
Creating Your Test Script
Recording the Transaction
Executing Your Test Script
Dealing with Messages
Making Your Script Ready for Data Input
Creating Reusable Test Data Sets
Assembling Your Test Configuration
Improving the SAPGUI Recording.
Testing a Transaction Suitable for TCD (Record)
eCATT Security Guide
Coverage Analyzer
Validating Tests with the Coverage Analyzer in Development Syste
Monitoring Code Coverage in Quality Assurance Systems
Coverage Analyzer: Overview of Functions
Coverage Analyzer: Overview of Functions
Coverage Analyzer: Technology
Coverage Analyzer: Performance
Coverage Analyzer Administration
Checking Whether the Coverage Analyzer Is Active
Activating and Deactivating the Coverage Analyzer
Switching the Coverage Analyzer On and Off: The Main Switch
Activating and Deactivating the Coverage Analyzer in Application
Activating History Recording and Creating New History Versions i
Activating Data Collection from Remote Systems in the Coverage A
Creating Test Groups in the Coverage Analyzer
Registering Users in the Coverage Analyzer
Resetting Coverage Analyzer Statistics
Coverage Analyzer Settings
Setting Thresholds for Code Coverage
Limiting the Packages Recorded in Code Coverage Histories
Coverage Analyzer Monitor
Coverage Analyzer Konsistenzen
The Global Display of the ABAP Coverage Analyzer
Reviewing Code Coverage in the Global Display
Trend Analysis and Reporting with the Global Display
Selection Options Global Display of the Coverage Analyzer
The Details Display of the ABAP Coverage Analyzer
Selection Options # Details Display of the Coverage Analyzer
Useful Fields in the Coverage Analyzer Displays
Coverage Analyzer: FAQ
System log
ABAP Dump Analysis
Displaying a Short Dump Directly
ABAP Dump Analysis (ST22)
Selection Criteria of ABAP Dump Analysis
Managing Short Dumps
Categories of ABAP Runtime Errors
Runtime Error Long Text
ABAP Runtime Analysis
Overview of Functions
Architecture and Navigation
Starting the Tool: Initial Screen
Measurable Components
Time Recording
Collecting Performance Data
Creating Performance Files
Analyzing Performance Files
Performance Results
Measurement Overview
Statement Hit List
Table Hit List
Group Hit List
Hit List of ABAP Objects
Call Hierarchy
Statistics
Measuring External Processes
Starting the Process
Stopping the Process
Planning and Deleting Measurements
Planning Measurements
Notes on Planning Measurements
Measurement Restrictions
Programs or Program Extracts
Statements
File Size and Time Limit
Aggregation
Additional Functions
Display Filter
Managing Performance Files
Saving Performance Files Locally
Tips und Tricks
Measuring Selected Source Code Extracts
Performance Analysis
Performance Trace Overview
Architecture and Navigation
Initial Screen
Recording Performance Data
Starting the Trace
Stopping the Trace
Analyzing Performance Data
Display Filter
Other Filters
Displaying Lists of Trace Records
Analyzing Trace Records
SQL Trace Analysis
Embedded SQL
Measured Database Operations
Logical Sequence of Database Operations
Buffering
Analyzing a Sample SQL Data File
Example Explanation of an Oracle Statement
Example Explanation of an Informix Statement
Enqueue Trace Analysis
Enqueue Trace Records
Detailed Display of Enqueue Trace Records
RFC Trace Analysis
RFC Trace Records
Detailed Display of RFC Trace Records
Table Buffer Trace Analysis
Table Buffer Trace Records
Detailed Display of the Table Buffer Trace Records
Additional Functions
Saving Lists Locally
The Function Execute Explain for SQL Statements
Using the Dictionary Information Function
Summarizing Trace Lists
Dynpro Trace
Debugger
New ABAP Debugger
New ABAP Debugger: Advantages of Two-Process Architecture
Starting and Canceling
Starting New ABAP Debugger
Starting and Directly Debugging ABAP Programs
Switching Directly to the ABAP Debugger While Executing a Progra
Rights for Debugging
Settings
Managing Sessions
Naming Conventions for Memory Objects
Control
Breakpoints and Breakpoint Statements
Breakpoint Statements
Managing Breakpoints in the ABAP Editor
anaging Breakpoints in the ABAP Debugger
Watchpoints
Source Code Execution and Navigation
Analyzing Source Code
Tools
Data Explorer
Screen Analysis
Breakpoints Tool
Editor
Stack
Overview of Variables (Variable Fast Display)
Structure Display
The Table Tool: Work With Internal Tables in the ABAP Debugger
Objects
Detail Display
Editor (Edit Control)
Diff-Tool
Loaded Programs (Global Data)
Analyzing Memory Use in the New ABAP Debugger
System Areas
Web Dynpro
Trace
Debugger Scripting
Creating and Executing a Script
Debugger Tracing
Creating a Trace File
SAS: ABAP Debugger Tracing and Scripting
Local Debugger Script Class
Syntax of the Local Debugger Script Class
Useful Techniques in Debugger Scripting
Editing Scripts and Traces in Transaction SAS
Automating Repetitive Tasks
Creating Interactive Scripts
Creating Custom Watchpoints and Breakpoints
Creating Custom Traces
Extracting Debugging Information in Complex Program Environments
Console: XML and List Preview Tool
User Interface
Layout of the User Interface
Designing Work Areas
Additional Functions
Layer Aware Debugging
Layer Profiles
Creating a Persistent Layer Profile
Object Sets
Creating a Persistent Object Set
Using Object Sets and Layer Profiles in the ABAP Debugger
External Debugging (HTTP and RFC Debugging)
External Debugging - Concept
User-Based Debugging
Request-Based Debugging
Request-Based Debugging - Concept
Request-Based Debugging - Procedure
Debugging ICF Services
System Debugging
Debugging in Production Clients
Simple Transformation Debugger
Classic Debugger
Overview of Functions
Starting the Classic Debugger
Display-Modes for the Classic Debugger
Release Changes
Breakpoints
Static Breakpoints
Dynamic Breakpoints
Breakpoints at Statements
Breakpoints at Subroutines
Breakpoints at Function Module Calls
Breakpoints at Methods
Breakpoints at System Exceptions
Saving Breakpoints
Managing Dynamic Breakpoints
Watchpoints
Setting Watchpoints
Specifying Logical Links
Changing Watchpoints
Memory Monitoring with Watchpoints
Analyzing Source Code
Displaying the Source Code
Going Through the Source Code
Processing Fields
Naming Conventions for Memory Objects
Processing Internal Tables
Attributes of Data Objects
Displaying OO Objects
Additional Functions
Displaying Lists
Call Links
Debugging in Production Clients
Unlocking the Database
Settings and Warnings
Memory Consumption
Memory Analysis
Sessions
New and Classic ABAP Debugger: Main Differences
Activatable Checkpoints
Checkpoint Groups and Activation Settings
Transaction SAAB
Checkpoint Groups
Creating Checkpoint Groups
Activating Checkpoint Groups
Log Display
Activation Variants
Creating Activation Variants
Activate Activation Variants
Log Display
System Variants
Group Overview
The ABAP Memory Inspector
Memory Inspector Concepts
Using the Memory Inspector Transaction
Understanding the Memory Inspector Overview
Understanding the Dominator Tree in the Memory Inspector
Understanding the Ranking Lists in the Memory Inspector
Information in the Tables, Classes, Programs, and Expert Views i
Understanding the Object Cycles (SCC) View in the Memory Inspect