Friday 10 August 2012

Business Process Testing



The Business Process Testing model is role-based, allowing non-technical Subject Matter Experts (working inQuality Center) to collaborate effectively with Automation Engineers (working in QuickTest Professional). Subject Matter Experts define and document business processes, business components, and business process tests, while Automation Engineers define the required resources and settings, such as shared object repositories, function libraries, and recovery scenarios. Together, they can build, data-drive, document, and run business process tests, without requiring programming knowledge on the part of the Subject Matter Expert.

Note: The role structure and the tasks performed by various roles in your organization may differ from those described here according to the methodology adopted by your organization. These roles are flexible and depend on the abilities and time resources of the personnel using Business Process Testing. For example, the tasks of the Subject Matter Expert and the Automation Engineer may be performed by the same person. There are no product-specific rules or limitations controlling which roles must be defined in a particular organization, or which types of users can do which Business Process Testing tasks (provided that the users have the correct permissions).

The following user roles are identified in the Business Process Testing model: 

Subject Matter Expert. The Subject Matter Expert has specific knowledge of the application logic, a high-level understanding of the entire system, and a detailed understanding of the individual elements and tasks that are fundamental to the application being tested. This enables the Subject Matter Expert to determine the operating scenarios or business processes that must be tested and identify the key business activities that are common to multiple business processes. 

Using the Business Components module in Quality Center, the Subject Matter Expert creates business components that describe the specific tasks that can be performed in the application, and the condition or state of the application before and after those tasks. The Subject Matter Expert then defines the individual steps for each business component comprising the business process in the form of manual, or non-automated steps. 

Business Process Testing

During the design phase, the Subject Matter Expert works with the Automation Engineer to identify the resources and settings needed to automate the components, enabling the Automation Engineer to prepare them. When the resources and settings are ready, the Subject Matter Expert automates the manual steps by converting them to keyword-driven components. Part of this process entails choosing an application area for each component. The application area contains all of the required resource files and settings that are specific to a particular area of the application being tested. Associating each component with an application area enables the component to access these resources and settings. 

Using the Quality Center Test Plan module, the Subject Matter Expert combines the business components into business process tests, composed of a serial flow of the components. For example, most applications require users to log in before they can access any of the application functionality. The Subject Matter Expert could create one business component that represents this login procedure. This component procedure can be used in many business process tests, resulting in easier and more cost-efficient maintenance, updating, and test management. 

The Subject Matter Expert configures the values used for business process tests, runs them in test sets, and reviews the results. The Subject Matter Expert is also responsible for maintaining the testing steps for each of the individual business components. 

While defining components, Subject Matter Experts continue collaborating with the Automation Engineer. For example, they may request new operations (functions) for a component or discuss future changes planned for the component.

Automation Engineer. The Automation Engineer is an expert in using an automated testing tool, such as QuickTest Professional. The Automation Engineer works with the Subject Matter Expert to identify the resources that are needed for the various business process tests.

The Automation Engineer then prepares the resources and settings required for testing the features associated with each specific component, and stores them in an application area within the same Quality Center project used by the Subject Matter Experts who create and run the business process tests for the specific application.

Each application area serves as a single entity in which to store all of the resources and settings required for a component, providing a single point of maintenance for all elements associated with the testing of a specific part of an application. Application areas generally include one or more shared object repositories, a list of keywords that are available for use with a component, function libraries containing automated functions (operations), recovery scenarios for failed steps, and other resources and settings that are needed for a component to run correctly. Components are linked to the resources and settings in the application area. Therefore, when changes are made in the application area, all associated components are automatically updated.

The Automation Engineer uses QuickTest features and functionality to create these resources from within QuickTest. For example, in QuickTest, the Automation Engineer can create and populate various object repositories with test objects that represent the different objects in the application being tested, even before the application is fully developed. The Automation Engineer can then add repository parameters, and so forth, as needed. The Automation Engineer can manage the various object repositories using the Object Repository Manager, and merge repositories using the Object Repository Merge Tool. Automation Engineers can also use QuickTest to create and debug function libraries containing functions that use programming logic to encapsulate the steps needed to perform a particular task.

Using the resources created by the Automation Engineer, the Subject Matter Experts can automate component steps, and create and maintain components and business process tests.

Automation Engineers can also create, debug, and modify components in QuickTest, if required.

BPT Methodology in QTP and Quality Center

BPT Methodology in QTP and Quality Center


Each scenario that the Subject Matter Expert creates is a business process test. A business process test is composed of a serial flow of components. Each component performs a specific task. A component can pass data to a subsequent component. 

