What is SAP Testing?
SAP Testing is a type of software testing that validates SAP ERP Implementations. At any point when you change or customize SAP software, test cases need to be created to check the new functionality. You must also test the SAP system after implementing any maintenance release notes. SAP testing can also involve – Performance Testing. (to check the speed of sap applications) & web testing (for SAP web portals).
Introduction to SAP
The basic idea behind introducing SAP (System Applications and Products) was to provide the customers the ability to interact with common corporate databases for a comprehensive range of applications. SAP is an integrated ERP (Enterprise Resource Planning) to make business process work efficiently.
Following Video will explain the need of ERP software like SAP in an enterprise
SAP suite contains different modules such as SAP FICO Testing, SD, MM, HR, etc.
SAP Testing Consultant- a Career choice
|Skill Set||To become a SAP tester you need following skill sets
|Typical WorkDay||On any typical work day you will be busy understanding requirement documents , creating test cases , executing test cases , reporting and re-testing bugs , attending review meetings and other team building activities.|
|Career Progression||Your career progression as a software tester (QA Analyst) in typical CMMI level 5 company will look like following but will vary from company to company
QA Analyst (Fresher) => Sr. QA Analyst (2-3 year experience)=> QA Team Coordinator (5-6 year experience> =>Test Manager (8-11 experience) => Senior Test Manager (14+ experience)
How SAP Testing is better choice than testing other Domains?
While testing any AUT ,
- You acquire deep functional knowledge of the AUT. Without sufficient knowledge of AUT its difficult to test
- Hone your testing skills
As with any IT company , you move from one project to another in due course of time. All the hardwork you did to understand the functionality of AUT is obsolete in the new project. This is typically true if you are switching projects across domains say telecom to healthcare.
In case of SAP, the functional knowledge you acquire is portable and can be used in other projects. Suppose you are switching jobs. In your old company you were testing billing software for Vodafone. What is the likely hood that the same project is available in your new company ? Next to Zero.
Now consider this case. You are switching from SAP Testing project to another SAP Testing project in new company. You instantly recognize the GUI , Transaction codes, vanilla business workflows which is a huge advantage. You will need to learn the customizations made by the client but still you need a deep knowledge of the software.
The biggest advantage as SAP Tester is that due to the deep functional knowledge you acquire, you can easily become a SAP Functional Consultant!
SAP Consultants are in huge demand & they are almost always on short supply and command premium salaries.
What is meant by SAP implementation?
Consider this scenario. Company A offers 12 annual leaves. Company B offers 20 annual leaves. Salary must be deducted for any employee who uses 13th or 21st annual leave for Company A & B respectively. This information must be configured into the SAP system which is nothing but SAP implementation and configuration.
The SAP vanilla version is powerful but not much useful until it’s customized and configured as per the business policies, legal stipulations, & technical requirements of a company. This process is called SAP implementation. It could typically take a few months to even years.
What is SAP customization?
SAP by far has the highest collection of Business Process. But sometimes your internal company processed many not be accurately mapped using the readily available SAP business transactions.
In such cases custom code is created using ABAP. It involves code changing to create functionality that is not available through configuration. This is nothing but customizations. SAP customization can also be done to generate custom reports, programs, or enhancements.
What is maintenance of SAP software?
Once the SAP system is configured, customized, deployed and made live – any changes made to the SAP system is termed as Maintenance. This could include
- New Feature addition to the SAP System
- Bug Fixes
- SAP Kernel Updates
- Support Pack & Stack Updates
- OSS note implementation
How to Do End to End SAP Testing?
There are multitude of methodology that can used for SAP implementation
- ASAP Implementation ( For initial implementation of SAP systems , and porting from legacy systems)
- Maintainence Lifecycle
- Upgrade LifeCycle
- Custom Development LifeCycle
Whatever the lifecycle you may be working in, including testing in SAP, there are three main testing phases you will be involved in.
1) Test Preparation
2) Test execution phase
3) Test Evaluation phase
Step 1) Test preparation phase
- Identification of business process to be tested
- Manual and automated Test Case development
- Creation of test suites and review
- Set up of test system
- Creation of test data
Step 2) Test execution phase
- Test execution either manually or using test tools
- Test status reporting and Defect handling
Step 3) Test evaluation phase
- Detailed assessment of all test plans
- Defect Analysis
- Documentation of the testing process
Types of Testing Applicable to SAP applications
For SAP applications the common testing performed are:
1) Unit Testing
This part of testing is mostly taken care by the developers based on their defined Unit Testing rules as per the organizations. This is sometimes done by the skilful white box testers. The test is done in the development box. This is the testing of interfaces, conversions, enhancement, reports, work flows and forms(RICEWF) developed primarily with ABAP code. Testing of development object includes testing for security authorization, ,data transfer rules, reconciliations and batch scheduling jobs. BW (Business Warehouse) testing is also part of the development tests.
2) Integration Testing
It is the testing of combined components of a SAP application to determine if they function together correctly. It is typically done in the QA environment and uses realistic test data.
3) Regression Testing
Regression Testing is done to ensure that the new changes implemented do not adversely affect the existing working code. SAP R/3 is a tightly integrated system. A single stack update, OSS note, transport, configuration changes, new development interfaces can have cascading and severe effect. Regression Testing is usually executed using automation tool by the testing team.
4) Performance Testing
It is testing SAP applications to ensure that they will perform well under expected workload. Performance Testing encompasses load , volume & Stress Testing to determine system bottlenecks. The aim of this testing is to enhance robustness of SAP applications and helps deploy systems that can sustain high load forecast, with zero post production performance issues. The testing includes checking business processes that may cause stress, due to high transaction or batch volumes. It is usually executed using automated tools & involves collaboration of basis, database, infrastructure and test teams to monitor test results.
5) Functional Testing
Functional Testing ensures that your implementation of SAP meets your business requirements. SAP is highly configurable system and could be easily integrated with in-house applications or third party tools. Given this varied configuration and complexity functional testing is a must. SAP Functional testing removes uncertainty over business use cases and brings quality. It includes review of design documents and creating test artifacts including test requirements, Test Scenario and test cases. Functional testing is usually done by the testing team with a background in particular SAP module being tested.
6) User Acceptance Testing (UAT)
Once functional, system and Regression Testing is completed, UAT ( User Acceptance Testing) is performed. It ensures that the SAP system is usable for the end users of the system. The end users independently execute the user acceptance test cases that includes testing business processes, functions, documentation (operating manuals, cheat sheets) etc. With UAT users can feel comfortable with the new business environment and can take full ownership of the system.
7) Security Testing
To ensure the safety of SAP applications, Security Testing is performed. High risk areaslikesap-portal security, network security, operational security, product security, access control and source code audit for security are tested. This is usually involves the basis, database, infrastructure, development and test teams.
8) Portal Testing
These techniques involve testing the SAP Portals on different browser and checking business processes
How to create a SAP Test Case
Let’s design a test case to change the Name of an employee in SAP system
To create an effective test case, you must
- Determine SAP role required to execute the test case
- Identify the SAP transaction that needs to be executed for the test case
- Test Data required executing the test case. Determine whether the data needs to be created or whether it used by another tester or whether the data is locked & cannot be modified.
- Any Pre-requisites
- Peer review Test cases
- Create positive as well negative scenarios
- Create detailed Test Steps.
- Test coverage should be robust
- Document defects in timely manner which is as soon as they are discovered.
Refer this video, for a guideline on how to change SAP Infotype
The test case designed for this is as follows –
SAP is a humungous system with endless variations. Its neither feasible nor cost-effective to check all possible variations and combinations of test parameter inputs in SAP system.
As in above example , a tester could have verified change in Last Name, Date of Birth, Address, Pin Code, City , State, Country, change in permanent , temporary, work address etc.
A Tester needs to adopt strategies reduce the number of test cases without sacrificing coverage. Examples of such strategies include boundary value analysis, equivalence partitioning & orthogonal arrays.
Automated Testing of SAP Applications
Testing is a huge challenge for colossal system like SAP. As per recent study by ASUG, Over 86% customers are concerned about risks due to lack of comprehensive testing.
Automation has following benefits for SAP applications
- The chief and most valuable benefit is improved test coverage
- Better product quality and therefore less production outages. Outages in SAP productions environments could cost a company millions!
- Workload decreases with each release cycle
SAP Testing Automation Tools
The methodology and approaches are more important than the chosen test tool. When you think about testing SAP application, some tools comes in mind naturally like SAP TAO, eCATT, QTP etc.
testRigor is the newest and the most advanced AI-enhanced tool for functional, regression, end-to-end, and performance tests for SAP. It’s extremely user-friendly since all tests are created in plain English, no code. testRigor can handle complex SAP testing scenarios, and tests are ultra-stable and robust.
testRigor has a record-and-playback functionality built-in, as well as autonomous test generation for new projects. Other aspects worth noting are great documentation and excellent customer support for all paid tiers.
LiveCompare provides SAP teams with AI-powered analytics and insights that significantly reduce the risk, time, and cost of delivering and supporting changes to SAP systems. Easy to set up and use, LiveCompare continuously monitors your SAP delivery pipelines and production systems for issues that put your business at risk. LiveCompare then gives your developers, testers, release managers, and support teams the information they need in real-time to eliminate potential and existing defects quickly and efficiently.
With DevOps-friendly capabilities that improve quality and speed throughout your SAP practice, LiveCompare enables you to accelerate releases, optimize operations, and deliver innovation with confidence.
ECATT ( Extended Computer Aided Test Tool)
ECATT is used to create and execute functional tests for SAP. ECATT is an in-built tool that comes bundled with SAP with a primary objective of automated testing of SAP business processes.
- Test transactions, reports and scenarios
- Call BAPIs and function modules
- Test remote systems
- Check Authorizations (user profiles)
- Test updates
- Test the effect of changes to customizing settings
- Check system messages
Micro Focus Unified Functional Testing
Micro Focus Unified Functional Testing is a keyword driven automation tool. It supports many environments including SAP. The tool is robust, feature rich and user-friendly. Its market leader in automation tool commanding major market share. It’s a commercial tool with excellent vendor support. It’s a tool of choice for SAP automation.
SAP released the automation tool SAP TAO in collaboration with Focus Frame(now acquired by Hexaware).
SAP TAO wraps up QTP and QC where QTP acts as execution engine and test scenarios are created and driven from QC through business components. SAP TAO automates generation of test components for end to end scenarios. SAP TAO and HPQC setup do have some benefits compare to other testing tool there is a huge corporate support for both HP and SAP software products.
SAP TAO client application performs three functions, inspecting transactions from a SAP server, exporting the transactions to HP Quality Center and consolidating components or scripts from HP Quality Center.
Performance Testing of SAP Application
Performance testing of SAP applications is done to check its speed, scalability and stability. Performance Testing SAP helps with
- Conform with service-level agreements (SLAs).
- Optimize software configuration settings.
- Reduce overspending on hardware
- Certify that the system will not crash or fail during seasonal high load and help avoid corresponding financial losses.
Events that Trigger Performance Test
Choice of Performance testing tool for SAP depends on the underlying SAP application being tested. Below is a list of SAP performance test tools and their application areas
- Open source/ Free
- Jmeter – (Performance Test SAP Business Obects BI Platform)
- Open STA (Performance Test SAP Portals)
- Load Runner (Performance Test SAP ECC amongst other SAP applications) – recommended by SAP
- IBM Rational Robot (Can test wide variety of SAP applications)
SAP testing offers tremendous career opportunities for QA enthusiasts. It’s a relatively easy way to break into the highly regarded SAP Consultant arena.
Checkout – SAP Testing Interview Questions & Answers