Showing posts with label Customer relationship Management. Show all posts
Showing posts with label Customer relationship Management. Show all posts

Friday, January 30, 2009

eCATT- An Introduction

eCATT-Extended Computer Aided Test Tool

Introduction to eCATT.

The Extended Computer Aided Test Tool is a new automated testing tool that allows you to create automated functional test cases for the majority of applications running in the SAP GUI for Windows and SAP GUI for Java environments. Like other test tools, it works by making a recording of an application, which you can then parameterize and replay with differing sets of input values. You can test the behavior of the application by reading and testing the values returned by the application. eCATT is available from Release 6.20 of the SAP Web Application Server, and is an integral part of the mySAP Technology underlying SAP R/3 Enterprise Release 4.7.
Designed as a successor to the existing CATT, it allows a user to record and replay any application running under SAP GUI for Java or SAP GUI for Windows. Furthermore, because it is embedded within the SAP application server, it has access to other interfaces, such as function modules, BAPIs, or the SAP database (so that users can perform checks), and the ABAP runtime, which lets users write ABAP routines into test cases.


With SAP eCATT, users are also able to test business processes that cross system boundaries. Each command in a test script can have a separate destination so, within one script, a user can call a transaction in mySAP Customer Relationship Management, and also check table entries in an SAP R/3 system. Within a script, logical names are used to refer to target systems. These logical names are mapped to actual RFC destinations in a separate object called a system data container, which is, effectively, a description of the company’s system landscape. Thus by linking a different system data container with a script, a user can execute it in a completely different system landscape without having to alter the script coding at all. The only prerequisite is that all the logical system names that the script uses are defined in the relevant system data container.
Because of the wide variety of applications that may need to be tested, eCATT does not have a single "one-size-fits-all” way of recording and replaying applications. Instead, there are various drivers that encompass the following kinds of scenarios:


• Table operations– interacting with the SAP database
• Function modules and BAPIs
• ABAP
• Transactions and reports
• Applications running outside the SAP GUI for Windows or Java environments

For the last of these scenarios, eCATT offers an interface that third-party tool manufacturers can implement to integrate their tools with eCATT.
You can migrate test cases from Computer Aided Test Tool (CATT) to take advantage of the better features of eCATT.
eCATT is also integrated with the Object Navigator (SE80).

Features
Using eCATT we can:

• Test transactions, reports, and scenarios
• Call BAPIs and function modules
• Test remote systems
• Check authorizations (user profiles)
• Test updates (database, applications, GUI)
• Test the effect of changes to customizing settings
• Check system messages

Constraints
eCATT runs in a system based on SAP Web Application Server 6.20 or higher. However, you can use this system to test systems with Release 4.6C or higher.


In my forth coming weblog’s I will be going through the following topics :

1. Creating Test Scripts.
2. Creating Test Data Containers.
3. Understanding System Data Containers.
4. Executing Test Configurations.
5. Understanding Logs.

I will also demonstrate the use of eCATT with following applications:
• Testing a Standard SAP Business Scenario.
• Testing a Web Dynpro Application.
• Migrating Test Cases from CATT to eCATT


eCATT: Creating Test Scripts
Understanding eCATT

Creation of Test Scripts

In my last weblog on “eCATT : An Introduction” I introduced the subject of eCATT and discussed the capabilities and features of the same . In this weblog I will be going a step further and explain the creation of Test Scripts , the first step in the creation of Test Cases using eCATT .

Before creating Test Scripts using eCATT we need to have some system setting done .

1. Maintaining Table T000
a. Start transaction SM31.
b. In the Table/View field, enter T000.
c. Choose Maintain.
d. In the Change View “Clients”: Overview screen, select the relevant client and choose.
e. In the Restrictions when Starting eCATT field, select an entry that allows eCATT.

2. Enabling Scripting at the front End .
( Check whether SAP GUI Scripting component is installed. There is an option for installing this component when installing the SAP GUI.)
a. On any screen, choose Customizing of local layout.
b. Choose Options....
c. Choose the Scripting tab.
d. Select Enable Scripting.
e. Choose Apply.

3. Enabling Scripting on application server .
a. Start transaction RZ11.
b. On the Maintain Profile Parameters screen, enter sapgui/user_scripting.
c. Choose Display.
d. In the Display Profile Parameter Attributes screen, choose Change value.
e . Enter TRUE in the New value field.