Understanding Components: Components are easily-maintained reusable scripts that perform a specific task, and are the building blocks from which an effective business process testing structure can be produced. Components are parts of a business process that has been broken down into smaller parts. For example, in most applications users need to log in before they can do anything else. A Subject Matter Expert can create one component that represents the login procedure for an application. Each component can then be reused in different business process tests, resulting in easier maintenance, updating, and test management. 

Components are comprised of steps. For example, the login component's first step may be to open the application. Its second step could be entering a user name. Its third step could be entering a password, and its fourth step could be clicking the Enter button. 

You can create and edit components in QuickTest by adding steps on any supported environment, parameterizing selected items, and enhancing the component by incorporating functions (operations) that encapsulate the steps needed to perform a particular task. In Quality Center, a Subject Matter Expert creates components and combines them into business process tests, which are used to check that the application behaves as expected. 

Creating Components in the Quality Center Business Components Module:The Subject Matter Expert can create a new component and define it in the Quality Center Business Components module. The Business Component module includes the following:

Details: Provides a general summary of the component's purpose or goals, and the condition of the application before and after a component is run (its pre-conditions and post-conditions).

Snapshot: Displays an image that provides a visual cue or description of the component's purpose or operations.

Parameters: Specifies the input and output component parameter values for the business component. Implementing and using parameters enables a component to receive data from an external source and to pass data to other components in the business process test flow.

Design Steps: Enables you to create or view the manual steps of your business component, and to automate it if required.

Automation: Displays or provides access to automated components. For keyword-driven components, enables you to create and modify the steps of your automated business component in a keyword-driven, table format, and provides a plain-language textual description of each step of the implemented component. 

Used by: Provides details about the business process tests that include the currently selected business component. The tab also includes a link to the relevant business process test in the Test Plan module.

Component Requests pane: Enables you to handle new component requests that were generated in the Test Plan module. Component requests are requests to add a new business component to the project.

Implementing Components in QuickTest Professional: Generally, components are created by Subject Matter Experts in Quality Center, although they can also be created and debugged in QuickTest. 

In QuickTest, you create components by recording steps on any supported environment or by adding steps manually (if the object repository is populated and the required operations are available). You can parameterize selected items. You can also view and set options specific to components. 

QuickTest enables you to create and modify two types of components: business components and scripted components. A business component is an easily-maintained, reusable unit comprising one or more steps that perform a specific task. A scripted component is an automated component that can contain programming logic. Scripted components share functionality with both test actions and business components. For example, you can use the Keyword View, the Expert View, and other QuickTest tools and options to create, view, modify, and debug scripted components in QuickTest. Due to their complexity, scripted components can be edited only in QuickTest. (If needed, you can convert test actions to scripted components. For more information, click the Help button in the Action Conversion Tool window.) 

In Quality Center, the Subject Matter Expert can open components created in QuickTest. The Subject Matter Expert can then view and edit business components, but can only view the details for scripted components.

Creating Business Process Tests in the Quality Center Test Plan ModuleTo create a business process test, the Subject Matter Expert selects (drags and drops) the components that apply to the business process test and configures their run settings. 

Note: When you run a business process test from Quality Center, the test run may also be influenced by settings in the QuickTest Remote Agent.

Each component can be used differently by different business process tests. For example, in each test the component can be configured to use different input parameter values or run a different number of iterations. 

If, while creating a business process test, the Subject Matter Expert realizes that a component has not been defined for an element that is necessary for the business process test, the Subject Matter Expert can submit a component request from the Test Plan module.

Running Business Process Tests and Analyzing the Results: You can use the run and debug options in QuickTest to run and debug an individual component. 

You can debug a business process test by running the test from the Test Plan module in Quality Center. When you choose to run from this module, you can choose which components to run in debug mode. (This pauses the run at the beginning of a component.) 

When the business process test has been debugged and is ready for regular test runs, the Subject Matter Expert runs it from the Test Lab module similar to the way any other test is run in Quality Center. Before running the test, the Subject Matter Expert can define run-time parameter values and iterations using the Iterations column in the Test Lab module grid. 

From the Test Lab module, you can view the results of the entire business process test run. The results include the value of each parameter, and the results of individual steps reported by QuickTest. 

You can click the Open Report link to open the complete QuickTest report. The hierarchical report contains all the different iterations and components within the business process test run.

Understanding the Differences Between Components and Tests: If you are already familiar with using QuickTest to create action-based tests, you will find that the procedures for creating and editing components are quite similar. However, due to the design and purpose of the component model, there are certain differences in the way you create, edit, and run components. The guidelines below provide an overview of these differences. 

