Title: HP Business Process Testing
1HP Business Process Testing
- Leveraging HP Business Process Testing to Utilize
Multiple Data Sources for Data-Driven Tests
2Topics to be Covered
- Overview - Business Process Testing
- Review Existing Database Driven Test Suite
- Business Case for Upgrading to BPT/QTP
- Building the New BPT/QTP Solution
- Add BPT Data-Driving Component
- Lessons Learned
3- Overview - Business Process Testing
4Grocery Store Analogy for BPT
- Grocery Store is made up of components
- Entrance
- Check Out
- Meats/Deli
- Exit
- Dry Goods
- Dairy
- Bakery
- Produce
- Frozen Foods
- Some components must be processed in a specific
order - Entrance
- Check Out
- Exit
5Business Process Testing Overview
- BPT is an Add-In Module for Quality Center
- Reusable BPT Components
- Components
- Can be Manual, WinRunner, QuickTest Professional
- Modular (Self Contained)
- Log in, Input Data, Log out
- Input and/or Output Parameters
- Drag-and-drop into BPT Test Cases
6Grocery Store Components
Items Activities are Specific to Each Component
- Inputs for Dairy
- (What do we want from Dairy)
- Milk
- Butter
- Yogurt
- Flavor
- Size
- Outputs from Dairy
- (What did we get from Dairy)
- Cost
- Out of Stock?
Inputs
Outputs
7Business Process Testing Overview
Outputs
Inputs
- BPT Components
- Input Parameters
- Data Consumed by Component
- Provided by Quality Center Users
- Output Parameters from Another Component
- Output Parameters
- Derived in the Component Script
- Pass Through (Set Output Parameter Input
Parameter)
8Business Process Testing Overview
9Grocery Store Template
Store Components Assembled in a Template of the
Store Layout
10Determine Shopping Path
- Shopping Path
- Entrance
- Produce
- Meats Deli
- Frozen Foods
- Dairy
- Dry Goods
- Bakery
- Check Out
- Exit
11Reuse Components
- Different Shopping Path
- Entrance
- Produce
- Dry Goods
- Frozen Foods
- Dairy
- Dry Goods (Again)
- Check Out
- Exit
12Business Process Testing Overview
Quality Center BPT Tab Test Case Tab
- Login
- Retrieve Report
- Logout
Login
Input Data
Retrieve Report
Logout
Assemble BPT Components into Test Cases
Add Test Cases to Test Sets
Build BPT Components
13- Case Study
- Review Existing Database Driven Test Suite
14Previous Version of AUT
- HTML Based User Interface
- 3 Pages
- 1 End-Point for all Business Scenarios
Existing Application Under Test
Page 1
Decision Engine
Page 2
Page 3
15WinRunner for Previous AUT
- 350 Tests to Support UAT
- Manual Effort 7 weeks
- Automation w/ WinRunner 8 hours
- Test Data Stored in MS Access Database
WinRunner Automation Framework
Application Under Test
Quality Center
Driving Scripts
Test Data Expected Results for 350 Regression
Tests
Access
16- Business Case for Upgrading to BPT/QTP
17Business Case - Requirements
- Application Redesigned in ASP.NET
- HTML Pages Changed to UI Tabs
- 1 Business Flow Changed to 9 Flows
- Keep Existing Regression Tests
- Quickly Test Flexible Logical Flows
- Use Automation, but Non-Technical Testers
- Ensure Ease of Test Suite Maintenance as
Application Evolves
18AUT Redesigned
- New ASP.NET User Interface
- 12 Tabs Red Denotes Possible Business Scenario
End-Points
New Application Under Test
Tab 5a
Tab 1a
Tab 4
Tab 3
Tab 2
Tab 5b
Tab 1b
Tab 8a
Tab 7a
Tab 6a
Decision Engine
Tab 6b
Tab 7b
19Business Case Solution
- WinRunner is Not Compatible with ASP.NET. QTP Is!
- BPT is Modular like New AUT UI Architecture
- BPT Can Leverage QTP Automation
- BPT/QTP Can Be Integrated with Existing MS Access
Database - BPT Components Easy to Assemble into Test Cases
- BPT Components Simple to Maintain
20- Building the New BPT/QTP Solution
21New Solution Walk-Through
- Create Components in Quality Center BPT Tab
- Create Initialization Component
- Create One Component for Each Tab
- Create Verification Components
- Create QTP Automation for New BPT Components
- Drag and Drop Component(s) into Test Case
Templates
22Create BPT Components
- Created Init Component
- Added One BPT Component per Tab
- Verified with 9 Additional BPT Components
Initialization Component
Tab 5a
Tab 1a
Tab 4
Tab 3
Tab 2
Tab 5b
Tab 1b
Tab 8a
Tab 7a
Tab 6a
Decision Engine
Tab 6b
Tab 7b
23Example New AUT BPT Component
24QTP Code for BPT Component
24 of 48
25Create Test Case
- Steps to Create BPT Test Case
- Create New Test Case
- Select Test Type Business Process
- Drag Drop Components to Assemble Test Case
- Link Parameters Between Components
26Drag Drop BPT Components
27User Input Data
28Repeat For Each BPT Component
29- Add BPT
- Data-Driving Component
30Add BPT Data-Driving Component
- Solution Use Data-Driving Component
- Leverage Existing Access Database
- Leverage New BPT Components
Application Under Test
Tab 1
Data-Driver
350 BPT Test Cases
BPT
Tab 2
BPT
Decision Engine
Tab 3
Access
BPT
31Database Driven BPT Component
- Create Open Data Base Connection (ODBC)
- Create BPT Component
- Create QTP Script
- Add to Template Test Case
- Connect Data-Driver Output Parameters to Other
BPT Component Input Parameters
32Create ODBC connection
Select Data Sources (ODBC)
33Create ODBC Connection
- Click Add Button
- Select MS Access
- Type Data Source Name
- Select Database
- Click OK Note - New ODBC Created
- Click OK to Close Dialog Box
34Create BPT Component
35Create QTP Script Get Data
Establish Connection to MS Access
Build SQL Query, Element by Element
36Create QTP Script Link Data
Link Query Response to Output Parameters
Clean Up ODBC Connection Objects
37Update Template with Data-Driver
38Select BPT Component to Modify
39Link Data-Driver Data to BPT Component
40Link Data-Driver Data to BPT Component
- Select the Correct Parameter
41Connect Data-Driver to Modular Components
Repeat for All Applicable Parameters
42Data-Driver Complete
- Done! Copy and Paste the Template as Many
Times as Needed - Change Test Name Input Parameter on the
Data-Driver Component to Retrieve Different Test
Case.
43 44Two Implementations
- Regression Testing
- 1 Test Case Template
- 350 Test Cases from MS Access
- User Configured Tests
- 9 Test Case Templates
- 20 Classic BPT Test Cases
- More Added With Each Release
45Test Execution Setup Options
- One Test Case, Many Iterations
- Easy to Manage / Change
- Single Host Execution
- Less Detailed Quality Center Reporting
- Many Test Cases, One Iteration
- Difficult to Manage / Change
- Multiple Host Execution
- Granular Quality Center Reporting
46Classic BPT vs. External Database
- Test Data Managed in Classic BPT
- Each Classic BPT Test Cases must be Updated
Individually - No Good Way to Reporting on Test Case Data
- Test Data Stored in External DB
- Finding and Managing Test Data is as Simple as
Querying MS Access - Reporting On Test Case Data is Also Simple
47Summary
- Reviewed Business Process Testing
- Discussed Existing Database Driven Test Suite
- Explained Business Case for Upgrading to BPT/QTP
- Described Building the New BPT/QTP Solution
- Demonstrated How to Add BPT Data-Driving
Component - Discussed Lessons Learned
48