Now we will start with creation of Test Scripts :
The first step in the Creation of Test Case is Creation of Test Scripts .

A test script consists of three principal parts-

  • Its attributes
  • The script commands
  • The parameters


We will be creating a Test Scripts for Sales Order Scenario .

Step1 : Goto Transaction SECATT :

image


image


image

Now the Recording for the Transaction VA01 will start .We will Record and save the Transaction .

image

image

image

After Recording is saved TCD Command Appears in the Command Editor.

image


Now Define Parameters . Only those parameters should be defined which are expected to take values at runtime.

image

On clicking the Toggle Option : The Command Editor Appears .

image

On clicking the “Command Interface” Option the interface appears in left bottom corner of the screen .
For each screen traversed screen name and screen number appears . Within each screen all the Input values that were entered during Recording are parameterized .


When all the screen input fields are parameterized , save the Script .

This Creates the Test Script for the Sales Order Scenario.

In the next Weblogs I will be discussing Test Data Containers , System Data Containers and Test Configurations to complete the Test Case for the Sales Order Scenario.

eCATT: Creation of Test Data Container
Creating Test Cases using eCATT

Creation of Test Data Container .

In my last weblog we were discussing creation of Test Case for Sales Order Scenario .
The first step for Creation of Test Case i.e. creation of Test script was covered in the previous weblog . In this weblog we will continue the flow and cover Creation of “ Test Data Container” and “System data Container “ for the Test Scenario .

Transaction ‘SECATT’. : Creating Test Data Container

image

image
image

Now Create Variants for the Test Case .

image

The Script will be Tested with these 3 variants . These Variants define the different set of values with which the Scenario will be tested . In the above case the Sales Order Creation will be tested for different set of Sales Area Data ( different distribution channels in namely: 10 12 & 16 )

After creation of Test Data Container , In the test script the parameters are assigned to the Input values/Output Values .

Parameterizing Input Fields :
You must set the field mode to ‘S’, and enter a literal or the name of a parameter in the VALIN column. At runtime, the screen field will be filled with the value that you specified.

image
Parameterizing Output Fields :
You must set the field mode to ‘G’, and enter the name of a parameter in the VALIN column. At runtime, the parameter will be filled with the value from the screen field.
image

Now Creation of System data Container :

Transaction ‘SECATT’.
image
Since we are not Doing Remote Testing .Therefore Test System is “NONE
(In Case of Remote Testing RFC destination has to be created in SM59 and should be specified under “RFC Destination Tab”)
image
In the next weblog Creation of “Test Configuration” and Execution of the Test Case will be covered thus completing the Test Case for Sales Order Scenario.

eCATT: Creating & Executing Test Configurations


Creation of Test Configuration

In my previous weblogs on eCATT we were discussing “Creation of Test Case for the Sales Order Scenario” . In the last weblog I had demonstrated the creation of “Test Data Container” . The only step left for the completion of Test Case for the above said scenario is the creation of “Test Configuration “.

I will explain creation of “Test Configuration” with the help of Screen Shots .


Transaction ‘SECATT’ . : Creating Test Configuration .


image


image

In the Test Configuration ( zsales_config ) Test data “ZSALES_DATA”( Created in last Weblog ) is attached .


image

Note : The field Target System is Blank as Testing will be performed Locally .

Now we have to copy variants from Test Data Container to the Test Configuration .

image

image
The above screen shows the three variants namely :
· ECATTDEFAULT
· VAR1
· VAR3

Now the execution of this Test Configuration will Test the Sales Order Process with three different set of data .


Executing Test Configuration : zsales _config .



image
Now , The Log Generated after ZSALES_CONFIG was executed .


image
The Log reveals that variant ECATTDEFAULT AND VAR1 executed successfully ( i.e sales order creation was possible with these set of Data )
But with Variant VAR3 Error : Order type OR not defined in Sales Area<1000 16 00 occurs .
From the above Test Scenario we were able to infer that
Standard Sales Order type OR cannot be created in Distribution channel 16 .


Thus we have successfully created a Test Case for the Sales Order Scenario .

In my next weblog on eCATT , I will discuss Creation of Test Case for “WebDynpro” applications .