- A component is a single entity. It cannot contain multiple actions or have calls to other actions or to other components.

- When working with components, all external files are stored in the Quality Center project to which you are currently connected.

- The name of the component node in the Keyword View is the same as the saved component. You cannot rename the node.

- Business components are created in the Keyword View, not the Expert View.
You add resources via the component's application area, and not directly to the component.

- Components use custom keywords created in function libraries to perform operations, such as verifying property values and opening the application you are testing.

Keywords:

business process testing tutorial
business process testing ppt
business process testing wiki
business process testing framework
business process testing in qtp
business process testing in quality center
business process testing user guide
business process testing advantages
business process testing ppt
business process testing tutorial
business process testing wiki
business process testing framework
qtp interview questions
business process testing framework ppt
mercury interactive business process testing
mercury business process testing user's guide
business process testing methodology
business process testing ppt
bpt framework
business process testing in qtp
business process testing tutorial
business process testing ppt
business process testing framework
business process testing user guide
business process testing definition
business process testing wiki
mercury business process testing
business process testing in qtp
bpt tutorial

All about Business Process Testing (BPT)

All about Business Process Testing (BPT)


HP Business Process Testing in a nut shell is used for designing business components that can be reused in business process tests.

Pre- requisite : A separate add-in which comes along with Quality Centre. 
QC 10 - [http://update.external.hp.com/qualitycenter/qc100/mictools/qtp/qtp_10/QuickTest_Add-in_for_Quality_Center.msi]

Terminologies:
Components are easily-maintained, reusable units that perform a specific task. Quick Test provides two types of components: Manual / QTP / Winrunner
QTP - business components and scripted components
Business Components are keyword driven components
Scripted Components are regular code driven components.

Application Area: Collection of testing resources  like function libraries, shared object repositories, keywords, testing preferences and recovery scenarios

Component Input and Output Parameters - Variable values to and from a business component.

1. Creating Application Areas 
Create, populate, and maintain shared object repository files that are used by Quick Test to identify the objects in your application
Create function libraries that contain functions, or operations/keywords that can be called by a component.
You can create multiple application areas , each one focusing on a particular part of the application.

2. Creating Components in the Quality Center Business Components Module
Details: pre-conditions and post-conditions
Snapshot:  If needed
Parameters: Specifies the input and output component parameter values for the business component. Design Steps: Create or view the manual steps of your business component
Automation:  Create keyword driven components and scripted components
Used by:  Business process tests that include the currently selected business component.
Component Requests pane: Handle new component requests that were generated in the Test Plan module.

3. Creating Business Process Tests and Flows in the Quality Center Test Plan Module SME creates a business process test or flow in the Test Plan module by dragging and dropping required components.

4. Run the BPT tests like regular tests from test lab



Advantages of Business Process Testing Framework:

  1. Eliminates the need of creating a separate framework for the Automation.
  2. Both input and output parameters can be directly added in Quality Centre
  3. A manual tester can remove the unwanted component from the test flow without affecting the code
  4. Single point of maintenance for all elements associated with the testing of a specific part of your application
  5. High reusability with data-driven test components
  6. Quickly test multiple flows , suitable for agile frameworks
  7. Need not have expertise in automation to create and run tests once the components are built
Practical way of applying BPT to your project:
  1. Create components from QC using scripted components
  2. Create atleast one initialization / driver component
  3. Create one component for each reusable functionality
  4. Create Verification components
  5. Create new tests by choosing test type = business component
  6. Drag and drop components into test case templates under test plan
  7. Link parameters between components
  8. Add the tests to test sets in test lab


Update: With QC 10 being really slow wrt BPT HP came up with ALM(Application Lifecycle Managemet) for QC11 
In QC 10 every single component that is in a BPT test has to be downloaded separately and run
In QC 11 there is a "BPTWrapperTest" that takes a BPT test, downloads all its components, and generates a single QTP - BPT Wrapper test to run


Keywords:

business process testing tutorial
business process testing ppt
business process testing wiki
business process testing framework
business process testing in qtp
business process testing in quality center
business process testing user guide
business process testing advantages
business process testing ppt
business process testing tutorial
business process testing wiki
business process testing framework
qtp interview questions
business process testing framework ppt
mercury interactive business process testing
mercury business process testing user's guide
business process testing methodology
business process testing ppt
bpt framework
business process testing in qtp
business process testing tutorial
business process testing ppt
business process testing framework
business process testing user guide
business process testing definition
business process testing wiki
mercury business process testing
business process testing in qtp
bpt tutorial