eCATT: Creating a Test Case for a Web Dynpro Application
This Weblog will discuss how to create a Test Case for a Web DynPro Application. This is one of the major features of eCATT that allows users to test business processes that cross system boundaries.

In my previous Welogs on eCATT , I discussed topics starting from "Introduction to eCATT" to "Executing a Test Case using eCATT ". This Weblog will go a step further and discuss how to create a Test Case for a Web DynPro Application. This is one of the major features of eCATT that allows users to test business processes that cross system boundaries.

The scenario for Test is as follows :

Scenario

The goal is to create a Test Case for a Web Dynpro Application that is on java Stack . The application is for Purchase Order Creation.
The application will be tested for different set of data .
The url is : http://:/webdynpro/dispatcher/local/PO/CreatePO


Procedure:

The first step towards creating a Test Case for a Web Dynpro Application is to create a
RFC destination in SAP .

Tcode : SM59
RFC Destination : WEBDYNPRO2 , Type : G
Target Host :
Service :


image



Now , create a System data Container assigning HTTP RFC destination created above .

Tcode : SECATT


image


After creation of Test Data Container , Create Test Script . ( the creation of the same has been discussed at length in my previous weblogs )

In pattern option under UI control Group select WEBDYNPRO command .
Entering System data Container and Target System .

image

The Application in our case is “/webdynpro/dispatcher/local/PO/CreatePO”

image


Recording starts . The application starts in the browser .

image


Entering appropriate Header Info in the fields .

image


Adding item details .

image

Creating Purchase Order .


image

The PO is created in SAP and the PO number is reflected in top right corner .

image

Now , click “Stop Recording” Option .

image


Below we can see a WEBDYNPRO command is created for each page of application.

image

Now Parameterize the Input values

image

Creating Test Data Container .

image

2 Variants for are created . The Company code data is different in both cases .

For Test Variant 1 : Company Code is 1000.
For Test Variant 2 : Company Code is 3000.

image


Now Creating Test Configuration and attaching Test Data Container .

image

Executing Test Configuration .

image

Examining Log we see that :

PO can be created with var1 ( Company Code :1000 )

PO cannot be created with var2 ( Company Code :3000 )

image

Thus we were able to successfully Create a Test Case for a "Web Dynpro Application" deployed on Java Stack using eCATT.

1

Recording a test case

1.1

To record a test case, call Transaction SCAT and enter test case Zuser_creat.
Do not choose Enter.
Choose Test Case Record Transaction. Enter Transaction SU01, and choose Record/Enter.
The system runs Transaction SU01.
Enter the user name TESTZ and choose Create.
Enter the user’s title first name ZEBRA and the last name TEST.
Select the Logon data tab, enter init as the initial password, and repeat the password, profile select sap_all then choose Save.
Go back a screen and
In the dialog box displayed, select End recording.
A message is displayed stating that the recording has ended.
Enter the test case title User maintenance.
In the field Component, enter BC-SEC-USR.
Save the test case.
In the field package class, enter $TMP.
Choose Save to save the attributes.
To save the test case functions, go back.

2

Entering parameters for a test case

2.1

To define parameters for a test case, call Transaction SCAT.
Enter the test case name Zuser_creat.
Select Functions and choose Change.
Double-click on TCD.
Then double-click on program SAPLSUU5 screen 0050. (first appearance of this program)
The first screen of Transaction SU01 is displayed. (If you backed out, enter the procedure name again and double-click on TCD.)
Double-click on the user name field. In the field Param. name, enter an "&", and choose Copy/Enter.
Choose Next screen and double-click the last name. In the field Param. name, enter an "&" and choose Copy/Enter.
Go back until the Save folder appears, and choose Save.

3

Creating and using an external variant for the test case

3.1

To export the default parameters into a frontend file, in the test case, select Goto Variants Export Default.
Note: The default file name is .txt. Do not change the default values.

3.2

Open the file, with excel and edit and add another couple of user, and save the text file

3.3

To execute the test case using the external variant from file, from the initial CATT screen, enter the test case name and choose Execute.
In the field Variants, select External from file and choose Choose. Select the file created above, and choose Open. Under Processing mode, select Errors, and choose Execute.
Note: When you use this method, the file must be imported each time the test case is executed (file remains only on PC).

Implementation Approaches

The following are the implementation approaches for ERP

Big Bang Approach


In this approach, ERP is implemented at one-go at all the offices of the organisation.

Pilot Rollout

In the Pilot rollout approach, one subsidiary business unit (SBU) is selected as the pilot and ERP is first implemented in that unit. Then it is rolled out to other business units in a phased out manner.

Functional Rollout

In the functional rollout approach, one function like finance or materials management is selected for implementation. Then one by one ERP is implemented for each of the functions in the organisation.

Cross-Develop Global Prototype
In the cross-develop global prototype, a prototype is first developed and tested. Once successful, the implementation is done for the entire organisation.

Common Questions

1. What is ERP?

ERP is a package with the techniques and concepts for the integrated management of business as a whole, for effective use of management resources, to improve the efficiency of an enterprise. Initially, ERP was targeted for manufacturing industry mainly for planning and managing core business like production and financial market. As the growth and merits of ERP package ERP software is designed for basic process of a company from manufacturing to small shops with a target of integrating information across the company.

2. Different types of ERP?

SAP, BAAN, JD Edwards, Oracle Financials, Siebel, PeopleSoft. Among all the ERP’s most of the companies implemented or trying to implement SAP because of number of advantages over other ERP packages.

3. What is SAP?

SAP is the name of the company founded in 1972 under the German name (Systems, Applications, and Products in Data Processing) is the leading ERP (Enterprise Resource Planning) software package.

4. Why do you usually choose to implement SAP?

There are number of technical reasons numbers of companies are planning to implement SAP. It’s highly configurable, highly secure data handling, minimum data redundancy, maximum data consistency; you can capitalize on economics of sales like purchasing, tight integration-cross function.

5. Can CRM run without a SAP R/3 implementation?

Certainly, you can run CRM without R/3 implementation. You can use pre-defined content in CRM using your non-SAP data. Here you simply need to map the transfer structures associated with CRM data sources to the inbound data files or load data in CRM.

6. What is IDES?

International Demonstration and Education System. A sample application provided for faster learning and implementation.


7. What is SAP R/3?

A third generation set of highly integrated software modules that performs common business function based on multinational leading practice. Takes care of any enterprise however diverse in operation, spread over the world. In R/3 system all the three servers like presentation; application server and database server are located at different system.

8. What are presentation, application and database servers in SAP R/3?

The application layer of an R/3 System is made up of the application servers and the message server. Application programs in an R/3 System are run on application servers. The application servers communicate with the presentation components, the database, and also with each other, using the message server. All the data are stored in a centralized server. This server is called database server.

9. What are datasets?

The sequential files (processed on application server) are called datasets. They are used for file handling in SAP.

10. How can an ERP such as SAP help a business owner learn more about how business operates?

In order to use an ERP system, a business person must understand the business processes and how they work together from one functional area to the other. This knowledge gives us a much deeper understanding of how a business operates. Using SAP as a tool to learn about ERP systems will require that the
people understand the business processes and how they integrate.

11. Define Master data and Transaction data?

Master Data: Master data is data that remains unchanged over a long period of time. It contains information that is always needed in the same way. With master data you are dealing with attributes, texts or hierarchies.
Transaction data: Data relating to the day-to-day transactions is the Transaction data.

12. Name some drawbacks of SAP?

Interfaces are huge problem, Determine where master data resides, Expensive, very complex, demands highly trained staff, lengthy implementation time.

13. What are variables?

Variables are parameters of a query that are set in the parameter query definition and are not filled with values until the queries are inserted into workbooks. There are different types of variables which are used in different application: Characteristics variables, Hierarchies and hierarchy node.

14. What is AWB? What is its purpose?

AWB stands for Administrator Work Bench AWB is a tool for controlling, monitoring and maintaining all the processes connected with data staging and processing in the CRM system.

15. What are the different types of source system?

SAP R/3 Source Systems, SAP BW, Flat Files and External Systems.

16. What is Extractor?

Extractors is a data retrieval mechanisms in the SAP source system. Which can fill the extract structure of a data source with the data from the SAP source system datasets. The extractor may be able to supply data to more fields than exist in the extract structure.

What is the Purpose of R/3?

The sole purpose of an R/3 system is to provide a suite of tightly integrated, large-scale business applications.
The standard set of applications delivered with each R/3 system are the following:
PP (Production Planning)
MM (Materials Management)
SD (Sales and Distribution)
FI (Financial Accounting)
CO (Controlling)
AM (Fixed Assets Management)
PS (Project System)
WF (Workflow)
IS (Industry Solutions)
HR (Human Resources)
PM (Plant Maintenance)
QM (Quality Management)

These applications are called the functional areas, or application areas, or at times the functional modules of R/3. All of these terms are synonymous with each other.

Traditionally, businesses assemble a suite of data processing applications by evaluating individual products and buying these separate products from multiple software vendors. Interfaces are then needed between them. For example, the materials management system will need links to the sales and distribution and to the financial systems, and the workflow system will need a feed from the HR system. A significant amount of IS time and money is spent in the implementation and maintenance of these interfaces.

R/3 comes prepackaged with the core business applications needed by most large corporations.
These applications coexist in one homogenous environment. They are designed from the ground up to run using a single database and one (very large) set of tables. Current production database sizes range from 12 gigabytes to near 3 terabytes. Around 8,000 database tables are shipped with the standard delivery R/3 product.

Tuesday, January 30, 2007

SAP Introduction

SAP was founded in 1972 in Walldorf, Germany. It stands for Systems, Applications and Products in Data Processing. Over the years, it has grown and evolved to become the world premier provider of client/server business solutions for which it is so well known today. The SAP R/3 enterprise application suite for open client/server systems has established a new standards for providing business information management solutions.

SAP product are consider excellent but not perfect. The main problems with software product is that it can never be perfect.

The main advantage of using SAP as your company ERP system is that SAP have a very high level of integration among its individual applications which guarantee consistency of data throughout the system and the company itself.

In a standard SAP project system, it is divided into three environments, Development, Quality Assurance and Production.

The development system is where most of the implementation work takes place. The quality assurance system is where all the final testing is conducted before moving the transports to the production environment. The production system is where all the daily business activities occur. It is also the client that all the end users use to perform their daily job functions.

To all company, the production system should only contains transport that have passed all the tests.

SAP is a table drive customization software. It allows businesses to make rapid changes in their business requirements with a common set of programs. User-exits are provided for business to add in additional source code. Tools such as screen variants are provided to let you set fields attributes whether to hide, display and make them mandatory fields.

This is what makes ERP system and SAP in particular so flexible. The table driven customization are driving the program functionality instead of those old fashioned hard-coded programs. Therefore, new and changed business requirements can be quickly implemented and tested in the system.

Many other business application software have seen this table driven customization advantage and are now changing their application software based on this table customizing concept.

In order to minimized your upgrading costs, the standard programs and tables should not be changed as far as possible. The main purpose of using a standard business application software like SAP is to reduced the amount of time and money spend on developing and testing all the programs. Therefore, most companies will try to utilized the available tools provided by SAP.

Followers

About Me

My photo
ENERGY is my SECOND NAME because LOYALTY is my FIRST. I NEVER LET PEOPLE DOWN and NEVER FORGIVE BETRAYERS. WORDS are my WEAPONS and STYLE is my ATTITUDE. FRIENDSHIP is my biggest STRENGTH and FRIENDS are my biggest WEAKNESS. I LIKE it when PRESSURE PILES ON ME & TEACHES me how to LIVE LIFE EASY. I know NO BARRIERS, NO LIMITS & LOVE to do THINGS in my WAY. That's when the whole WORLD is AGAINST YOU, but I LOVE OPPOSING FORCES!! That MAKES me more STRONGER as a PERSON. CREATIVITY is my USP and out-of-the-box thinking is my SPECIALISATION. I WEAR my ATTITUDE & I am who I am. Change is the only static thing in the world but I never let it cross me. FAILURE is my BIGGEST FEAR & FEAR is my BIGGEST FAILURE. I NEVER FOLLOW FASHION but LET FASHION FOLLOW ME. I never exaggerate by saying I am so and so, but I am enough GOOD for people to LOVE me and enough BAD to be put behind the bars. ;-). I don't know the straight road to approach life, instead I make my own roads. People who love me get addicted to me and I get addicted to them. So just be in touch and let me touch your life!! My One and only funda: "NEVER STICK TO BASICS"