Participant Training Guide Worksoft Certify for SAP Applications version 8.6.0

2,459 331 13MB

English Pages [296] Year 2011

Report DMCA / Copyright

DOWNLOAD FILE

Polecaj historie

Participant Training Guide Worksoft Certify for SAP Applications  version 8.6.0

  • Author / Uploaded
  • coll.

Table of contents :
00_Cover_Front_SAP
01_Title Page_SAP
02_Table of Contents_SAP
03_Introduction_SAP
04_Lesson 1 - Intro to Certify_SAP
04_Lesson 2.1 - Defining and Developing Processes_SAP
04_Lesson 2.2 - Executing Processes and Viewing Results_SAP
04_Lesson 3.1 - Creating and Using Variables_SAP
04_Lesson 3.2 - Creating and Managing Layouts_SAP
04_Lesson 3.3 - Creating and Adding Recordsets_SAP
04_Lesson 4 - How To_SAP
Batch file example:
Psexec Reference example:
Execution Test Processes with the VNCView (client):
Requirements:
To create a .BAT file from within Certify:
Saving the .BAT Files:
Edit the Batch File:
Modifying the .BAT File:
05_Glossary and Eval
06_Cover_Back

Citation preview

Participant Training Guide Worksoft Certify for SAP Applications Version 8.6.0

Version 8.4.1 Participant Training

Guide for SAP

Worksoft Certify 8.6.0 Worksoft Certify for SAP Applications

Participant Training Guide November 2011

Certify 8.6.0 Participant Training Guide © Copyright 1999-2011 by Worksoft, Inc. All rights reserved. All text and figures included in this publication are the exclusive property of Worksoft and may not be copied, reproduced, or used in any way without the express written permission of Worksoft. Information in this document is subject to change without notice and does not represent a commitment on the part of Worksoft. Worksoft may have patents or pending patent applications covering subject matter in this document. The furnishing of this document does not give you any license to these patents except as expressly provided in any written license agreement from Worksoft, Inc. All other copyrights are the property of their respective owners. Trademarks Worksoft and Worksoft Certify are registered trademark of Worksoft Inc. All other trademarks and trade names mentioned in this guide are the property of their respective owners.

Contents Introduction……………………………………………………………. vii About This Guide………………………………………………………………………………………

vii

Training at a Glance…………………………………………………………………………………...

vii

Lesson 1 — Introduction to Worksoft Certify…………………… 1 Overview………………………………………………………………………………………………..

2

Objectives………………………………………………………………………………………......

2

Contents…………………………………………………………………………….....................

2

Business Process Certification Methodology……………………………………………………….

5

Certify Module…………….……………………………………………………………………......

6

Certify Architecture………………………………………………………………….....................

8

Accessing Worksoft Certify…………………..……………………………………………………….

10

Exploring the Certify Interface……..…………………………………………………………......

11

General Navigation Flow………….……………………………………………….....................

12

Locating Application Configuration Information…………………………………………………

13

Certify Setup……………….……….……………………………………………….....................

14

Lesson Summary………….……….……………………………………………….....................

21

Lesson 2.1 — Defining and Developing Processes……………

23

Overview………………………………………………………………………………………………..

24

Objectives………………………………………………………………………………………......

24

Contents…………………………………………………………………………….....................

24

Processes Overview………………………………….……………………………………………….

27

Process and Data Editor Overview……….…………………………………………………......

27

Identifying Processes……………………………………………………………….....................

29

Naming Processes…………………………………………………………………………………

30

Naming Process Folders………………...……………………………………………………......

30

Certify 8.6.0 Participant Training Guide

i

Table of Contents

Defining Processes in Certify……………..……………………………………….....................

32

Creating Process Folders…………………………………………………….................................

34

Certify LiveTouch Overview…………………………………………………………………………..

36

Certify LiveTouch Menu Options………………………………………………….....................

37

Preparing to Use Certify LiveTouch……………………………………………………………...

37

Defining Processes for the SAP OTC Transaction………………………………………………...

38

Executing Processes………………………………………………………………………………….

57

Viewing and Interpreting Execution Results…………………………………………………….

57

Learning Objects while Adding Steps with LiveTouch……………………………………………..

61

Capture Process Overview…………………………………………………………………………...

66

Setting Up Capture Process……………………………………………………………………..

66

Lesson Summary………………………………………………………………………………………

71

Lesson 2.2 — Executing Processes and Viewing Results……

73

Overview……………………………………………………………………………………………….. Objectives………………………………………………………………………………………......

74 74

Contents…………………………………………………………………………….....................

74

Configuration Process Execution…………………………………………………………………….

75

Settings Tab……………………………...….…………………………………………………......

75

Attributes Tab…………………………………………………………………………..................

77

Configuration Dialog Box Buttons…………..……………………………………………………

78

Execution……………………………………....... ……………………………………………......

78

Managing Execution Results…………………………………………………………………………

80

Viewing Execution Results………………………………………………………………………..

81

Editing Process Steps from the Result Viewer……………………………………………………..

84

Generating Execution Reports……………………………………………………………………….

85

Lesson Summary………………………………………………………………………………………

87

Lesson 3.1 — Creating and Using Variables…………………….. 89 Overview………………………………………………………………………………………………..

90

Objectives………………………………………………………………………………………......

90

Contents…………………………………………………………………………….....................

90

Variables Overview……………………………………………………………………………………

93

Preparing to use Variables……………………………………………………………………......

93

Certify 8.6.0 Participant Training Guide

ii

Table of Contents

Defining Variables in Certify…………………………………………………………..................

94

Using Variables in Certify…………………………………………………………………………

95

Adding Variables to Existing Process Steps…. ……………………………………………......

96

Lesson Summary………………………………………………………………………………………

98

Lesson 3.2 — Creating and Managing Layouts…………………. 99 Overview………………………………………………………………………………………………..

100

Objectives………………………………………………………………………………………......

100

Contents…………………………………………………………………………….....................

100

Layouts Overview…...…………………………………………………………………………………

101

Defining Layouts in Certify……………………………………………………………………......

102

Creating Layouts Manually........................................................................................................

104

Creating Layouts Using Processes………………………………………………………………….

108

Creating a Layout for a Process……………………………………………………………………..

111

Lesson Summary………………………………………………………………………………………

119

Lesson 3.3 — Creating and Adding Recordsets……..…………. 121 Overview………………………………………………………………………………………………..

122

Objectives………………………………………………………………………………………......

122

Contents…………………………………………………………………………….....................

122

Recordsets Overview…..……………………………………………………………………………..

123

Working with Recordsets in Certify…………….……………………………………………......

124

Adding Layouts and Recordsets to Existing Process Steps………………………………….......

133

Executing Processes that Use Data…………………………………………………………………

136

Using the Process Usage Feature to Find Layouts………………………………………………..

137

Using the Process Usage Feature to Find Recordsets……………………………………………

138

Lesson Summary………………………………………………………………………………………

140

Lesson 4 — How To………………………………...……..…………. 141 How to Identify Test Requirements………………………………………………………………….

143

Requirements Overview………………………………………………………………………......

143

Identifying Test Requirements………….………………………………………….....................

144

Using Requirements……………………………………………………………………………….

145

Certify 8.6.0 Participant Training Guide

iii

Table of Contents

Understanding Child Requirements…………………………………………………………......

145

Creating Requirements and Child Requirements………………………………………….......

146

Linking Processes to Requirements………………………..……………………………………

148

Promoting Results to “Result of Record”………………………………………………………..

149

Viewing Requirement Status……………………………………...………………………………

149

How to Apply Read-Only Access to an Application Version………………………………………

151

How to Work with Recordsets………………………………………………………………………..

153

Theory of Recordset Usage………………………………………………………………………

153

Data Handling Options…………………………………………………………………………….

156

Benefits and Limitations of Each Option………………………………………………………...

158

Using the Recordset Variable Option……………………………………………………………

159

Using the Recordset Filter Option………………………………………………………………..

169

How to Add Logic to a Process………………………………………………………………………

180

How to Create Queries, Reports, and Charts………………………………………………………

190

Creating Queries and Reports Overview………………………………………………………..

190

Management Reports……………………………………………………………………………...

190

Running Management Reports…………………………………………………………………...

198

How to Perform Administrative Functions…………………………………………………………..

199

Creating Users and Groups……………………………………………………………………….

199

Creating Applications and Versions……………………………………………………………...

205

Creating Projects…………………………………………………………………………………..

207

How to Define State Processes………………………………………………………………………

210

How to Define Naming Conventions…………………………………………………………………

221

How to use Worksoft Lights Out Testing Methodology (WLOT)…………………………………

224

Worksoft Lights Out Testing Overview…………………………………………………………..

224

Prerequisites for Worksoft Lights Out Testing…………………………………………………..

224

Issues and Concerns using WLOT………………………………………………………………

225

WLOT Physical Environment Requirements……………………………………………………

226

Exporting the Test Process to a .BAT File………………………………………………………

229

Executing Batch Files Manually…………………………………………………………………..

237

Troubleshooting…………………………………………………………………………………….

237

Executing the Batch File – Scheduled…………………………………………………………...

238

Executing the Batch File – Setting up a Schedule……………………………………………..

242

Helpful Design and Execution Tips………………………………………………………………

246

Certify 8.6.0 Participant Training Guide

iv

Table of Contents

How to Use the SAP Learn Utility……………………………………………………………………

248

Certify SAP Learn Overview………………………………………………………………………

249

Importing Application Maps……………………………………………………………………….

258

How to Identify SAP Classes and Actions…………………………………………………………..

261

General Classes and Actions……………………………………………………………………..

261

SAP Classes and Actions…………………………………………………………………………

262

Certify Process System Commands……………………………………………………………..

265

How to Access Worksoft Certify Help……………………………………………………………….

270

Glossary Course Evaluation

Certify 8.6.0 Participant Training Guide

v

Table of Contents

Certify 8.6.0 Participant Training Guide

vi

Introduction 1

About This Guide Welcome to the Worksoft Certify Training! This training guide is yours to keep and personalize for your own unique needs. The guide contains instructions, exercises, examples, and definitions that you need in this class. Furthermore, your instructor may provide additional training material throughout the class. In addition to the content included in this guide, you may also review a series of eLearning tutorials on various topics in Certify. You are encouraged to take notes. Feel free to take notes directly in this guide. By personalizing this guide to your specific needs, you will have your own customized training and reference guide to use after you complete the class. You will find this helpful back on the job whenever you need to refresh your memory on what you have learned during this class. Although there are several examples included in this guide, the examples do not contain your actual data. Sample data is used to provide accurate results for training. You will have the opportunity during the class to work with your data to complete exercises. Your instructor will facilitate those exercises.

Training at a Glance This manual is divided into the following sections: 

Lesson 1 – Introduction to Certify explains the Certify Life Cycle approach, how to log on/off Certify, and exploring the Worksoft Certify interface.



Lesson 2 is divided into two parts that explains how to define, develop, and execute processes.





Lesson 2.1 — Defining and Developing Processes



Lesson 2.2 — Executing Processes and Viewing Results

Lesson 3 is divided into three parts that explains how variables, layouts, and recordsets are used in data-driven testing. 

Lesson 3.1 — Creating and Using Variables



Lesson 3.2 — Creating and Managing Layouts



Lesson 3.3 — Creating and Adding Recordsets



Lesson 4 – How To… provides a series of exercises on various features of Worksoft Certify.



Glossary



Course Evaluation

Certify 8.6.0 Participant Training Guide

vii

Lesson 1 Introduction to Worksoft Certify

Certify 8.6.0 Participant Training Guide

1

Lesson 1: Introduction to Worksoft Certify

Overview This lesson discusses the Certify life cycle approach and methodology. It also covers administrative tasks such as adding users and groups and setting permissions.

Objectives After completing this lesson, you will be able to: 

Define the business process certification methodology.



Explain the Certify life cycle approach.



Log on and off Worksoft Certify.



Identify the seven sections of the main Certify interface.



Add yourself as a user.



Grant permissions to your user profile.



Add groups and grant permissions to the groups.

Contents This lesson contains the following topics and exercises:

Topic

2

See Page

Business Process Certification Methodology

5

Certify Module

6

Certify Architecture

8

Accessing Worksoft Certify

10

Exercise 1A — Logging on to Worksoft

10

Exploring the Certify Interface

11

Certify Setup

14

Exercise 1B — Adding Yourself as a User

14

Exercise 1C — Granting Permissions to Your User Profile

16

Exercise 1D — Adding Groups

18

Exercise 1E — Granting Permissions to Groups

19

Exercise 1F — Logging In with your User Name and Password

20

Certify 8.6.0 Participant Training Guide

Lesson 1: Introduction to Worksoft Certify

OPTIONAL EXERCISE — Certify Basics Tutorial

For the next 15 minutes, you will review the Certify Basics eLearning tutorial.

This turorial covers: 

Business Process Certification Methodology



Certify Life Cycle Approach



Business Process Certification Components



Logging On and Off Certify



Certify Interface



Application Configuration Information

Use the next page to take notes from this tutorial.

Keep in mind, we do not expect you to memorize everything that you will learn in this tutorial. It is intended to teach you the processes and procedures as an initial learning. When it comes time for you to perform these tasks in Certify and you don’t remember all the steps, you can always go back to the tutorial (or this training guide) for additional practice.

Certify 8.6.0 Participant Training Guide

3

Lesson 1: Introduction to Worksoft Certify

NOTES ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________

4

Certify 8.6.0 Participant Training Guide

Lesson 1: Introduction to Worksoft Certify

Business Process Certification Methodology Business Process Certification is a testing methodology from Worksoft that parallels the software development and deployment cycle, but focuses attention on assuring that critical business processes work. Business Process Certification prioritizes the user tasks that carry the highest business risk if they fall. Business risks arise from frequency of use or from the consequences of failure. For example, a certain type of transaction may account for 80% of all daily tasks, and therefore, should be classified as high risk. Other types of transactions may be performed less frequently, but if they fall they have dramatic consequences, such as incurred costs. In terms of the system life cycle, Business Process Certification is: 

The gateway to business operations.



The point at which the business confirms that it can continue to carry on uninterrupted when the software is introduced into production.



An event that happens last in the system life cycle. Why is that so important? Because someone in a deadline crunch might skip unit or regression testing, but would take the necessary steps to certify his/her critical business processes.

To effectively implement Business Process Certification, remember the following: 

When determining coverage, prioritize by business risk. It is not necessary to test every possible error condition, every bug ever detected, or each and every combination, pathway, data type, etc. This distinction is crucial because implies risk management.



Accept the fact that you cannot test every scenario. The average commercial application would require billions of tests to cover every possible circumstance. Simple economics and physics prevent you from achieving complete coverage.



Define your success by what you do accomplish instead of what you don’t. Business Process Certification shifts the focus from what is possible to what is essential. The underlying logic is that if you can’t test everything, then you must test the business tasks or processes that are most critical to the business.



Rate the identified defects by operational impact. When defects are found, you should evaluate the impact of the defect on your business operations.



As additional needs or potential risks are uncovered, remember to keep your priorities straight. If you try to test everything, you will end up testing nothing very well.

The result of the Business Process Certification methodology is a model or profile of production that provides a known level of assurance that your critical business processes continue to operate as expected even after software changes.

Certify 8.6.0 Participant Training Guide

5

Lesson 1: Introduction to Worksoft Certify

Certify Module Certify is an integrated test repository and automated test execution solution that supports the Business Process Certification methodology. The combination of the Business Process Certification and Certify allows you to parallel the entire product life cycle and capture it in an organized, measurable, and maintainable way. Certify provides focus on test coverage through a user-friendly, point and click interface that can be used to document and automate test cases. Documenting your test coverage includes capturing and maintaining information about your applications, business processes, and operating cycles in a way that is standard across applications. This means you can perform end-to-end certification of business processes that cross systems. Automating test cases means using what you have documented to certify your applications. Certify’s integrated components not only allow you to document and automate your test cases, but they empower you to track the progress of your certification and measure results throughout the complete product life cycle. Certify’s complete life cycle approach prepares you to execute the certification process as soon as the software is ready for test, instead of waiting to define or develop it. This, in turn, gives you more time and minimizes the impact of the inevitable schedule slip. Table 1 shows how Certify addresses the required Business Process Certification tasks for each of the phases within the product life cycle. Table 1 — The Life Cycle Approach Using Certify

Life Cycle Phase

Business Process Certification

Certify

Plan

Identify applications(s) for test

Application(s) and Version(s)

Identify end users

Project

Capture business functions

Requirements

Adopt naming standards

Processes

Design

Define critical business tasks Define operating cycles Build

Define data elements

Create map

Develop test cases

Learn and Import/Resolve

Define data states

Interfaces Variables Processes Recordsets

Test

6

Execute certification

Automated or Manual Execution

Capture results

Result Viewer

Certify 8.6.0 Participant Training Guide

Lesson 1: Introduction to Worksoft Certify

Life Cycle Phase

Business Process Certification

Certify

Analyze

Analyze results

Result Viewer

Identify incidents

Queries and Reports

Status analysis Maintain

Receive new application version or feedback from previous application version Identify, implement changes Reconcile application maps

Import Resolve and Processes Interfaces

Figure 1 illustrates Certify’s approach to the product life cycle. Certify’s approach starts with planning your Business Process Certification, designing your certification process, and building the actual test cases. Certify allows you to document all of the business process components from your plan, design, and build phases and stores them in a test repository. Once you have completed these three phases, you then execute your business processes, analyze the results, and begin maintenance of your certification process. Figure 1 — Certify Life Cycle Approach

Certify 8.6.0 Participant Training Guide

7

Lesson 1: Introduction to Worksoft Certify

Certify Architecture Certify maintains an inventory of all of your applications and Business Process Certification components. This structure ties all of the components into a consistent hierarchy. Figure 2 shows how Certify organizes your application and business process components in a structured hierarchy. The top-level of the hierarchy are projects that contain a set of application/versions and the mapped windows and objects from those application versions. Also contained within a project are the collections of business process components that you have documented in Certify. These components are shared by all applications within the project. This linking of the business processes to the application components supports maintainability. A change in any component can be mapped to the effect on any other, thus ensuring that your systems and your business operations stay synchronized as things change. Figure 2 — Business Process Certification Components

By following this structure, you can create a life cycle that mirrors the sequence and flow of events and data throughout all of your enterprise systems. Figure 3 shows how the Certify life cycle approach interrelates with the functionality of Certify.

8

Certify 8.6.0 Participant Training Guide

Lesson 1: Introduction to Worksoft Certify

Figure 3 — Certify Life Cycle Approach with Business Process Components

There are four primary areas in this life cycle: components, database, applications, and data analysis. 

Components represent what you are planning, designing, and building in Certify.



Database represents the repository where documented components are stored.



Applications represent the type of application being tested.



Data analysis represents the data for your certification.

Figure 3 illustrates how the Certify components are used to perform Business Process Certification in a typical product life cycle.

Certify 8.6.0 Participant Training Guide

9

Lesson 1: Introduction to Worksoft Certify

Accessing Worksoft Certify Before you can begin to use Certify, you must first launch it and log in successfully. Once logged in, you can explore the interface and become familiar with its navigation.

EXERCISE 1A — Logging on to Worksoft Certify

In this exercise, you will log on to Certify for the first time using the username and password provided by your instructor. Step

Action

1.

Click Start and point to All Programs.

2.

Point to the Worksoft folder.

3.

Point to the Certify folder.

4.

Select Worksoft Certify.

The Worksoft Certify Login dialog box appears.

5.

6.

10

Type in field values as follows: Field

Value

User Name

admin

Password

password

Click OK.

Certify 8.6.0 Participant Training Guide

Lesson 1: Introduction to Worksoft Certify

Exploring the Certify Interface Figure 4 illustrates the seven sections of the main Certify interface. Figure 4 — Certify Interface



Menu Bar — contains menus of functions and commands needed to carry out tasks in Certify. Some menu options become inactive depending on the task you select on the Navigation taskbar.



Toolbar — gives quick access to commonly performed actions. The buttons are specific to the selected tasks on the Navigation Taskbar.



Navigation Tree — contains a hierarchy or tree view of the selected project component or administrative module.



Navigation Taskbar — contains the buttons you click to access key Certify components. The button or task chosen affects what you see in the window panes. Specific user access to these buttons is controlled by a Certify administrator.



Summary Pane — located on the top right-side of the primary window. Tis pane shows dynamic, display only information that changes depending on the task and nodes selected in the Navigation pane.

Certify 8.6.0 Participant Training Guide

11

Lesson 1: Introduction to Worksoft Certify



Detail Pane — appears in the bottom right-side of the primary interface (beneath the Summary pane). It contains tabs of information related to the items in the Summary pane. This information is also dynamic and display-only.



Status Bar — appears in the bottom left-side of the screen (beneath the Navigation taskbar). It displays the name of the open project (or “Unknown” if a project is not opened).

General Navigation Flow There is a consistent pattern to navigating the interface elements previously discussed. Depending on the task you want to perform, you first select the appropriate button on the Navigation taskbar. The other elements change to reflect the data contained in the chosen area. Next, you select a node in the Navigation tree. Related items then appear in the Summary pane. You then select an item in the Summary pane to carry out tasks (as shown in Figure 5) or click on the tabs in the Detail pane. You can also carry out tasks in those tabs (other than the Details tab). You will discover that Certify actions are accessed by a right-click. Figure 5 — Relationship of Certify Interface Elements

You will follow this pattern repeatedly as you learn about and carry out tasks within the various Certify components.

12

Certify 8.6.0 Participant Training Guide

Lesson 1: Introduction to Worksoft Certify

Locating Application Configuration Information The data you add or define in Certify is stored in a database. In order to view or edit data in Certify, the linkage information must be correct in the Certify Configuration Tool dialog box, accessible by selecting Change Configuration from the Tools menu. Figure 6 — Certify Configuration Tool

Certify 8.6.0 Participant Training Guide

13

Lesson 1: Introduction to Worksoft Certify

Certify Setup Before moving on to the more complex tasks of Certify, it’s important that you understand the basics of creating users and groups. The next series of exercises will walk you through those steps. Although these functions will be performed by a designated Administrator, these steps must be performed in this training class to advance to the next set of exercises.

EXERCISE 1B — Adding Yourself as a User

A user is someone who has access to Certify and can carry out Certify tasks. It is the administrator’s responsibility to set up new users and modify existing users. In this exercise, you will define our user profile and add it to the Administrator group. Step

Action

1.

On the Navigation taskbar, click Users & Groups.

2.

In the Navigation tree, right-click Users and select New User.

The New User dialog box appears.

14

Certify 8.6.0 Participant Training Guide

Lesson 1: Introduction to Worksoft Certify

3.

Type in field values or select options as follows: Field

Value/Action

First Name

Last Name

Username

Email ID

Leave blank

Role

Leave blank Note: The Role field is an optional field. Users can use this field to state their role on the project.

4.

New Password

Verify Password

(repeated)

Force password change on logon

Leave blank

Password Never Expires

Select

Still within the New User dialog box, right-click in the Current Groups Containing User pane.

A shortcut menu appears. 5.

Select Add Group.

The Select Group dialog box appears.

6.

Select Administrator.

7.

Click OK.

Certify 8.6.0 Participant Training Guide

15

Lesson 1: Introduction to Worksoft Certify

The Administrator Group appears in the Current Groups Containing User pane. 8.

In the New User dialog box, click OK.

You are now added as a user of Certify and a member of the default Administrators group.

EXERCISE 1C — Granting Permissions to Your User Profile

To grant permissions to users, you access the Users & Groups area. You can grant permission to a user at the time you add a user profile, or you can edit a user’s profile and add or modify the permission later.

Project permission overrule Group and User permissions. Group permissions overrule User permissions. In this exercise, you will grant permissions to your user profile. Step

Action

1.

On the Navigation taskbar, click Users & Groups.

2.

In the Summary pane, select .

3.

In the Detail pane, select the Permissions tab.

Your current permissions appear. This information is view-only. Note that there are no permissions selected at this point.

4.

Right-click anywhere within the Permissions tab.

A shortcut menu appears.

16

Certify 8.6.0 Participant Training Guide

Lesson 1: Introduction to Worksoft Certify

5.

Select Edit Permissions.

The User Permissions dialog box appears.

Notice the Hook Enabled column. Hooks provide the mechanism to call or start external programs from the Certify program. The external program is opened when you add a hook to a project and send a process result to the hook. For more information on Hooks, refer to Certify Help. 6.

Grant yourself permission to all Certify components by clicking each checkbox beneath Read, Write, and Execute or by clicking the “select all” checkbox at the top of each list as shown here.

7.

Click OK to save the changes.

Certify 8.6.0 Participant Training Guide

17

Lesson 1: Introduction to Worksoft Certify

EXERCISE 1D — Adding Groups

A group is a collection of users that perform similar Certify tasks or need similar access to Certify functions. In this exercise, you will add a new group called Test Group and add yourself to the group. Step

Action

1.

On the Navigation taskbar, click Users & Groups.

2.

In the Navigation tree, right-click Groups and select New Group.

The New Group dialog box appears.

3.

Type in field values as follows: Field

Value

Name

Test Group_ Example: Test Group_MC

Description 4.

Certify Testers Group

Right-click anywhere within the Current Users in Group pane.

A shortcut menu appears. 5.

18

Select Add User to Group.

Certify 8.6.0 Participant Training Guide

Lesson 1: Introduction to Worksoft Certify

6.

Select .

7.

Click OK.

You are added to the Test Group 8.

Click OK to save the new group.

EXERCISE 1E — Granting Permissions to Groups

You can grant permission to a group at the time you add them, or you can edit the group’s profile and add or modify them later. In this exercise, you will modify the group added in the previous exercise and grant it a unique set of permissions. The members of the group will then inherit those permissions along with the ones they currently have.

Step

Action

1.

On the Navigation taskbar, click Users & Groups.

2.

In the Navigation tree, click Groups.

The Summary pane displays the available groups. 3.

In the Summary pane, select Test Group_.

4.

In the Details pane, select the Permissions tab.

The Group’s current permissions appear, (This information is view-only.) 5.

Right-click anywhere within the Permissions tab and select Edit Permissions.

The Group Permissions dialog box appears. 6.

Grant Read and Write permissions for the group for the following features: Entity Name

Read

Write

Execute

Data





n/a

Variables





n/a

Processes







Requirements





n/a

Certify 8.6.0 Participant Training Guide

19

Lesson 1: Introduction to Worksoft Certify

Entity Name

7.

Read

Write

Execute

Interfaces





n/a

Reports





n/a

Results





n/a

Extensions





n/a

Maps





n/a

Click OK.

These permissions are added to the Test Group.

EXERCISE 1F — Logging In with Your Username and Password

In this exercise, you will log out of Certify and then back in using your new username and password.

Step

Action

1.

In the File menu, select Exit to close Certify.

2.

On your desktop, locate and double-click the Certify shortcut icon.

The Certify Login dialog box appears. 3.

4.

Type in field values as follows: Field

Value

User Name

Password

Click OK.

You are now logged into Certify with your new username and password. Certify is customized to match your individual and group permissions. The more limited a user’s access, the fewer features the user will have available. For more detailed information on creating users, groups, and adding permissions, refer to the Certify Administrator Tutorial. In Certify, click Help  e-Learning  Tutorials  Certify Administrator Tutorial.

20

Certify 8.6.0 Participant Training Guide

Lesson 1: Introduction to Worksoft Certify

Lesson Summary You’ve completed the Introduction to Certify lesson. Key points to remember: 

Business Process Certification is a testing methodology from Worksoft that parallels the software development and deployment cycle but focuses attention on assuring that critical business processes work.



The first time you log into Certify, you must use the username and password provided by Worksoft. Based on the permission you are assigned, you are automatically provided a customized view.



The primary interface of Certify is divided into seven areas: menu bar, toolbar, navigation tree, navigation taskbar, summary pane, detail pane, and status bar.



A user is someone who has access to Certify and can carry out Certify tasks.



Permissions are rights to access different areas or features. Until you add individual permissions to a user’s profile or add to a permissions group, the user cannot log into Certify.



A group is a collection of users that perform similar Certify tasks or need similar access to Certify functions.

1

Certify 8.6.0 Participant Training Guide

21

Lesson 1: Introduction to Worksoft Certify

22

Certify 8.6.0 Participant Training Guide

Lesson 2.1 Defining and Developing Processes

Certify 8.6.0 Participant Training Guide

23

Lesson 2.1: Defining and Developing Processes

Overview In this lesson, you will learn about processes and how to build and execute them. Defining and executing processes is the heart of Certify, and once you’re past this lesson, nearly everything else you learn will link back to them.

Objectives After completing this lesson, you will be able to: 

Explain what processes are and now they are used.



Define processes in Certify and add steps to processes.



Explain LiveTouch and add steps to processes using LiveTouch.



Use the capture process feature.

Contents This lesson contains the following topics and exercises:

Topic

24

See Page

Processes Overview

27

Identifying Processes

29

Naming Processes

30

Defining Processes in Certify

32

Creating Process Folders

34

Exercise 2.1A — Creating a Folder for the SAP Order to Cash Processes

34

Certify LiveTouch Overview

36

Defining Processes for the SAP OTC Transaction

38

EXERCISE 2.1B — Defining the OTC_StandardOrderProcess and VA01_CreateStandardOrder Processes

38

EXERCISE 2.1C — Defining the VA01_CreateStandardOrder_C_Enter Materials Process

49

Executing Processes

57

Viewing & Interpreting Execution Results

57

EXERCISE 2.1D — Executing the OTC_StandardOrderProcess Process

58

Learning Objects while Adding Steps in LiveTouch

61

EXERCISE 2.1E — Learning Objects While Adding Steps with LiveTouch

62

Capture Process Overview

66

Exercise 2.1F — Using Capture Process

67

Certify 8.6.0 Participant Training Guide

Lesson 2.1: Defining and Developing Processes

OPTIONAL EXERCISE — Defining and Developing Processes Tutorial

For the next 20 minutes, you will review the Defining and Developing Processes eLearning tutorial.

This turorial covers: 

Process and Data Editor



LiveTouch Overview



Identifying Processes



Creating Process Folders



Naming Processes



Defining Processes.



Defining Processes in Certify

Use the next page to take notes from this tutorial.

Keep in mind, we do not expect you to memorize everything that you will learn in this tutorial. It is intended to teach you the processes and procedures as an initial learning. When it comes time for you to perform these tasks in Certify and you don’t remember all the steps, you can always go back to the tutorial (or this training guide) for additional practice.

Certify 8.6.0 Participant Training Guide

25

Lesson 2.1: Defining and Developing Processes

NOTES ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________

26

Certify 8.6.0 Participant Training Guide

Lesson 2.1: Defining and Developing Processes

Processes Overview In Certify, processes can be used to document and validate the end-to-end execution of your critical business processes. Processes typically map your existing test cases to the business functions associated with the application under test (AUT). Processes consist of a series of individual steps where a step performs a particular action against an object. Actions can include entering or verifying a field value, pressing keys or buttons, or verifying results like field values, object states, or messages. Each process performs a discrete function, such as adding an order or finding an existing order. When defining processes, you select the objects and actions to show the sequence of how your application operates.

Process and Data Editor Overview Defining and using processes is carried out in the Processes window and Process Editor. Figure 1 shows the Process window with important sections highlighted. The Summary pane of this window shows the list of processes that have been created for the current application. Figure 1 — Process Window Interface with Callouts

Certify 8.6.0 Participant Training Guide

27

Lesson 2.1: Defining and Developing Processes

Selecting New Process from the shortcut menu takes you to the Process Editor, shown in Figure 2, where each individual process is built. Figure 2 — Process Editor Interface with Callouts

The Process Details tab is the default tab. The screen is divided into sections and tabs. The left side of the screen is the Navigation tree. The tree view displays the processes created to verify your business workflows. The middle section of the Process Details tab displays the Process Name field and the Description field. Filling out this information will improve your test documentation. The right side of the screen provides controls for attaching data to your processes with the layout, recordset name, and recordset mode fields. Additional information about the process location and project are provided with the read-only fields. The Execution Flow Rules associated with the processes are displayed in the lower right corner of the screen. You can add and modify the rules. Execution Flow Rules provide you with a way to control the process flow by evaluating conditions during execution. The Steps tab is where you will create the steps that will run when the process is executed. You can view recordsets under the Recordsets tab, as well as attach attributes by clicking the Attributes tab. Once all steps are entered and the process is saved, it appears in the Summary pane (see Figure 1).

28

Certify 8.6.0 Participant Training Guide

Lesson 2.1: Defining and Developing Processes

Identifying Processes The key to successfully certifying your application is to first identify all of the critical business processes. Each of the identified processes has a set of steps that describes how the process should be executed. In many cases, a critical business process could be made up of several smaller processes that focus on functional areas or navigation. As a best practice, you should break-down the critical business processes into supporting processes. For instance, navigation to a window and pressing a button would make up a navigation process that can be reused. This will provide wider coverage and reuse of processes. For example, a CF01_CreateBillingDocument process can be reused, meaning it can be called from one or more other end-to-end process. The actual number of processes you need to create will vary based on the size and complexity of your application. To assist in identifying the processes that you need for your application, try these methods: 

Analyze the requirements to determine how many processes are needed to thoroughly cover each type of feature or function.



Analyze the functional areas of the application to determine if any shared processes would make the processes more efficient.



Verify that each process maps to a requirement that covers a business function or feature.



Organize your identified processes by business function and adopt a naming convention that will ensure your processes are easy to locate. (See “Naming Processes” for naming guidelines.)

Table 1 below shows each of the identified critical business processes that we need to validate in order to satisfy the test requirements for the sample SAP Order to Cash Business Process. Table 1 — Identified Processes for the OTC_StandardOrder Process Process

Critical Business Process

Sub-Processes

Description

OTC_StandardOrder Process

VA01_CreateStandardOrder

Enters initial order information

VA01_CreateStandardOrder_C_EnterMaterials

Enter Material information

VL01N_CreateOutboundDelivery

Create the outbound order

VL02N_PostGoodsIssue

Change the delivery order

VF01_CreateBillingDocument

Create the billing document

Once you have defined all of the processes for your application, you should go back to your list of requirements and create links between the requirements and the defined processes. Once the processes are executed, you can run a Requirement Coverage report to validate whether or not the requirement was met. These tasks are covered in later lessons.

Certify 8.6.0 Participant Training Guide

29

Lesson 2.1: Defining and Developing Processes

Naming Processes When choosing a name for your process, it’s wise to invest the time to develop and follow a process naming convention. As test volumes expand and assets are transferred among users, naming conventions help to promote reuse and reduces confusion. Ideally, names are descriptive enough that their purpose and use is immediately clear and external documentation is not needed. It is important to note that Certify lists are often sorted alphabetically, but can also be searched using filters based on name, description, keyword, and user defined fields. For example, processes called Add Customer and Update Customer would not appear together in an alphabetic sorting, while Customer Add and Customer Update would. On the other hand, the former structure could yield a useful list if a filter were created on the word Customer within the name field. As a recommended best practice, a brief description of what the process does should follow the SAP transaction code. When a section of the screen needs to be learned separately, it is considered to be a Child Process. Child processes should be named using the (SAP Transaction Code)_(Parent Process Name)_C_(Description) format if applicable. For example, SAP Transaction Codes would have the following naming convention: 

VA01_CreateStandardOrder 

VA01_CreateStandardOrder_C_EnterMaterials



VL01N_CreateOutboundDelivery



VL02N_PostGoodsIssue



VF01_CreateBillingDocument

Many transactions contain functionality for various functions, so it’ll be common to see several VA01 or MIG0 processes, for example. Table 1 on page 29 lists the names selected for our purposes. Notice that the names follow the guidelines mentioned above.

Naming Process Folders As another best practice, you should plan on organizing your processes into the following folder structure:

30



Integration Tests — Contains folders for the areas of integration tests for SAP, for example: Order to Cash. These folders would contain the root or parent processes (in our example above that will be OTC_StandardOrderProcess).



Unit Tests — Contains folders or small groups of transactions that makes up pieces from an Integration Test.



Transactional Tests — Contains folders for transactions, named by the first two characters of the transaction (i.e., VA01 folder is titled VA). This structure provides convenience for finding transactional processes that you may need to use or copy.

Certify 8.6.0 Participant Training Guide

Lesson 2.1: Defining and Developing Processes



Utilities — Used in Master Content databases. Includes sub-folders like Date Utilities and General SAP Utilities. Within these folders are the appropriate Utility processes that exist.



Sandbox — Contains folders for each user. The best practice is to use sub-folders for projects. For example, for our processes, the Sandbox folder would like similar to the following: Sandbox folder JSmith (user name) folder OTC_StandardOrderProcess folder VA01_CreateStandardOrder VA01_CreateStandardOrder_C_EnterMaterials OTC)StandardOrderPRocess

Once the processes are reviewed and signed off, they should be moved to their respective location. For example: Integration Tests Order to Cash (OTC) OTC_StandardOrderProcess Unit Tests LE LE_PickPackAndShip Transactional Tests VA VA01_CreateStandardOrder_C_EnterMaterials VA01_CreateStandardOrder Utilities General SAP Utilities Utilties_Auto-AnswerInformationalModals Sandbox JSmith (user) OTC_StandardOrderProcess

Certify 8.6.0 Participant Training Guide

31

Lesson 2.1: Defining and Developing Processes

Defining Processes in Certify Certify processes are contained within a project. Each project will have one or more applications that can be used in a process. The current project’s existing processes can be viewed in the Processes window. Figure 3 — Process Components Step-by-Step Workflow

The process components that describe the step-by-step workflow of a critical business process include the following: 

Application — executable, module, or component of the application under test. The Application Version drop-down contains a list of available application versions that are associated with the open project.



Window — screen, window, or page in the application. The Window drop-down contains a list of learned and system windows available for the selected application version.



Object — field or control to be acted upon. The Object drop-down contains a list of available objects for the selected window.



Action — input, verify, store, etc. The Action drop-down contains a list of valid actions for the selected object.



Parameters — value(s) to modify the selected action.

From the Processes window, you can execute processes, view process details (such as the name, test data being used, and status of the process), test components (steps), and requirements. User defined attributes can also be added to provide even greater detail.

32

Certify 8.6.0 Participant Training Guide

Lesson 2.1: Defining and Developing Processes

Creation and modification of processes is done using Certify’s Process editor. Here, you can define processes, add the steps, and test your processes to verify that they execute as expected. When creating process steps, consider the following guidelines: 

Keep the SAP application and the Certify Process editor open so that you can reference or validate the functionality as you build the steps.



Use System 1.0/System/Execute/Execute Process to call processes when a set of steps is common to many functions. This gives you the option to create one process with these steps, and then call that process as a sub-process.

Certify provides several options for executing processes against your application, including running an unattended process or suite of processes, running processes step-by-step, and running in debug mode. After the execution of processes is complete, a Results Viewer appears with details about executed process steps, including the pass/fail status, the number of passed, failed, aborted, and skipped steps, and any error messages that result from failed steps. (Process execution is discussed in detail in lesson 2.2.)

The Result Viewer dialog box does not appear if Execute Steps (F6) or Execute Steps with Dialog (+F6) are used. User defined attributes can be added to store additional data with the results. This data can be exported for additional analysis or tracking. If you have created links between processes and requirements, Certify provides a Requirement coverage report that allows you to analyze whether the requirements for your application are satisfied.

Certify 8.6.0 Participant Training Guide

33

Lesson 2.1: Defining and Developing Processes

Creating Process Folders In Certify, creating and using folders is a way to organize project components. You can create as many folders and subfolders as necessary to contain the processes for your projects. The folder names you use should be descriptive of the processes contained within them. As a best practice, use a similar naming convention to the one used for naming processes discussed previously. You can create folders by right-clicking the project folder or an existing folder in the Navigation tree and selecting New Folder, or by copying and pasting folders to create new folders. As previously mentioned, folders are divided into the following categories: 

Integration Tests



Transactional Tests



Utilities



Sandbox

Table 1 identifies the critical business processes and then the supporting processes. In the following exercises, you will define and add the steps for all the supporting processes that were identified. However, before you begin defining the processes, you’ll need to create a folder under Sandbox.

EXERCISE 2.1A — Creating a Folder for the SAP Order to Cash Processes In this exercise, you will create a folder to hold the SAP Order to Cash processes. Step

Action

1.

On the Navigation taskbar, click Processes.

2.

In the Navigation tree, click the plus sign next to folder.

3.

Click the plus sign next to the Sandbox folder.

4.

Right-click Sandbox and select New Folder.

The New Folder dialog box appears.

34

Certify 8.6.0 Participant Training Guide

Lesson 2.1: Defining and Developing Processes

5.

In the Name field, type your name.

6.

Click OK.

The folder appears under Sandbox in the Navigation tree. 7.

To create the sub-folder to hold the processes: a. Right-click your name and select New Folder. b. In the Name field, type OTC_StandardOrderProcess. c. Click OK.

The folder appears under your name in the Navigation tree.

Certify 8.6.0 Participant Training Guide

35

Lesson 2.1: Defining and Developing Processes

Certify LiveTouch Overview Certify LiveTouch feature allows you to select multiple objects in the SAP application. You can create steps in a new process or insert steps in existing processes by clicking on one or more object(s) in the SAP application. LiveTouch inserts corresponding process steps for each of the selected objects. LiveTouch also prepopulates the appropriate step parameters with values entered into or produced by the SAP application. As shown in Figure 4, from the Process and Data Editor, you can add steps using LiveTouch by rightclicking a step and selecting Insert Step Below Using LiveTouch. Certify will minimize and the SAP application will appear, along with the Certify LiveTouch dialog box. Figure 4 — Certify LiveTouch

When LiveTouch is opened, any click you make with the mouse is captured. LiveTouch allows you to learn multiple windows in one session. You can assess a window and learn the objects on that window. Next, click the Pause button and then go to another window in your SAP application. Lastly, click the Start button and learn the objects on that window, all in the same session.

36

Certify 8.6.0 Participant Training Guide

Lesson 2.1: Defining and Developing Processes

Certify LiveTouch Menu Options The following table outlines the menu options in Certify LiveTouch. Table 2 — Certify LiveTouch Menu Options

Menu

Option

View

Fields

Description Displays the following options:     

Application Program Transaction Screen Title Class

   

Text Name Physical Location

This selection is continued throughout your session.

Learn

Settings

Fields (Show when hovering mouse)

As you hover over objects in the application, the field information is displayed.

Learn Objects as Needed

Learn new objects while adding steps to your process.

Save Objects to Application Version

Save the newly learned objects to a specific application version.

Target Folders

Select a target folder for the variables. Note: This feature is only available to users who purchased Certify Data.

User Variables for New Steps

Create new variables for the application’s values. Note: This feature is only available to users who purchased Certify Data.

Preparing to Use Certify LiveTouch To take advantage of the LiveTouch feature, you must do the following: 

Create a new process and open an existing process that you wish to modify.



Open the SAP application and navigate to the screen that you will use for your Certify process.

For more information on how to use the LiveTouch feature, refer to the LiveTouch Tutorial. In Certify, click Help  e-Learning  Tutorials  LiveTouch Tutorial.

Certify 8.6.0 Participant Training Guide

37

Lesson 2.1: Defining and Developing Processes

Defining Processes for the SAP OTC Transaction Processes are a collection of steps containing actions to be executed against objects. After completing a step, the next step is executed until the last step has completed. Create a separate process is recommended any time a step sequence is different. For example, creating a new account transaction uses different steps than deleting an account transaction. For the SAP Order to Cash transaction, you will be building the parent process, OTC_StandardOrderProcess used to create a standard sales order and the following child process. Table 2 — OTC_StandardOrderProcess Child Process

Process

Description

VA01_CreateStandardOrder

Executes VA01 transaction and inputs initial sales data

VA01_CreateStandardOrder_C_EnterMaterials

Inputs materials information

EXERCISE 2.1B — Defining the OTC_StandardOrderProcess and VA01_CreateStandardOrder Processes In this exercise, you will define the parent process, OTC_StandardOrderProcess as well as define and add steps for the VA01_CreateStandardOrder sub-process. Step

Action

1.

In the Navigation tree, click the Sandbox folder, and then click your name.

2.

Click the OTC_StandardOrderProcess folder.

3.

Right-click in the Summary pane and select New Process.

The Process Editor appears. This is where you will define your processes and add the steps using the SAP application.

38

Certify 8.6.0 Participant Training Guide

Lesson 2.1: Defining and Developing Processes

4.

Give the process a name and description: a. In the Process section, in the Name field, type OTC_StandardOrderProcess. b. In the Description field, type Process will create a standard sales order. If you need to assign an owner to the process, simply click the Assign Owner button. The Select Process Owner window appears. You can assign a process to a user or a group. The default is User. You can also assign a Team to the process by typing the name of the team in the Team field. If you need to change the process owner, click the Clear Owner button to clear the field. This step is optional.

Now, we will create a process. As explained on page 32, we must select the Application Version, Window, Object, Action, and Parameters. For more information on creating processes, refer to the Process and Data Editor tutorial. You can access the tutorial from Certify by selecting Help  eLearning  Tutorials.

Certify 8.6.0 Participant Training Guide

39

Lesson 2.1: Defining and Developing Processes

5.

Create a sub-process called VA01_CreateStandardOrder. a. Click the Steps tab. b. Right-click in the Steps tab and select New. c. Click the Application Version drop-down arrow and select System 1.0. d. Click the Window drop-down arrow and select System. e. Click the Object drop-down arrow and select Execution. f.

Click the Action drop-down arrow and select Execute Process.

g. At the bottom of the screen, in the Parameters tab, in the Process field, select the New process

icon.

Untitled appears in the field as well as in the tree under OTC_StandardOrderProcess.

h. To rename the process, in the Navigation tree, click Untitled.

Certify dialog box appears asking to save the current process.

40

Certify 8.6.0 Participant Training Guide

Lesson 2.1: Defining and Developing Processes

i.

Click Yes.

j.

Click the Process Details tab.

k. In the Process section, in the Name field, type VA01_CreateStandardOrder. l.

In the Description field, type Executes VA01 transaction and inputs initial sales data.

m. Click the Steps tab.

You are now ready to add steps to the VA01_CreateStandardOrder process. 6.

Use LiveTouch to create a step to input /nVA01 into the Command Input box: a. Verify that SAP is open to the SAP Easy Access window. Remember, to use LiveTouch, you have to open the SAP application and navigate to the screen that you will use. For this example, the SAP Easy Access window. b. In Certify, right-click in the Steps area and select New. c. Click the Application Version drop-down arrow and select Select Using LiveTouch.

Certify minimizes and the SAP window, along with the Certify LiveTouch dialog box appears. Before capturing any fields on the page, wait until LiveTouch loads and “Ready” appears at the bottom of the Certify LiveTouch dialog box.

Certify 8.6.0 Participant Training Guide

41

Lesson 2.1: Defining and Developing Processes

d. On the SAP window, click the Command Input box.

A red highlight appears around the object and the information from the object appears in the Certify LiveTouch dialog box.

42

Certify 8.6.0 Participant Training Guide

Lesson 2.1: Defining and Developing Processes

e. In the Certify LiveTouch dialog box, click Save & Close.

The Certify Process and Data Editor appears. In the Steps area, a step has been inserted for the object and the step is pre-populated with the application version, window, object, and action.

f.

At the bottom of the screen, in the Parameters tab, in the Value field, type \nVA01.

Certify 8.6.0 Participant Training Guide

43

Lesson 2.1: Defining and Developing Processes

Next, we will execute the step so that SAP will be on the VA01 screen for the next series of steps. There are several ways to execute a step. Once you highlight the step, you can: 1) click Action from the menu and select Execute Step, 2) press the F6 function key, or 3) right-click on the step and select Execute Step. 7.

To execute the step: a. In the Steps area, highlight the step. b. Right-click on the step and select Execute Step.

The step executes and SAP displays the Create Standard Order: Initial Screen window. In Certify, notice the status bar. It displays the results of the process. As you can see, the process passed.

8.

Use LiveTouch to create steps for objects on the Create Sales Order: Initial Screen window: a. Verify that SAP is open to the Create Sales Order: Initial Screen window. b. Verify that the fields are pre-populated with data. c. In Certify, in the Steps area, right-click Step #1.

A shortcut menu appears.

44

Certify 8.6.0 Participant Training Guide

Lesson 2.1: Defining and Developing Processes

d. Select Insert Step Below Using LiveTouch.

Certify minimizes and the SAP window, along with the Certify LiveTouch dialog box appears. e. Select the following object fields by clicking in the object fields:

f.

-

Order Type

-

Sales Organization

-

Distribution Channel

-

Division

Select the Enter

button

A red highlight appears around the objects and the information from the last object selected (Enter button) appears in the Certify LiveTouch dialog box.

9.

Using the Pause feature, use LiveTouch to create steps for objects on the Create ERP Standard Order: Overview window. a. In the Certify LiveTouch dialog box, click Pause. b. On the Create Sales Order: Initial Screen window, click the Enter

button.

The Create ERP Standard Order: Overview window appears. Notice that the LiveTouch window is still available.

Certify 8.6.0 Participant Training Guide

45

Lesson 2.1: Defining and Developing Processes

c. In the Certify LiveTouch dialog box, click Start. d. Select the following objects fields by clicking in the object fields: -

Sold-to-party

-

Ship-to-party

-

PO Number

-

PO Date

-

Material Table When you LiveTouch a table or a grid, be sure the red border surrounds the entire table or grid as shown in the screenshot below.

A red highlight appears around the objects and the information from the last object selected appears in the Certify LiveTouch dialog box. Notice the status bar shows 10 objects selected. That is the total from both windows.

46

Certify 8.6.0 Participant Training Guide

Lesson 2.1: Defining and Developing Processes

e. In the Certify LiveTouch dialog box, click Save & Close.

The Certify Process and Data Editor appears. In the Steps area, a step has been inserted for each selected object and the steps are pre-populated with the application version, window object, and action.

Now, we will add system variables to steps. A variable is a symbol or name that represents a value. Variables contain a specific type of value that can be inserted into a field, acted on, or stored for future comparison against another value.

Certify 8.6.0 Participant Training Guide

47

Lesson 2.1: Defining and Developing Processes

For more information on variables, see Lesson 3.1 and review the Creating Variables, Layouts, and Recordsets Tutorial. 10.

To select a variable for the PO Number field: a. In the Steps area, click on Step #9 (PO Number). b. In the Parameters tab, in the Value to Input field, click the Select Variable button.

The Select Variable window appears. c. In the tree, click the System Variables folder. d. In the Variables pane, select Date. e. Click OK.

The variable name appears in the Value to Input field with (v) preceding the name, indicating it is a variable. f.

Click the drop-down arrow in the Format field and select Timestamp. PO numbers normally have to be unique. The Date variable, along with the timestamp format allows for an original PO number.

11.

To select a variable for the PO Date field: a. In the Steps area, click on Step #10 (PO Date). b. In the Parameters tab, in the Value to Input field, click the Select Variable button.

The Select Variable window appears. c. In the tree, click the System Variables folder. d. In the Variables pane, select Date. e. Click OK.

The variable name appears in the Value to Input field with (v) preceding the name, indicating it is a variable. 12.

48

Click the Save

button.

Certify 8.6.0 Participant Training Guide

Lesson 2.1: Defining and Developing Processes

It is important to save while creating the process. You can save by: 1) clicking the Save icon, 2) Selecting Save from the File menu, or 3) Pressing Ctrl+S. 13.

Do not close this process. Continue to Exercise 2.1C.

EXERCISE 2.1C — Defining the VA01_CreateStandardOrder_C_Enter Materials Process In this exercise, you will define and add steps for the child process, VA01_CreateStandardOrder_C_ EnterMaterials sub-process. This process is part of the VA01_CreateStandardOrder parent process. Step 1.

Action In the VA01_CreateStandardOrder process, right-click the last step (Step #11) and select Insert Step Below. Another way to insert a step in the Steps area is to place your cursor in the Steps area and press Insert on your keyboard. a. Click the Application Version drop-down arrow and select System 1.0. b. Click the Window drop-down arrow and select System. c.

Click the Object drop-down arrow and select Execute.

d. Click the Action drop-down arrow and select Execute Process. e. At the bottom of the screen, in the Parameters tab, in the Process field, select the New process

icon.

Untitled appears in the field as well as in the tree under VA01_CreateStandardOrder.

Certify 8.6.0 Participant Training Guide

49

Lesson 2.1: Defining and Developing Processes

f.

To rename the process, in the Navigation tree, click Untitled.

Certify dialog box appears asking to save the current process.

g. Click Yes. h. Click the Process Details tab. i.

In the Process section, in the Name field, type VA01_CreateStandardOrder_C_EnterMaterials. The naming best practice for child processes is to start with transaction code_parent process name_C_description of child process. (i.e., VA01_CreateStandardOrder_C_EnterMaterials.)

50

j.

In the Description field, type Executes Process to enter materials information.

k.

Click the Steps tab.

Certify 8.6.0 Participant Training Guide

Lesson 2.1: Defining and Developing Processes

You are now ready to add steps to the VA01_CreateStandardOrder_C_EnterMaterials process. Certify allows you to cut or copy steps from one process and paste into another process. For the VA01_CreeateStandardOrder_C_EnterMaterial process, we want to cut the Materials table from the VA01_CreateStandardOrder process. We often want to isolate steps to populate a table or grid into a child process so that these steps can be fed data from a recordset and the process can be used to input one or more row of data. 2.

To cut the Materials table: a. In the Navigation tree, click the VA01_CreateStandardOrder process.

A dialog box appears asking to save the current process. b. Click Yes. c.

Right-click Step #11 (Materials table).

d. Select Cut. e. In the Navigation tree, click the VA01_CreateStandardOrder_C_EnterMaterials process. f.

Right-click in the Steps area and select Paste.

The step appears in the Steps area.

g. Click the Action drop-down arrow and select Search Empty Row.

Certify 8.6.0 Participant Training Guide

51

Lesson 2.1: Defining and Developing Processes

h. At the bottom of the screen, in the Parameters tab, in the Row Number field, click the Select Variable

button.

The Select Variable window appears. i.

In the Variables pane, scroll down the list and select the Row variable. Note: Row will be populated with the row number in the table that the action finds. Instead of scrolling through the list, you can use the Filter field by simply clicking in the field and typing the desired variable name. The Variables pane will automatically scroll to that variable. You can then select the variable from the list.

j.

Click OK.

The variable name appears in the field. k.

In the Column 1 (Name or Number) field, type Material. For this example, we want to capture the caption of the field because, with tables and grids, columns can get moved around and tables can be customized by the user. By using the name of the column instead of the location number, that will guarantee that we will always have the correct column. Also, if the entire name of the column isn’t displayed, be sure to stretch the column out so you can see the entire name to document accurately.

3.

Add Step 2 to the process: a. Right-click Step #1 and select Insert Step Below.

A new step is created in the Steps area. The new step contains the values of the previously created step. This saves time when creating steps for the same window or object. b. Click the Action drop-down arrow and select [Input Cell]. c.

At the bottom of the screen, in the Parameters tab, in the Value field, click the Select Variable

button.

The Select Variable window appears. d. In the Variables pane, scroll down the list and select the Material variable. e. Click OK.

The variable name appears in the field.

52

Certify 8.6.0 Participant Training Guide

Lesson 2.1: Defining and Developing Processes

f.

In the Row Number field, click the Select Variable

button.

The Select Variable window appears. g. In the Variables pane, scroll down the list and select the Row variable. h. Click OK.

The variable name appears in the field. i. 4.

In the Column (number or caption) field, type Material.

Add Step 3 to the process: a. Right-click Step #2 and select Insert Step Below.

A new step is created in the Steps area. The new step contains the values of the previously created step. b. At the bottom of the screen, in the Parameters tab, in the Value field, click the Select Variable

button

The Select Variable window appears. c.

In the Variables pane, scroll down the list and select the Order Quantity variable.

d. Click OK. e. The variable name appears in the field. f.

In the Row Number field, click the Select Variable

button.

The Select Variable window appears. g. In the Variables pane, scroll down the list and select the Row variable. h. Click OK.

The variable name appears in the field. i. 5.

In the Column (number or caption) field, type Order Quantity.

Add Step 4 to the process. Use LiveTouch to create steps to press the Enter button. a. Verify that SAP is opened to the Create ERP Standard Order: Overview window. b. Verify that the fields are pre-populated.

Certify 8.6.0 Participant Training Guide

53

Lesson 2.1: Defining and Developing Processes

c.

In Certify, in the Steps area, right-click the last step (Step #3).

A shortcut menu appears. d. Select Insert Step Below Using LiveTouch.

Certify minimizes and the SAP window, along with the Certify LiveTouch dialog box appears. e. Select the Enter

button.

A red highlight appears around the button and the information from the object selected appears in the Certify LiveTouch dialog box. f.

In the Certify LiveTouch dialog box, click Save & Close.

The Certify Process and Data Editor appears. In the Steps area, a step has been inserted for the object and the step is pre-populated with the application version, window, object, and action.

The next step is to go back to the VA01_CreateStandardOrder process and use LiveTouch to create a step to Save. 6.

To go back to the VA01_CreateStandardOrder process: a. In the Navigation tree, click the VA01_CreateStandardOrder process.

A dialog box appears asking to save the current process. b. Click Yes.

54

Certify 8.6.0 Participant Training Guide

Lesson 2.1: Defining and Developing Processes

7.

Use LiveTouch to create a step for the Save button and the Status Bar: a. Verify that SAP is opened to the Create ERP Standard Order: Overview window. b. In Certify, in the Steps area, right-click the last step (Step #11).

A shortcut menu appears. c.

Select Insert Step Below Using LiveTouch.

Certify minimizes and the SAP window, along with the Certify LiveTouch dialog box appears. d. Select the Save

button.

e. Select the Status bar at the bottom of the window.

A red highlight appears around the button and the information from the object selected appears in the Certify LiveTouch dialog box. f.

In the Certify LiveTouch dialog box, click Save & Close.

The Certify Process and Data Editor appears. In the Steps area, the two steps are inserted. 8.

Add parameters to Step #13: a. Click Step #13. b. Click the Action drop-down arrow and select Verify Property. c.

At the bottom of the screen, in the Parameters tab, in the Property field, click the drop down arrow and select Text.

d. In the Criteria field, click the drop-down arrow and select Contains. e. In the Value field, type has been saved. Next, we’ll copy this step and change the parameters. 9.

Add Step #14 to the process: a. Right-click Step #13 and select Copy. b. Right-click in the Steps area and select Paste.

The step appears in the Steps area. c.

Click the Action drop-down arrow and select [Store Parameter].

Certify 8.6.0 Participant Training Guide

55

Lesson 2.1: Defining and Developing Processes

d. At the bottom of the screen, in the Parameters tab, in the Index (1 to 8) field, type 2. The status bar object contains eight index parameters where the SAP developer can store information in those parameters. When you get a message in the status bar field, the developer takes the key values from the message and places them into an index parameter, but there may be an occasion when you’re not sure which parameter to use. Typically, we find the key value will usually be found in Index 2, but if it is not there, we oftentimes find it in Index 1.

e. In the Variable field, click the Select Variable

button.

The Select Variable window appears. f.

In the Variables pane, scroll down the list and select the Order Number variable.

g. Click OK. Lastly, we will add a screen caption image. This is used to see the results of the steps. 10.

Add Step #15 (screen caption image) to the process: a. Right-click Step #14 and select Insert Step Below. b. Click the Application Version drop-down arrow and select System 1.0. c.

Click the Window drop-down arrow and select System.

d. Click the Object drop-down arrow and select Operating System. e. Click the Action drop-down arrow and select Capture Screen Image. 11.

Click the Save

12.

From the File menu, select Close to exit the Process Editor.

button.

You have completed the steps defining a process in Certify. You used Certify LiveTouch to select objects in the SAP application. You even added variables to a few of the steps. Now, let’s execute the process.

56

Certify 8.6.0 Participant Training Guide

Lesson 2.1: Defining and Developing Processes

Executing Processes Once processes are built, the next step in the business process certification is to validate those processes through execution against your application. The Configuration dialog box is the starting point for the certification process. It provides options for choosing the type of execution, how and when execution is performed, and how the results are handled. Configuration consists of setting the run and log settings and providing where to find input data and startup data. Certify allows you to execute the entire process with or without interruptions (click Run in the Execution dialog box) or you can execute the process step-by-step (click Step in the Execution dialog box). Use the following guidelines to determine the best way to execute processes: 

If this is your first time you are executing your process, run the process without intervening. This allows you to see if your process steps are correctly defined and in the correct order for your application.



If you are debugging execution of a process, run the process step-by-step. With Certify’s debugging capability, you can follow the execution and determine where and why failures have occurred.

Once you start execution if you are stepping through your process, you can see the log as it progresses through execution, view the stack, review the steps in the process, view variable values during execution, and view recordsets values during execution. As each process is executed, results are logged and stored in the user-specified folder. (The default folder is the top folder.)

Viewing and Interpreting Execution Results When execution is complete, the Certify Result Viewer opens where you can then review the results of the execution run. Summary results for the processes are provided in the initial view. You can drill down into the processes and view the step level details. When you select a single step you can view details about the step including the result, object and action name, step narrative, start/end time, elapsed time, and status information. Additional data such as the expected and actual values, recordset data, and test step images may also be reviewed by selecting the corresponding tab. In the Results Viewer, you can view the results of executions, export the results to an .xml file, print the results in summary and detail format, and compress the results of executions. When reviewing and debugging your processes, for any failed step, review all the circumstances to discover any possible causes, such as improper setup or starting state, an incorrect database state, application context issue, an error in the test itself, or another type of error that might explain the failure. Only when you have ruled out other causes for the error should you conclude that it is a potential defect in the application under test. Execution and Execution Results are covered in depth in Lesson 2.2.

Certify 8.6.0 Participant Training Guide

57

Lesson 2.1: Defining and Developing Processes

EXERCISE 2.1D — Executing the OTC_StandardOrderProcess Process

In this exercise, you will execute the OTC_StandardOrderProcess process. Step 1.

Action In the Summary pane, right-click the OTC_StandardOrderProcess process.

A short-cut menu appears.

2.

Click Run.

The Configuration dialog box appears.

58

Certify 8.6.0 Participant Training Guide

Lesson 2.1: Defining and Developing Processes

3.

Click Start.

The Execution dialog box appears.

4.

Click Run.

The process executes and upon completion, the Result Viewer appears.

Certify 8.6.0 Participant Training Guide

59

Lesson 2.1: Defining and Developing Processes

Check the status in the Result Viewer to see if the process passed or failed. If it failed, expand the Result Viewer tree to determine in which subprocess(es) the failure occurred. Drill down until you see the failed step information in the Summary pane. Notice that the Detail pane provides additional information about the failure.

60

5.

When finished reviewing the results, click the red the Result Viewer.

in the top right corner to close

6.

Open the Process Editor and make any needed corrections to the failed steps.

Certify 8.6.0 Participant Training Guide

Lesson 2.1: Defining and Developing Processes

Learning Objects while Adding Steps with LiveTouch In the past, after map files were imported from Live Learn and you ran into SAP GUI objects that were not discovered by Live Learn, LiveTouch would simply say that the object does not exist in the database. At this point, you’d need to stop creating steps for your process and use SAP Learn to learn the screen, save the map file, and then return to creating the steps for your process. Figure 4 — Certify LiveTouch

With Certify LiveTouch, you now have the ability to learn objects while adding steps to your process and saving the object to a specific application version. From the Certify LiveTouch dialog box Learn menu, select Save Objects to Application Version (as shown in Figure 4) and select a version from the dropdown list. LiveTouch will automatically add the object to your selected application version. You can keep adding steps to your process using LiveTouch without going through the trouble of using SAP Learn to learn the screen. Exercise 2E is an example of how to use this feature.

Certify 8.6.0 Participant Training Guide

61

Lesson 2.1: Defining and Developing Processes

EXERCISE 2.1E — Learning Objects While Adding Steps with LiveTouch This exercise will show how to learn objects while adding process steps with Certify LiveTouch. Certify LiveTouch may cause an error if more than one person learns the same object at the same time. Therefore, your instructor will demonstrate this feature or assign one participant to demonstrate. Do not enable the feature unless instructed.

Step

Action

7.

Verify that SAP is opened to the desire window. In this example, we use the Create Sales Order: Initial Screen window.

8.

In Certify, in the Navigation pane, click Processes.

9.

In the Summary pane, right-click the desired process and select Edit.

10.

Click the Steps tab.

The Steps tab appears. In this example, a step has already been created that will input the value VA01 into the OK Code field.

62

Certify 8.6.0 Participant Training Guide

Lesson 2.1: Defining and Developing Processes

11.

Right-click Step #1 and select Insert Step Below Using LiveTouch.

Certify minimizes and the SAOP window, along with the Certify LiveTouch dialog box appears.

12.

In the Certify LiveTouch dialog box, click Pause so that you are able to select options from the Learn menu.

13.

Click Learn.

A drop-down menu appears.

Certify 8.6.0 Participant Training Guide

63

Lesson 2.1: Defining and Developing Processes

14.

Check the Learn Objects if Needed option.

15.

Click the Save Objects to Application Version arrow.

A drop-down menu appears.

16.

Select the desired version from the list. If a version is not specified, you will be prompted after your object selections to specify a version.

64

Certify 8.6.0 Participant Training Guide

Lesson 2.1: Defining and Developing Processes

17.

Click Start to begin creating steps.

18.

Select the objects by clicking in the object fields. For this example, the following objects were selected:

19.

-

Order Type

-

Sales Organization

-

Distribution Channel

-

Division

In the Certify LiveTouch dialog box, click Save & Close.

The Certify Process and Data Editor appears. In the Steps area, a step has been inserted for each selected object and the steps are pre-populated with the application version, window, object, and action. Notice a variable was created for each object.

For more information, see the Learning Objects While Adding Steps with Certify LiveTouch topic in Certify Help

Certify 8.6.0 Participant Training Guide

65

Lesson 2.1: Defining and Developing Processes

Capture Process Overview The Certify Process feature allows you to capture every action you take while working in SAP without having to use Certify LiveTouch or Certify SAP Learn. Capture Process requires a valid SAP user ID and password in order to interact with SAP GUI. It will not work with SAP single sign-on. If you have set up your environment for SAP single sign-on, it is recommended that you add a service user to SAP in order to allow for Capture Process to function. Figure 5 — Capture Process

Once Capture Process is set up (see the section titled Setting Up Capture Process) you access the figure by right-clicking in the Processes pane and selecting Capture Process. As shown in Figure 5, you must have a SAP session open for the feature to work. The Capture Process dialog box appears where you give the process a name and type your SAP password. You then navigate through the SAP application, capturing your objects to create your process. When complete, you simply log off SAP. The Import Completed Successfully dialog box appears. Click OK and open the process in Certify to review or edit the steps. You can then run the process to verify the steps work properly.

Setting Up Capture Process In order to install Capture Process, the SAP Basis administrator must install one of the following transports with the SAP transport system: 

CertifyCapture-Version8.x.x-Unicode-xxx.zip



CertifyCapture-Version8.x.x-Non-Unicode-xxx.zip

You will also need to update the Certify configuration file by doing the following:

66



Open Worksoft\Certify\Client\Worksoft.Certify.exe.config



Add the following line to the section of the configuration file:

Certify 8.6.0 Participant Training Guide

Lesson 2.1: Defining and Developing Processes

EXERCISE 2.1F — Using Capture Process

This exercise will show how to use the capture process feature to capture actions in your SAP application.

In order to use Capture Process, at least one SAP session must be opened.

Step

Action

1.

Verify that you have a SAP session open.

2.

In Certify, in the Navigation pane, click Processes.

3.

Right-click in the Summary pane.

A Short-cut menu appears.

4.

Click Capture Process.

The Capture Process tool opens with the SAP session in view.

Certify 8.6.0 Participant Training Guide

67

Lesson 2.1: Defining and Developing Processes

5.

6.

Type in field values or select options as follows: Field

Value/Action

WS Process Name

Test

WS Application Version

Select SAP Core 1.0

SAP User Id

SAP Password

Click OK.

A new SAP session opens and you are now ready to navigate through the SAP session. The message “Please use SAP system to complete recording” appears in the Capture Process dialog box.

68

Certify 8.6.0 Participant Training Guide

Lesson 2.1: Defining and Developing Processes

7.

In the Command Input Box, type /nVA01 and then click the Enter

button.

The Create Sales Order: Initial Screen window appears. 8.

Enter the values in the following fields: -

Order Type

-

Sales Organization

-

Distribution Channel

-

Division

9.

Select the Enter

10.

Click the Exit

button. button twice.

The SAP session closes and the Import completed successfully dialog box appears

Certify 8.6.0 Participant Training Guide

69

Lesson 2.1: Defining and Developing Processes

11.

Click OK.

The new process is added to Certify with all the steps that were performed.

12.

In the Processes pane, double-click the Test process.

The Process Editor window appears. 13.

Click the Steps tab.

The steps you performed in SAP appears. From here you can edit and/or delete any of the steps.

70

Certify 8.6.0 Participant Training Guide

Lesson 2.1: Defining and Developing Processes

Lesson Summary You’ve completed the Defining, Developing, and Executing Processes lesson. Key points to remember: 

Processes can be used to document and validate the end-to-end execution of your critical business processes.



The key to successfully certifying your application is to first identify all of the critical business processes. Each of the identified processes has a set of steps that describes how the process should be executed.



As a best practice, you should break down the critical business processes into supporting processes.



Creating and using folders is a way to organize project components.



When choosing a name for your process, it is worthwhile to invest the time to develop and follow a process naming convention.



Certify LiveTouch allows you to select multiple objects in the SAP application, automatically insert corresponding process steps for each of the selected objects, and pre-populate the appropriate step parameters with values entered into or produced by SAP.



Certify allows you to execute the entire process with or without interruptions (click Run in the Execution dialog box) or you can execute the process step-by-step (click Step in the Execution dialog box).



When reviewing and debugging your processes, for any failed step, review all the circumstances to discover any possible causes, such as improper setup or starting state, an incorrect database state, application context issue, an error in the test itself, or another type of error that might explain the failure.



With Certify LiveTouch, you have the ability to learn objects while adding steps to your process and saving the object to a specific application version.



The Certify Process feature allows you to capture every action you take while working in SAP without having to use Certify LiveTouch or Certify SAP Learn.

Certify 8.6.0 Participant Training Guide

71

Lesson 2.1: Defining and Developing Processes

72

Certify 8.6.0 Participant Training Guide

Lesson 2.2 Executing Processes and Viewing Results

Certify 8.6.0 Participant Training Guide

73

Lesson 2.2: Executing Processes and Viewing Results

Overview Although you have executed processes in previous lessons, this lesson explores the different methods and options you can use to achieve successful testing results.

Objectives After completing this lesson, you will be able to: 

Explain the various methods and options to executing processes.



View execution results in the Results Viewer window.



Generate detail and summary reports of the execution.

Contents This lesson contains the following topics and exercises:

Topic

74

See Page

Configuring Process Execution

75

Managing Execution Results

80

Viewing Execution Results

81

Editing Process Steps from the Result Viewer

84

Generating Execution Reports

85

EXERCISE 2.2A — Generating an Execution Results Report

86

Certify 8.6.0 Participant Training Guide

Lesson 2.2: Executing Processes and Viewing Results

Configuring Process Execution Prior to actual execution of a process, you will need to configure the process execution to meet your requirements. Configuration consists of setting the run and log settings and providing where to find input data and startup data. As shown in Figure 1, the Configuration dialog box provides options for choosing the type of execution, how and when execution is performed, and how the results are handled. Figure 1 — Configuration Dialog Box

Setting Tab Run Setting Area 

Stop On Failure — By default, execution does not stop on failure. If you want your execution to stop when a failure is encountered in your process, select this check box. Failure includes failed and aborted steps.



Run Mode — Select how you want to manage the execution or accept the default of managed run mode. Modes include managed, manual, and unmanaged. Managed mode allows user intervention to step through processes, set breakpoints, and capture screens. Managed mode assists you in debugging your processes.

Certify 8.6.0 Participant Training Guide

75

Lesson 2.2: Executing Processes and Viewing Results

Manual mode requires complete user intervention. Manual mode is required when an application is not being run (or not developed), and you have no automation or the automation is not working. If your mode is Manual, the Execution dialog box will have an additional tab called Manual Execution. Unmanaged mode prevents you from stepping through execution, setting breakpoints, and capturing screens. 

Step Delay — Select the number of seconds you want to delay execution between each step or accept the default of 0 seconds. Step delay helps resolve timing issues when testing your application.

Logging Setting Area 

Log Step Mode — Select how you want the step to be logged or accept the default of LogAllSteps. The modes include LogAllSteps, LogAbortedStepsOnly, LogFailedSteps, LogProcessOnly, LogStatusOnly, and LogDisabled. When you determine your process is complete, you can log aborted or failed steps only.



Capture Screen On — Select if you want to capture screens and when you want to capture the screens during process execution or accept the default of CaptureNone. Modes include CaptureNone, CaptureAbortedSteps, CaptureFailedSteps, or WindowChange. The WindowChange option is helpful when you want to see the window or object that is failing in your application. It is also good for a final result, giving you a screenshot after every window change. All screen captures are in *.jpg format.



Screen Capture Mode — Select how much of the area of the application screen you want to capture or accept the default of CaptureDesktop. Modes include CaptureDeskTop and CaptureActiveWindow.



Output Location — Click the Output Location browse button to change the location of where you want the results stored for this process execution or accept the default displayed. The Select Results Folder dialog box allows you to select any project for which you have permissions. Make your folder selection and click OK in the Select Results Folder dialog box. The default is the current directory that holds all information for the opened project.

Data Area 

Layout (optional) — Click the Layout browse button to browse for a layout. The default is the current layout associated with the process. If blank, no layout is associated with this process. If you choose a layout and do not choose a recordset, the layout is ignored during execution. To delete a selected layout, click the

76

button.

Certify 8.6.0 Participant Training Guide

Lesson 2.2: Executing Processes and Viewing Results



Recordset (optional) — If a layout is associated with this process and a recordset exists for that layout, this field is active. Select the down arrow to choose the recordset you want to use.



Recordset Mode — If a recordset is associated with the layout, this field is active. Select the down arrow to choose the mode for the selected recordset. Options include Read Only, Append, Clear and Append, and Read and Update. Table 1 below explains when and how each mode is executed. Table 1 — Identified Processes for the OTC_StandardOrder Process Process

Mode

When Executed

How Executed

Read Only

Reads recordsets at the beginning of execution.

Loops process once for each row until End of File.

Append

Writes recordsets at the end of execution.

Appends to existing recordset and loops process until Abort or Exit.

Clear and Append

Writes recordsets at the end of execution.

Creates new recordset for each execution session and loops process until Exit.

Read and Update

Reads recordsets at the beginning of execution.

Updates the recordset at the end of the process.

Application Version Startup Data Area 

Application Version Already in Context — In context implies that you have already loaded your application and positioned the application at the start where the selected process begins. Insert checkmarks for any or all of the application versions to be checked for context. By default, there is no checkmark, meaning that the process will run. If the box is checked then the process will not run. Checkboxes will appear under ‘Application Version Already In Context’ for the application versions which are assigned Start process in the current project. The application version will have the name of the State process if one has been created and selected in the project. (See How to Define State Processes in Lesson 4.) If you do not check any application versions and have a defined start process, the start process loads the application, performs log into the system, and navigates tot the main window or starting state before starting execution of the process.

Attributes Tab 

Results Attributes — Shows all attributes created for Web links. Set the fields with values before executing so the values are stored with the results.

Certify 8.6.0 Participant Training Guide

77

Lesson 2.2: Executing Processes and Viewing Results

Configuration Dialog Box Buttons 

Restore Defaults — Resets the fields back to the system defaults.



Export — Displays the Save As dialog box to save the current execution configuration parameters as a program command line in a batch file.



Start — Displays the Execution dialog box so you can run your process.



Cancel — Ignores all information and returns you to the previous screen. No changes are saved.

Execution Once you click Start on the Configuration dialog box, the Execution dialog box appears as shown in Figure 2 below. After execution, the Result Viewer dialog box appears (shown in Figure 3). Once configuration is complete, you can set additional execution functionality in the Execution dialog box, such as skipping process steps, capturing application windows, and setting breakpoints. Figure 2 — Execution Dialog Box

Execution Buttons The following Execution buttons offer you different options when running your processes. 

Run — Executes the process to completion without using intervention.



Steps — Executes the current step of a process. The Step drop-down menu offers three options: 

78

Step — Executes each step of the process. If the step is an Execute Process step, then the execution moves to the first step of the called process.

Certify 8.6.0 Participant Training Guide

Lesson 2.2: Executing Processes and Viewing Results





Step Over — Executes the current step. If the current step is an Execute Process step or is a result of True/False logic, then all sub-processes are executed, and the execution moves to the next step of the current process.



Step Out — Executes to the end of the current process and stops at the next step of the parent process or the first breakpoint set in the current process.

Skip — Skips a step during execution of the process. The Skip drop-down menu offers two options: 

Skip — Allows you to skip the selected step and continue execution at the next step. If the current step is an Execute Process, then the process will not be executed.



Skip Out — Ignores the remaining steps of the current process and execution starts again at the next step of the parent process or the first breakpoint set in the current process.



Stops — Stops the execution at the next step, and the Results Viewer appears. Text will be marked aborted by the user.



Capture — Adds a step to capture a screen image of the active window or desktop during execution. This option is helpful when you want to see the window or object that is failing in y our application. The Capture drop-down menu offers two options: 

Capture Active Window — Captures the application screen.



Capture Desktop — Captures the entire desktop.

Execution Dialog Box Tabs The following Execution tabs offer you different views when debugging your process execution. 

Steps — Displays the steps of the current process to be executed. You can expand the Step view by clicking the Expand/Collapse button on the right of the dialog box. The Expand view allows you to view the steps while using the other tabs.



Variables — Displays the current values of the variables in the current process (Process tab), in the current step (in Step tab), or added variables (Watch tab). Watched variables are persistent throughout execution. The Process tab shows local variables.



Recordset — Displays the recordset data that is used in the execution of the current process.



Breakpoint — Allows you to view, set, remove, or clear all breakpoints in any called process during execution.



Stack — Displays the stack of the current process execution. Nested calls are indented.



Log — Displays a summary of the processes that have executed and the current executing processes. Processes are shown in the order they have been executed.

Certify 8.6.0 Participant Training Guide

79

Lesson 2.2: Executing Processes and Viewing Results

Managing Execution Results After process execution, the Result Viewer shows a log of the execution results. By now you have seen the Result Viewer many times. Once you close the Result Viewer it is stored and managed in the Results window, which is accessible from the Certify Navigation taskbar. Figure 3 — Result Window

By right-clicking a result in the Summary pane, you can perform tasks such as:

80



View execution results — All of your execution results that you saved are stored in the Results window so that you can open them in the Result Viewer or perform routine maintenance.



Generate a results report — A report for a selected execution result can be generated showing either a summary of the result or all the result details. The Report Viewer allows you to navigate the report, as well as print and/or export the report.



Compress the results — Helps reduce the size of your database and increase performance by removing all process step execution results. You can keep only process summary information or both process summary and failed step information.



Promote to a Result of Record — You can identify a specific execution result as a Result of Record, which means that result is the official execution result that is used to determine

Certify 8.6.0 Participant Training Guide

Lesson 2.2: Executing Processes and Viewing Results

the status of processes linked to test requirements, and therefore, the overall satisfaction of the requirement. 

Export Result Summary — The summary of a selected result can be saved to an .xml file for external use.

In the Details pane, you can view the details for a selected result and view the values any user-defined attributes associated with the results.

Viewing Execution Results The Result Viewer allows you to expand the execution results to show each process and step executed. The Navigation tree displays a log header with details about the process you executed. Under the log header is a hierarchy of processes executed. You can expand each level of the hierarchy and view information about the executed processes and steps in the Summary pane. Processes in the Summary pane display information about test status, elapsed time, start time, end time, and who created and modified the process. The Detail pane displays additional information about the process and any associated recordset values that were used by the process. Figure 4 — Result Viewer

Steps in the Summary pane display information about test status, elapsed time, start time, end time, as well as the components of the step. The Detail pane provides additional information about the executed

Certify 8.6.0 Participant Training Guide

81

Lesson 2.2: Executing Processes and Viewing Results

step, including step execution details, parameters used in the step, recordset variable data used by the step, and any captured images. Table 2 lists the statuses shown for the executed processes. Table 2 — Executed Process Status

Status

Description Passed step or process

Skipped step or process

Failed step or process

Aborted step or process

Table 3 lists the statuses shown for the executed processes. Table 3 — Executed Step Status

Status

Description Passed Step

Skipped step

Failed step

Aborted step

82

Certify 8.6.0 Participant Training Guide

Lesson 2.2: Executing Processes and Viewing Results

Each executed process or step is given one of these statuses. In some cases, a process inherits a status based on the status of another process or step. For example: 

If a process passes, then all the steps in the process passed.



If a process fails, then at least one step in the process failed.



If a process is skipped, then all steps in the process are skipped.



If a step or process is aborted, then the execution is stopped.



If a step failed execution in a process, the process also fails unless the process was aborted.



If a step is aborted, the process shows aborted even though some steps may have passed, skipped, or failed execution.



If a process has more than one sub-process and the sub-process fails execution, the parent process is shown as a failed process.



If a process has more than one sub-process and the sub-process is aborted, the parent process is shown as an aborted process even though some sub-processes may have passed, skipped, or failed.

Certify 8.6.0 Participant Training Guide

83

Lesson 2.2: Executing Processes and Viewing Results

Editing Process Steps from the Result Viewer In an effort to quickly edit steps, you can navigate from a step in the Result Viewer to the corresponding step in the Process and Data Editor. As shown in Figure 4, once you select and right-click the step you wish to review and/or edit in the Result Viewer Summary pane, you can select Edit Step from the list. The Process and Data Editor window opens to the step you selected. From here, you can modify the step and run the test process again. Figure 4 — Editing Process Steps from the Result Viewer

84

Certify 8.6.0 Participant Training Guide

Lesson 2.2: Executing Processes and Viewing Results

Generating Execution Reports Generating reports on execution results is performed from the Summary pane of the Results window. From here you can run a report that shows a summary of the selected results from the process level or details of the results including step components, as well as a recordsets report that displays only steps with values of the selected results. The execution reports are displayed in .pdf format. As shown in Figure 5, the report shows the results in the same order they are displayed in the Results Viewer (order of execution. Figure 5 — Sample Execution Report

Certify 8.6.0 Participant Training Guide

85

Lesson 2.2: Executing Processes and Viewing Results

EXERCISE 2.2A — Generating an Execution Results Report

In this exercise, you will run a summary and detail report of the execution results for reviewing or reporting needs. Step

Action

1.

On the Navigation taskbar, click Results.

2.

In the Summary pane, right-click the desired process and select Reports.

3.

Select Results (Summary).

The Choose a location… window appears. 4.

Choose a location to save the report.

5.

In the File Name field, type the desired name for the report.

6.

Click Save.

The report opens in .pdf format.

86

Certify 8.6.0 Participant Training Guide

Lesson 2.2: Executing Processes and Viewing Results

Lesson Summary You’ve completed the Executing Processes and Viewing Results lesson. Key points to remember: 

The Configuration dialog box provides options for choosing the type of execution, how and when execution is performed, and how the results are handled.



Once configuration is complete, you can set additional execution functionality in the Execution dialog box, such as skipping process steps, capturing application windows, and setting breakpoints.



After process execution, the Result Viewer shows a log of the execution results.



The Result Viewer allows you to expand the execution results to show each process and step executed. You can expand each level of the hierarchy and view information about the executed processes and steps in the Summary pane.



Generating reports on execution results is performed from the Summary pane of the Results window. From here you can run a report that shows a summary of the selected results from the process level or details of the results including step components, as well as a recordsets report that displays only steps with values of the selected results.

Certify 8.6.0 Participant Training Guide

87

Lesson 2.2: Executing Processes and Viewing Results

88

Certify 8.6.0 Participant Training Guide

Lesson 3.1 Creating and Using Variables

Certify 8.6.0 Participant Training Guide

89

Lesson 3.1: Creating and Using Variables

Overview In this lesson, you will learn about variables and how they are used. Mastering this concept is the first step in understanding data-driven testing.

Objectives After completing this lesson, you will be able to: 

Explain how variables work and how they are used.



Add variables to existing process steps.

Contents This lesson contains the following topics and exercises:

Topic

90

See Page

Variables Overview

93

Preparing to use Variables

93

Defining Variables in Certify

94

Using Variables in Certify

95

Adding Variables to Existing Process Steps

96

Exercise 3.1A — Adding Variables to Process Steps

96

Certify 8.6.0 Participant Training Guide

Lesson 3.1: Creating and Using Variables

OPTIONAL EXERCISE — Creating Variables, Layouts, and Recordsets Tutorial For the next 45 minutes, you will review the Defining and Developing Processes eLearning tutorial.

This turorial covers: 

Types of variables



Creating Layouts



Creating variables



Working with Recordsets in Certify



Applying Variables to Process Steps



Creating and Managing Recordsets



Defining Layouts in Certify

Use the next page to take notes from this tutorial. Keep in mind, we do not expect you to memorize everything that you will learn in this tutorial. It is intended to teach you the processes and procedures as an initial learning. When it comes time for you to perform these tasks in Certify and you don’t remember all the steps, you can always go back to the tutorial (or this training guide) for additional practice.

Certify 8.6.0 Participant Training Guide

91

Lesson 3.1: Creating and Using Variables

NOTES ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________ ____________________________________________________________________________

92

Certify 8.6.0 Participant Training Guide

Lesson 3.1: Creating and Using Variables

Variables Overview A variable is a symbol or name that represents a value. In Certify, variables are an important component of the Business Process Certification because they provide a means of representing the data that you want to use in your processes. Variables contain a specific type of value that can be inserted into a field, acted on, or stored for future comparison against another value. The most common use of variables is for data-driven testing, where process execution loops through a series of data values. For example, if the steps for your VA01_CreateStandardOrder process are the same but the data is expected to vary from one transaction to another, then the process needs to be defined only once using variables in place of static values. Moreover, by using variables, a recordset, and the VA01_CreateStandardOrder process, you can create several sales orders in one single test. Variables can also be used when you need to store or verify system data, such as the System Date or Machine Name, or when specific data for a user is required, such as a user ID or password to log into an external system or application.

Preparing to use Variables When preparing to use variables, the first thing you should do is go through your existing processes and identify all the places where variables can be used in place of static data. As a best practice, create a table or spreadsheet showing the processes and all of the variables that you will use for each process. This method will help you later when you create the recordsets to be used with your processes. For example, Table 1 below shows the VA01_CreateStandardOrder process and all of the variables required for that process. Table 1 — Variables Needed for the VA01_CreateStandardOrder Process

Process

Variables Needed

Variable Type

Data Type

VA01_CreateStandardOrder

Sold-to-party

Project

Text

Ship-to-party

Project

Text

PO Number

Project

Number

PO Date

Project

Date

Once you have all the variables for the process identified, you then need to determine the type of variables you are using (e.g., System, Project, Process, or User), and the type of data the variable will contain. The VA01_CreateStandardOrder process, shown in Table 1, uses only Project variables because these variables will be used in recordsets and each variable will contain either text or number values.

Certify 8.6.0 Participant Training Guide

93

Lesson 3.1: Creating and Using Variables

Defining Variables in Certify In Certify, there are four types of variables that you can use: 

Project Variables — variables that are specific to the project you are working with and are commonly used in data-driven testing. Project variables can be created and managed in the Variables window or while creating processes in the Process Editor. You can use Project variables on both the Data window to define the layouts of your recordset and on the Process Editor to hold the values of objects within your process steps.



Process Variables — also known as local variables, process variables are created and used only by a single process. Since Process variables are only available to s specific process, the variable names only have to be unique to that process.



System Variables — pre-defined and used as read-only variables for data values during test execution. System variables contain system values that can be added to process steps but cannot be a part of a recordset because you can write to variables in a recordset. The system variables that you can use in your process steps are:





Date



Last Step Status



Process Name



User Name



Recordset Name



Layout Name



Recordset Row Number



Machine Name

User Variables — user-defined variables that can be used during process execution, such as other system user IDS and passwords, test dates, test numbers, tester ID number, etc. User variables are created and managed from the Extensions window by a Certify Administrator or manager, and they are shared across all projects. The values for user variables are specified by each user by selecting Set User Variables from the Tools menu.

Each type of variable contains text, number, or date values. 

Text — consists of alphanumeric and special characters. Text variables have a system maximum length of 65,535 characters (64K).



Number — consists of integers, floating point values, and exponential notations.



Date — consists of any combination of month, day, and year in any Certify-supported format. Date variables default to today’s date. You can also apply a specific data mask to a date variable to display the date in a certain format (i.e., MM/DD/YYYY). If no mask is chosen, the default system date format is used.

For each variable you create, you should type a unique name and description of what the variable is used for and select the type of data that the variable will hold (such as text, number, or date). As a best practice, you should use variable names that describe what type of data the variable contains and how you will use the variable. For example, Order Type field on the SAP Create Sales Order: Initial Scree could have a variable called Order Type Text. The name tells us that the variable is for a text field called Order Type.

94

Certify 8.6.0 Participant Training Guide

Lesson 3.1: Creating and Using Variables

You can also input an initial value for the variable and/or select to mask the value of the variable. If an execution step contains a variable with an initial value, the object associated with the step is populated with the initial value. When the Mask checkbox is selected, the value is replaced with asterisks (e.g., ****) to hide the real value from view in the Certify Result Viewer. This feature is useful when your variable values is a user ID or password.

Using Variables in Certify Listed below are some additional scenarios when you might want to use variables in your processes: 

Field value is unknown before execution. The value of a variable is changed when an application returns a value that is randomly generated or generated on the fly. For example, creating an order generates an order number. The order number can be stored in a variable for verification or other uses.



A value must be derived from a combination of other variable values and/or static values. The variable value is based on calculations or concatenations of other variables or static values. These operations are performed by process steps and the resulting value is stored in a variable. For example, an application requires the month and year to be added to a filename in order to locate the file within a list. The month and year can be concatenated from two variables and added to another variable containing the file name. The variable can then be used to locate a file within the list.



Process execution order varies. The names of processes can be named by a variable so that each iteration through the recordset calls a different process. For example, you may have a set of processes for your application to add an account, add a transaction, and verify a portfolio. Instead of creating three separate Execute Process steps, you can associate a recordset with your master process and have one Execute Process step that calls an Account process variable. Since the variable is associated with a recordset containing the names of all the processes you want to execute, each of the processes are executed in the order they appear in the recordset.



You need to work with system information. Pre-defined system variables can be used in your process steps to capture information such as the computer name, user name, and process name. For example, you may want to capture the system date for comparison against another date variable, or get the status of the last step executed to verify the step passed.



You need to log into other systems or applications during execution. User-defined variables can be used in your process steps to log into other systems or applications referenced in your process execution. For example, you may have a legacy system containing data that you need to compare with data from the application you are testing. You can add a user variable in your process to input the user ID and password for the legacy system or application. You can also set a process (local) or project variable to the value contained in a system variable.

Certify 8.6.0 Participant Training Guide

95

Lesson 3.1: Creating and Using Variables

Adding Variables to Existing Process Steps Variables are applied to process steps in the Process Editor. When you create a new step or select an existing step, you use the Parameters option for the selected step to select the variable that you want to use. If you are using static data, you will replace the static data with the variable you have created. As you recall in Lesson 2, you created various processes that included static data. For example, in the VA01_CreateStandardOrder process, you entered a value for the Sold-to-party field. You did this primarily to learn how to define processes without the added complication of including variable data. However, in order to automate your testing, you will want to use variables within your processes so that you can perform data-driven testing.

EXERCISE 3.1A — Adding Variables to Process Steps

In this exercise, you will add variables to steps in the VA01_CreateStandardOrder process. Step

Action

1.

On the Navigation taskbar, click Processes.

2.

In the Navigation tree, click the plus sign next to folder.

3.

Click the plus sign next to the Sandbox folder.

4.

In the Sandbox folder, click your name, and then click OTC_StandardOrderPRocess.

5.

In the Summary pane, locate and right-click the VA01_CreateStandardOrder process and select Edit.

The Edit Process dialog box appears. 6.

Click the Steps tab.

7.

To add a variable to Sold-to-party: a. Locate and select the Sold-to-party/Input step (step #7). b. In the Parameters tab, in the Value to input field, click the Select Variable icon.

The Select Variable dialog box appears. c. In the Variables pane, scroll through the list and select Sold-to-party.

96

Certify 8.6.0 Participant Training Guide

Lesson 3.1: Creating and Using Variables

Instead of scrolling through the list, you can use the Filter field by clicking in the field and typing the desired variable name. The Variables pane will automatically scroll to that variable. You can then select the variable from the list. d. Click OK.

The Edit Process dialog box reappears and the Sold-to—party variable is added to the parameters for the VA01_CreateStandardOrder process. 8.

To add a variable to Ship-to-party: a. Locate and select the Ship-to-party/Input step (step #8). b. In the Parameters tab, in the Value to input field, click the Select Variable icon.

The Select Variable dialog box appears. c. In the Variables pane, scroll through the list and select Ship-to-party. d. Click OK.

The Edit Process dialog box reappears and the Ship-to—party variable is added to the parameters for the VA01_CreateStandardOrder process.

9.

Click the Save

button.

10.

Click the Close button to exit the Process Editor.

Certify 8.6.0 Participant Training Guide

97

Lesson 3.1: Creating and Using Variables

Lesson Summary You’ve completed the Creating and Using Variables lesson. Key points to remember:

98



A variable is a symbol or name that represents a value. The most common use of variables is for data-driven testing, where process execution loops through a series of data values.



Variables can also be used when you need to store or verify system data, such as the System Date or Machine Name or when specific data for a user is required, such as a user ID or password to log into an external system or application.



When preparing to use variables, the first thing you should do is go through your existing processes and identify all the places where variables can be used in place of data. Once you have all of the variables for the process identified, you then need to determine the type of variables you are using: System, Project, Process, or User.



As a best practice, you should do the following: 

Create a table or spreadsheet showing the processes and all of the variables that you will use for each process.



Use variable names that describe what type of data the variable contains and how you will use the variable.

Certify 8.6.0 Participant Training Guide

Lesson 3.2 Creating and Managing Layouts

Certify 8.6.0 Participant Training Guide

99

Lesson 3.2: Creating and Managing Layouts

Overview In this lesson, you will learn another data-driven entity called layouts. You will use layouts with variables and recordsets to develop data-driven testing.

Objectives After completing this lesson, you will be able to: 

Describe what layouts are and how they are used in Certify.



Create layouts manually.



Create layouts using processes.

Contents This lesson contains the following topics and exercises:

Topic

100

See Page

Layout Overview

101

Defining Layouts in Certify

102

Exercise 3.2A — Creating Layouts Manually

104

Exercise 3.2B — Creating a Layout Using Processes

108

Creating a Layout for a Process

111

Exercise 3.2C — Creating a Layout for a Process

114

Certify 8.6.0 Participant Training Guide

Lesson 3.2: Creating and Managing Layouts

Layouts Overview In Certify, performing data-driven testing starts with creating a layout. A layout is a collection of variables that define the data in a recordset. A recordset is a file containing data values and is covered in depth in Lesson 3.3. A layout must exist before you can create the recordsets that will be used for your tests.

You can create a layout at any time after creating a project, although a layout is not meaningful until used in a process. A layout can have one or more recordsets associated with it. For example, a layout that contains account information might have three recordsets: one that creates the initial set of data, another that adds data for regression testing, and one that adds data specifically to test new features. Table 1 below shows the layouts needed to be created for the VA01_CreateStandardOrder process. Each layout contains one recordset and a list of variables needed for that recordset. If you were planning on performing multiple test cycles, you might have multiple recordsets for each of the Account layouts. Table 1 — Layouts Definition Example

Layout

Variables

VA01_CreateStandardOrder_C_EnterMaterials

Material Order Quantity

VA01_CreateStandardOrder

Sold-to-party Ship-to-party

Layouts can be created from the variables referenced in a process, from the windows and objects you imported for your application, or they can be defined from scratch. 

When you create a layout manually, you insert or add existing variables into the layout. Manually creating a layout requires you to select variables in a project and add or remove the variables in the layout.



When you create a layout from a process, you can select the process that contains the variables you want to add to the layout. Each record or line in the recordset will contain a value for each variable defined in the selected processes.

Certify 8.6.0 Participant Training Guide

101

Lesson 3.2: Creating and Managing Layouts

Defining Layouts in Certify Layouts are created and managed on the Data window. When you click Data on the Navigation taskbar, you see the existing layouts for the project you are working with. From here, you can create new or modify the existing layouts. Layout creation and modification takes place in the New/Edit Layout dialog box as shown in Figure 1. Figure 1 — New/Edit Layout Dialog Box

From the New/Edit Layout dialog box you specify a unique name and description for the layout. As a best practice, layouts should be named as the process to which they are attached. For example, the Create Sales Order: Initial Screen could have a layout named VA01_CreateStandardOrder. The name tells us that this layout contains all of the variables in the VA01_CreateStandardOrder process. Next, you select the methods for adding variables to the layout (by process or manually). If you choose to add variables from a process, the Select Process window displays where you can select the processes to create the variables from. See Figure 2.

102

Certify 8.6.0 Participant Training Guide

Lesson 3.2: Creating and Managing Layouts

Figure 2 — Select Processes Dialog Box

Certify 8.6.0 Participant Training Guide

103

Lesson 3.2: Creating and Managing Layouts

Creating Layouts Manually Creating a layout manually involves adding existing or creating new variables for the layout. One reason for creating layouts manually is to test a particular area of your application. For example, your application window has seven input fields including first name, last name, address, city, state, zip, and phone. You want to test only three input fields (city, state, and zip) to ensure the information you are collecting is valid or invalid. In this case, you may want to create a layout with these three fields only and create a process that only tests city, state, and zip. Even in this case, you can select variables from objects or from processes to create the layout, but more often you’ll manually create these variables using the add or insert capability.

EXERCISE 3.2A — Creating Layouts Manually

In this exercise, you will create a layout called Enter Materials and manually add the Material and Order Quantity variables. Step 1.

Action On the Navigation taskbar, click Data.

The Data window appears.

104

2.

In the Navigation tree, click the folder.

3.

Click the folder.

4.

Right-click in the Summary pane and select New Layout.

Certify 8.6.0 Participant Training Guide

Lesson 3.2: Creating and Managing Layouts

The New Layout dialog box appears.

5.

In the New Layout dialog box, type in field values or select options as follows: Field/Option

Value/Action

Name

VA01_CreateStandardOrder_C_EnterMaterials

Description

Materials and Order Quantity

Create

Leave blank

Variables

Right-click and select Add

Certify 8.6.0 Participant Training Guide

105

Lesson 3.2: Creating and Managing Layouts

The Select Variables dialog box appears.

6.

Select the Material variable.

7.

Click OK.

The Select Variable dialog box closes, and the New Layout dialog box reappears with the Materials variable displayed in the Variables pane. 8.

To add the second variable: a. Right-click in the Variables pane and select Add.

The Select Variables dialog box appears. b. Select the Order Quantity variable. c. Click OK.

The Select Variable dialog box closes, and the New Layout dialog box appears with the two variables displayed in the Variables pane.

106

Certify 8.6.0 Participant Training Guide

Lesson 3.2: Creating and Managing Layouts

9.

Click OK.

The Enter Materials layout displays in the Summary pane with the two variables listed in the Detail pane.

Certify 8.6.0 Participant Training Guide

107

Lesson 3.2: Creating and Managing Layouts

Creating Layouts Using Processes Creating layouts using processes involves selecting one or more processes from the Select Process dialog box. The layout is incrementally generated based on the variables used in the selected processes.

EXERCISE 3.2B — Creating a Layout Using Processes

In this exercise, you will create a layout called VA01_CreateStandardOrder and select the VA01_CreateStandardOrder process. All of the variables used in this process are added to the layout. Step 1.

Action On the Navigation taskbar, click Data.

The Data window appears. 2.

In the Navigation tree, click the folder.

3.

Click the folder.

4.

Right-click in the Summary pane and select New Layout.

The New Layout dialog box appears. 5.

6.

In the New Layout dialog box, type in field values or select options as follows: Field/Option

Value/Action

Name

VA01_CreateStandardOrder

Description

Order header information

Create

Select From Processes

Click the Select button.

The Select Process dialog box appears. 7.

In the Navigation tree, click the plus sign next to , Sandbox, and .

8.

Click OTC_StandardOrderProcess.

9.

In the Summary pane, select the VA01_CreateStandardOrder process.

The process is highlighted in the Summary pane.

108

Certify 8.6.0 Participant Training Guide

Lesson 3.2: Creating and Managing Layouts

10.

Click OK.

The Select Process dialog box closes and all variables that were used in the VA01_CreateStandardOrder process are placed in the Variables pane in the New Layout dialog box. Notice that the System variable (Date) is not in the list of variables. Remember, since you can write to variables in a recordset, System variables cannot be a part of a recordset because they are already set with data from the system.

11.

Click OK to save the new layout and close the New Layout dialog box.

Certify 8.6.0 Participant Training Guide

109

Lesson 3.2: Creating and Managing Layouts

The VA01_CreateStandardOrder layout displays in the Summary pane with the variables listed in the Detail pane.

110

Certify 8.6.0 Participant Training Guide

Lesson 3.2: Creating and Managing Layouts

Creating a Layout for a Process The Certify Add to Layout feature allows you to convert static data to variable data. If you have a process that has steps containing literal values or variables and no associated layout, you are able to create a layout for the process. Figure 3 — Create a Layout for a Process

You will be able to: 

Select steps of interest within the Steps tab



Replace literal values in those steps with variables



Create a layout for the process



Create a recordset for the layout



Collect variables from selected steps and add those variables to the layout



Update one row of recordset data to contain replaced literal values or variables initial values

Certify 8.6.0 Participant Training Guide

111

Lesson 3.2: Creating and Managing Layouts

Add to Layout Window The Add to Layout dialog box contains two sections: the Assets pane and the columns, as shown in Figure 4. Figure 4 — Add to Layout Dialog Box

Assets Area

112



Layout Folder — Displays the folder path of the existing or new layout for the current process. If a new layout is being created, it will be created in the same folder path as the process.



Layout Name — Displays the name of the existing or new layout for the current process. If there is no layout associated to the process, the new layout will have the same name as the process.



Recordset Name — Allows you to input a name for the recordset. If it is an existing layout with recordsets, you can select a recordset from the drop-down list.



Variable Folder — Displays the folder where the new variable will be placed. The value in the field is the root variable folder of the project.

Certify 8.6.0 Participant Training Guide

Lesson 3.2: Creating and Managing Layouts

Columns Area The following table outlines the columns on the Add to Layout window. Table 2 — Add to Layout Column Options

Column

Description

Narrative

Displays the narrative of the selected step. This column is read-only. If the step is not a typical Input or Verify step, the narrative will be prefixed by “???”. If you see this prefix, this step may not be an appropriate step to drive the data.

Parameter

If the parameter can accept a variable, you can select a variable from the drop-down list. If the parameter cannot accept a variable, the drop-down list is not displayed, nor is it displayed if a parameter contains a user, local, or system variable.

Value

If the current value of the parameter contains a variable, the value appears as (V) plus the variable name. This column is read-only.

Action

Allows you to select one of the following values:

Variable



Create Variable — This value will appear in the list if a variable needs to be created for the current parameter.



Use Variable — This value will appear in the list if the current parameter value is a variable.



Select Variable — This value will appear in the list if the current parameter value is a literal value. If you select this option, the Select Variable dialog box appears where you are able to select the variable to use in this parameter.

Shows the name of the variable to be used in this parameter. If the parameter already contains a variable, the column is not editable. If the parameter contains a literal value, you are able to edit the variable name. If you change the variable name, Certify will check to see if a variable by that name already exists in the specified variable folder. If the variable does exist, the Action column value is updated to Use Variable. If a variable does not exist, the Action column value is updated to Create Variable.

Type

Allows you to select the data type of the parameter. The available values in the list depend on the data type of the parameter. If the value for the Action column is Use Variable, this column displays the data type of the selected variable. If the Action column value is Create Variable, you can select the data type to use when creating the variable.

Exercise 3.2C is an example of how to use this feature.

Certify 8.6.0 Participant Training Guide

113

Lesson 3.2: Creating and Managing Layouts

EXERCISE 3.2C — Creating a Layout for a Process

This exercise will show how to create a layout for a process.

Step

Action

1.

Open a Certify process and click the Steps tab.

2.

Right-click on a step or multiple steps in the Steps pane. For this example, four steps were selected.

A Short-cut menu appears.

3.

Click Add to Layout.

The Add to Layout dialog box appears with four lines for each step that was selected.

114

Certify 8.6.0 Participant Training Guide

Lesson 3.2: Creating and Managing Layouts

4.

In the Recordset Name field, type the name of the recordset. Note: If this is an existing layout with recordsets, select a recordset from the drop-down list.

5.

In the Action field, click the drop-down arrow.

A short list appears.

You can create a variable manually or select a variable from the Select Variable dialog box. The default is Create Variable. 6.

To create a variable manually: a. Select Create Variable. b. Click in the Variable field and type the name of the variable.

Certify 8.6.0 Participant Training Guide

115

Lesson 3.2: Creating and Managing Layouts

c.

In the Type field, click the drop-down arrow and select the desired type.

d. Click OK to save the new layout. 7.

To select a variable: a. In the Action field, click the drop-down arrow and select Select Variable.

The Select Variable dialog box appears.

b. Select the variable from the list. c.

Click OK.

The variable name appears in the Variable field. d. On the Add to Layout dialog box, click OK to save the new layout.

The Process and Data Editor appears and shows the variables in the Value to Input field for each step that was selected.

116

Certify 8.6.0 Participant Training Guide

Lesson 3.2: Creating and Managing Layouts

8.

Click the Process Details tab.

The layout and recordset has been created.

9.

Click the Recordset tab.

You can add rows to the recordset from here. Recordsets will be covered in detail in lesson 3.3.

Certify 8.6.0 Participant Training Guide

117

Lesson 3.2: Creating and Managing Layouts

118

Certify 8.6.0 Participant Training Guide

Lesson 3.2: Creating and Managing Layouts

Lesson Summary You’ve completed the Creating and Managing Layouts lesson. Key points to remember: 

A layout is a collection of variables that define the data in a recordset.



You can create a layout at any time after creating a project although a layout is not meaningful until used in a process.



When you create a layout manually, you insert or add existing variables into the layout. Manually creating a layout requires you to select variables from an application version in a project and add or remove the variables in the layout.



When you create a layout from a process, you can select the process that contains the variables you want to add to the layout. Each record or line in the recordset will contain a value for each variable defined in the selected processes.



If you have a process that has steps containing literal values or variables and no associated layout, you are able to create a layout for the process using the Add to Layout feature.

Certify 8.6.0 Participant Training Guide

119

Lesson 3.2: Creating and Managing Layouts

120

Certify 8.6.0 Participant Training Guide

Lesson 3.3 Creating and Adding Recordsets

Certify 8.6.0 Participant Training Guide

121

Lesson 3.3: Creating and Adding Recordsets

Overview In the previous lesson, you learned about layouts and how they are used. In this lesson, you will learn about another data entity called recordsets. You will use recordsets with layouts and variables to develop data-driven testing.

Objectives After completing this lesson, you will be able to: 

Describe what recordsets are and how they work with layouts.



Create a recordset.



Add layouts and recordsets to a process.



Execute process using data.



Use the process usage feature to find layouts.



Use the process usage feature to find recordsets.

Contents This lesson contains the following topics and exercises:

Topic

122

See Page

Recordsets Overview

123

Working with Recordsets in Certify

124

EXERCISE 3.3A — Creating a Recordset for VA01_CreateStandardOrder_C_ EnterMaterials

126

EXERCISE 3.3B — Creating a Recordset for VA01_ CreateStandardOrder

129

Adding Layouts and Recordsets to Existing Process Steps

133

EXERCISE 3.3C — Adding Layouts and Recordsets to a Process

133

Executing Processes that use Data

136

ERCISE 3.3D — Executing Processes with Data

136

Using the Process Usage Feature to Find Layouts

137

EXERCISE 3.3E — Viewing the Process Usage for a Specific Layout

137

Using the Process Usage Feature to Find Recordsets

138

EXERCISE 3.3F — Viewing the Process Usage for a Specific Recordset

138

Certify 8.6.0 Participant Training Guide

Lesson 3.3: Creating and Adding Recordsets

Recordsets Overview In Certify, recordsets contain data values used in data-driven testing. A recordset is defined by a layout. Once you have defined at least one layout, you can create recordsets and add data values for the variables defined in that layout. For example, a recordset for creating a new account might contain multiple data values for account name, address, and so forth. In Certify, you can attach recordsets to processes or process steps, and either read data values from the recordset to process steps, or write values provided by the application you are testing to the recordset. Using recordsets provides a way to loop through your application while a test is being executed. The looping allows each row of data in the recordset to be used in the process. For example, if a recordset is attached to a process in Read mode, then the process will loop once for each row of data values. Certify will execute a process completely and repeatedly for each row of data in an attached recordset. Figure 1 shows the VA01_CreateStadnardOrder_C_EnterMaterials layout you created in the previous lesson and the Initial recordset containing multiple records of data for each of the variables defined in the layout. When the layout and recordset are attached to the VA01_CreateStandardOrder process in Read mode, the process is executed once for each record in the recordset. The outcome is that multiple accounts are created. Figure 1 — Item Layout with Initial Recordset Attached to the VA01_CreateStandardOrder Process

Using recordsets during execution allows you to use the same process to input or verify different data at different times. As the certification process moves through each of your critical business processes, the data values change to reflect the varying state of the underlying application data.

Certify 8.6.0 Participant Training Guide

123

Lesson 3.3: Creating and Adding Recordsets

Working with Recordsets in Certify Some common uses for recordsets are: 

Attaching a recordset at the process level in Read mode — allows you to loop through the process once for each record in the recordset. When all the records are read, the process execution ends. For example, a process that contains variables for account name, address, and telephone number would have a recordset with three columns and as many rows of data as there are accounts to be added.



Attaching a recordset at the process level in Write mode (append/overwrite) — allows you to loop through the process writing values to a new or existing recordset. Because there is no end condition when writing to a file, the process will execute until a condition is met. If you do not provide for an exit or abort condition, you will create an infinite loop. For example, you can increment a variable value until it reaches a certain value, then use a Number | Compare action to exit.



Attaching recordsets at the step level in Read mode — allows you to read a record within a recordset at any point within a process when a step is executed (no automatic looping occurs). You can read the next, previous, or specified record number.



Attaching recordsets at the step level in Write mode (append/overwrite) — allows you to write a record to a new or existing recordset when the step is executed (no automatic looping occurs).



Attaching a recordset at execution — allows you to use a different recordset during an execution of the selected process. The read/write execution of the recordset works the same.



Creating a recordset at runtime — allows you to use the Write Record system action to create a new recordset during process execution. Values are read from a recordset attached at the process level, and those values are used to create new values that are written to a different recordset.

You create and manage recordsets in the Data window. When you click Data on the Navigation taskbar, you see the existing layouts for the project you are working with. From here, you select the layout you want to use to create your recordset. The Recordsets tab in the Detail pane shows all of the current recordsets for the selected layout.

124

Certify 8.6.0 Participant Training Guide

Lesson 3.3: Creating and Adding Recordsets

You can create a new recordset by right-clicking in the Details pane and selecting New Recordset, or modify an existing recordset by double-clicking on the recordset. This opens the New/Edit Recordset dialog box as shown in Figure 2. Figure 2 — New/Edit Recordset Editor Dialog Box

From the New/Edit Recordsets dialog box, you specify a unique name and description for the recordset. Then, on the first available row, under Records, you begin entering the data for the recordset. Each row of data you enter should coincide with the columns (selected variables) in the recordset. Next, you can order the rows of data according to how they should be executed. For example, if your first row of data is P-100 for the Material and 20 for the Order Quantity, then this line will be the first set of data values used when this recordset is called. To assist in adding data values to your recordset, you can use the Import feature to import your existing data values that are stored in a comma-separated value (CSV) file. You can also export recordset data to a CSV file. The caret (^) character is used to designate the skip character for any value in a recordset. Any step that refers to a recordset whose value contains this character is skipped. For example, if certain fields or objects are enabled or disabled based on data values, the skip character can be used in a recordset to designate when disabled fields should be skipped.

Certify 8.6.0 Participant Training Guide

125

Lesson 3.3: Creating and Adding Recordsets

EXERCISE 3.3A — Creating a Recordset for VA01_CreateStandardOrder_C_EnterMaterials With your VA01_CreateStandardOrder_C_EnterMaterials layout defined, you are now ready to create your first recordset. In this exercise, you will select the VA01_CreateStandardOrder_C_EnterMaterials layout, create a recordset called Initial, and add three rows of data. Step 1.

Action On the Navigation taskbar, click Data.

The Data window appears. 2.

In the Navigation tree, click the folder.

3.

Click the folder.

4.

In the Summary pane, select the VA01_CreateStandardOrder_C_EnterMaterials layout.

5.

In the Detail pane, click the Recordset tab.

6.

Right-click in the Recordsets tab.

A shortcut menu appears. 7.

Select New Recordset.

The Recordset Editor dialog box appears.

126

Certify 8.6.0 Participant Training Guide

Lesson 3.3: Creating and Adding Recordsets

8.

In the New Recordset dialog box type in field values as follows: Press to advance to the next field in the recordset.

Field

Value

Name

Initial

Description

Records for Material and Order Quantity Record One

Column Heading

Type the following value under the heading:

Material

Order Quantity

20 Record Two

Column Heading

Type the following value under the heading:

Material

Order Quantity

40

Certify 8.6.0 Participant Training Guide

127

Lesson 3.3: Creating and Adding Recordsets

Record Three Column Heading

Type the following value under the heading:

Material

Order Quantity

60

Your screen should look similar to the following screenshot:

9.

128

Click OK.

Certify 8.6.0 Participant Training Guide

Lesson 3.3: Creating and Adding Recordsets

The Initial recordset is saved and displayed in the Detail pane.

EXERCISE 3.3B — Creating a Recordset for VA01_CreateStandardOrder In this exercise, you will select the VA01_CreateStandardOrder layout, create a recordset called Order, and add three rows of data. Step 1.

Action On the Navigation taskbar, click Data.

The Data window appears. 2.

In the Navigation tree, click the folder.

3.

Click the folder.

4.

In the Summary pane, select the VA01_CreateStandardOrder layout.

5.

In the Detail pane, click the Recordset tab.

6.

Right-click in the Recordsets tab.

Certify 8.6.0 Participant Training Guide

129

Lesson 3.3: Creating and Adding Recordsets

A shortcut menu appears. 7.

Select New Recordset.

The Recordset Editor dialog box appears.

8.

In the New Recordset dialog box type in field values as follows: Press to advance to the next field in the recordset.

Field

Value

Name

Order

Description

Records for Sold-to-party and Ship-to-party Record One

130

Column Heading

Type the following value under the heading:

Sold-to-party

Ship-to-party

Certify 8.6.0 Participant Training Guide

Lesson 3.3: Creating and Adding Recordsets

Record Two Column Heading

Type the following value under the heading:

Sold-to-party

Ship-to-party

Record Three Column Heading

Type the following value under the heading:

Sold-to-party

Ship-to-party

Your screen should look similar to the following screenshot:

9.

Click OK.

Certify 8.6.0 Participant Training Guide

131

Lesson 3.3: Creating and Adding Recordsets

The Initial recordset is saved and displayed in the Detail pane.

132

Certify 8.6.0 Participant Training Guide

Lesson 3.3: Creating and Adding Recordsets

Adding Layouts and Recordsets to Existing Process Steps After you have defined your recordsets, you can attach them to processes or process steps in the Process Editor. Each process can have one recordset attached. Attaching recordsets is done by selecting a layout, a recordset, and the mode of operation. The level at which you attach the recordset determines whether a loop will occur, and the mode determines how it will be executed. For example, if a recordset is attached to a process in Read mode, then the process will loop once for each row of data values. When writing to a recordset, you can append the existing data values in the recordset to overwrite the data values with values created by executing the process. Recordsets can also be read, overwritten, or appended at the step level within any process using the system Read Recordset or Write Recordset command. If either of these commands is used within a step, no loop will occur. For example, you could attach a recordset in Read mode to a process that contains a Write command. The Read Recordset then creates a loop in which the Write command would be executed.

EXERCISE 3.3C — Adding Layouts and Recordsets to a Process

In this exercise, you will apply the layouts and recordsets you created to the VA01_CreateStandardOrder process created previously for the SAP Order to Cash transaction. Step 1.

Action On the Navigation taskbar, click Processes.

The Processes window appears. 2.

In the Navigation tree, expand the , , and Sandbox folders.

3.

In the Sandbox folder, click and OTC_StandardOrderProcess.

4.

In the Summary pane, right-click the VA01_CreateStandardOrder process and select Edit. Another way to access the Edit Process dialog box is to double-click on the process in the Summary pane.

The Edit Process dialog box appears. 5.

Click the Steps tab.

Certify 8.6.0 Participant Training Guide

133

Lesson 3.3: Creating and Adding Recordsets

6.

In the Summary pane, scroll down and click VA01_CreateStandardOrder_C_EnterMaterials. (Step #11).

7.

At the bottom of the screen, in the Parameters tab, in the Layout field, click the Select Layout

icon.

The Select Layout dialog box appears. 8.

In the Navigation tree, expand the and Sandbox, folders.

9.

Click .

10.

In the Summary pane, select VA01_CreateStandardOrder_C_EnterMaterials.

11.

Click OK.

The Select Layout dialog box closes and the Edit Process dialog box reappears. 12.

In the Parameters tab, in the RecordSet Name field, verify Initials displays.

13.

In the Parameters tab, in the RecordSet Mode field, verify Read Only displays.

14.

To attach the VA01_CreateStandardOrder layout: a.

Click the Process Details tab.

b. In the Layout field, click the Select Layout

134

icon.

Certify 8.6.0 Participant Training Guide

Lesson 3.3: Creating and Adding Recordsets

The Select Layout dialog box appears. c. In the Navigation tree, expand the and Sandbox, folders. d. Click . e. In the Summary pane, select VA01_CreateStandardOrder_C_EnterMaterials. f.

Click OK.

The Select Layout dialog box closes and the Edit Process dialog box reappears. g. In the RecordSet Name field, verify Order displays. h. In the RecordSet Mode field, verify Read Only displays.

The Process icon in the navigation tree process that has a recordset attached.

15.

Click the Save

16.

Click the Close button to exit the Process Editor.

changes to

to quickly identify the

button.

Certify 8.6.0 Participant Training Guide

135

Lesson 3.3: Creating and Adding Recordsets

Executing Processes That Use Data You are ready to execute the OTC_StandardOrderProcess process with data. The process will call the VA01_CreateStandardOrder process where you have attached the Enter Materials layout and Initial recordset. If you use the Step option during execution, you can view the recordset and the data values being used for the process you are executing.

EXERCISE 3.3D — Executing Processes with Data

In this exercise, you will execute the processes that have layouts and recordsets. Step 1.

Action From the Process window, in the Summary pane, right-click OTC_StandardOrderProcess and select Run.

The Configuration dialog box appears. 2.

Click Start.

The Execution dialog box appears. 3.

Click Run.

The process executes and the Result Viewer appears upon completion. 4.

In the Result Viewer, in the Navigation tree, expand OTC_StandardOrderProcess with the current date.

5.

Expand the sub-folder OTC_StandardOrderProcess.

The processes that ran appear in the Summary pane. 6.

In the Summary pane, select VA01_CreateStandardOrder.

The Detail pane shows the layout and recordset information.

136

7.

When finished reviewing the results, click the red the Result Viewer.

in the top right corner to close

8.

Open the Process Editor and make any needed corrections to the failed steps.

Certify 8.6.0 Participant Training Guide

Lesson 3.3: Creating and Adding Recordsets

Using the Process Usage Feature to Find Layouts After adding a layout to a process, you can use the Process Usage feature to see the processes where the layout is used and the steps where the variables in the layout are used. From here, you can run processes, delete processes, and view the details, steps, linked requirements, and attributes for the process.

EXERCISE 3.3E — Viewing the Process Usage for a Specific Layout

In this exercise, you will use the Process Usage feature of Certify to see which processes use a layout you created. Step

Action

1.

On the Navigation taskbar, click Data.

2.

In the Navigation tree, click to expand the folder.

3.

In the Summary pane, right-click VA01_CreateStandardOrder_C_EnterMaterials and select Process Usage.

The Process Usage dialog box appears showing a list of processes that use the Enter Materials layout.

4.

Click Cancel to close the Process Usage dialog box and return to the Layout window.

Certify 8.6.0 Participant Training Guide

137

Lesson 3.3: Creating and Adding Recordsets

Using the Process Usage Feature to Find Recordsets After applying a variable, you can view the usage of the variable by using the Process Usage feature. A window opens showing the steps where each variable is used. The window also shows you where each variable is used as a recordset selection. This feature is part of the advanced functionality of Certify where variables can be used to call recordsets. If you have created these types of variables and implemented them, the Process Usage window will reveal where you have used them.

EXERCISE 3.3F — Viewing the Process Usage for a Specific Recordset

In this exercise, you will use the Process Usage feature of Certify to see which processes use the Initial recordset. Step

Action

1.

On the Navigation taskbar, click Data.

2.

In the Navigation tree, click to expand the folder.

3.

In the Summary pane, select the VA01_CreateStandardOrder_C_EnterMaterials layout.

4.

In the Details pane, click the Recordset tab.

5.

Right-click the Initial recordset and select Process Usage.

The Process Usage dialog box appears showing a list of processes that use the Initial recordset.

138

Certify 8.6.0 Participant Training Guide

Lesson 3.3: Creating and Adding Recordsets

6.

Click Cancel to close the Process Usage dialog box and return to the Layout window.

Certify 8.6.0 Participant Training Guide

139

Lesson 3.3: Creating and Adding Recordsets

Lesson Summary You’ve completed the Creating and Adding Recordsets lesson. Key points to remember:

140



Recordsets are files that contain data values used in data-driven testing. A recordset is defined by a layout. Once you have defined at least one layout, you can create recordsets and add data values for the variables defined in that layout.



You can attach recordsets to processes or process steps and either read data values from the recordset to process steps or write values provided by the application you are testing to the recordset.



Using recordsets provides a way to loop through your application while a test is being executed. The looping allows each row of data in the recordset to be used in the process.

Certify 8.6.0 Participant Training Guide

Lesson 4 How To…

Certify 8.6.0 Participant Training Guide

141

Lesson 4: How To…

Overview In this lesson, you will learn how to do perform various tasks in Worksoft Certify.

Contents This lesson contains the following topics and exercises:

Topic

142

See Page

How to Identify Test Requirements

143

How to Apply Read-Only Access to an Application Version

151

How to Work with Recordsets

153

How to Add Logic to a Process

180

How to Create Queries, Reports, and Charts

190

How to Perform Administrative Functions

199

How to Define State Processes

210

How to Define Naming Conventions

221

How to Use Certify Lights Out Testing Methodology

224

How to Use the SAP Learn Utility

248

How to Identify SAP Classes and Actions

261

How to Access Certify Help

270

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

Identify Test Requirements Requirements Overview Requirements are business features or functions that describe how your application should work. In Certify, identifying requirements is the first step in defining the Critical Business Process Certification and in managing the associated risks. Certify supports requirements validation by allowing you to create hierarchical requirements that can be linked to your business processes. When the processes are executed against the application under test, the pass/fail status of the execution determines whether or not the requirement is satisfied. You can review the status of your requirements in the Requirements window. Certify also provides a requirement coverage report in both detail and summary modes and customer query and report support for reviewing all or part of your requirements information. All of these features work together to enable you to monitor requirements, manage risks, and make important decisions during your testing process. If needed, you can edit multiple requirements at one time. Once you change a value and save it, the selected requirement will be updated with the new value. A user with Administrative rights can control the “read-only” access to a requirement. All child requirements will inherit the permissions of the parent requirement. Once the process is created, it will automatically link to the requirement. Certify supports a wide set of information for each requirement, including risk, priority, estimated and actual efforts, as well as the percent complete for your project. You may also further customize the information associated with a requirement by recording the information as a user-defined attribute. If you have a source or reference document associated with the requirement, you can link to a source document located on your network. Requirements can also be exported to comma-separated values files (.csv) for use in reporting or in other applications.

Certify 8.6.0 Participant Training Guide

143

Lesson 4: How To…

Identifying Test Requirements Identifying requirements is the first step in defining and managing processes. Requirements are identified in one or more of the following ways: 

Measuring the scope of the test effort



Interviewing application users



Performing a risk analysis



Using existing documented requirements

You should organize your research results into a hierarchy and adopt a naming convention that will ensure your requirements are easy to locate. For example, you may want to include the application area and the task involved in the naming convention because it makes the requirement easy to find by sorting the list alphabetically and narrowing the search. Also, it is easier to add a new requirement. You can also use your existing naming convention or requirement IDs from documented requirements. The first part of the name might designate the sub-system, the second might designate the category, and the third part denotes a particular case or instance. For example, in the SAP Order to Cash transaction, the requirement to create a standard order is called OTC_StandardOrderProcess. Table 1 shows an example of the parent requirement for the SAP Order to Cash transaction. As you expand the scope of your certification process, you can add sub-tasks or child requirements, that map to certain fields or test scenarios you want to validate. Table 1 — Requirement with Linked Processes

Requirements

Description

Linked Processes

Risk

Priority

Create Standard Order Process

Process used to create standard sales order

OTC_StandardOrderProcess

High

High

Once you have defined all of the processes for your application, you should go back to your list of requirements and create links between the

144

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

Using Requirements Requirements in Certify are organized under a Certify project. Fields in a requirement consist of a name, description, risk, priority, effort, percent complete, and source document. Child requirements can be created at any level in the hierarchy and are attached to the parent requirement. A key feature of requirements in Certify is the ability to link them to processes. Both the requirement and process must be created before they can be linked together to create a requirement trace. You can also link the requirement with multiple processes. Likewise, each process may have multiple requirements as dependencies. Once requirements are linked to processes and execution is complete, the status of the requirement is shown visually in the Requirements window. Visual indicators are provided to help you quickly review the status. Requirement status is computed based on the execution result of the linked processes and the status of child requirements.

Understanding Child Requirements Requirements in Certify are organized under a Certify project. Fields in a requirement consist of a name, description, risk, priority, effort, percent complete, and source document. Child requirements can be created at any level in the hierarchy and are attached to the parent requirement. A key feature of requirements in Certify is the ability to link them to processes. Both the requirement and process must be created before they can be linked together to create a requirement trace. You can also link the requirement with multiple processes. Likewise, each process may have multiple requirements as dependencies. Table 2 — Parent with Child Processes

Requirements

Description

Linked Processes

Parent Requirement (Level 1) Create Standard Process used to OTC_StandardOrderProcess Order Process create standard sales order Child Requirements for Create Standard Order Process (Level 2) Create Standard Executes VA01 VA01_CreateStandardOrder Order transaction and inputs initial sales data Create Outbound Create the outbound VL01N_CreaetOutboundDelivery Delivery delivery Post Goods Issue Changes the delivery VL02N_PostGoodsIssue order Create Billing Creates the billing VF01_CreateBillingDocument Document documents

Risk

Priority

High

High

High

High

High

Medium

High

Medium

High

Medium

You may also want to create more child requirements. You can create any number of levels of parent/child requirements, but no two requirements can have the same name at the same level. Requirements are linked only at the process level.

Certify 8.6.0 Participant Training Guide

145

Lesson 4: How To…

Creating Requirements and Child Requirements Once you have your requirements identified, you are ready to enter them into Certify. As mentioned, requirements are organized under a project. Once you have selected the project, you can then begin create requirements in that project from the Requirements window. Once added, a requirement appears in the list of requirements where it can be viewed or modified. You can also create links between the requirement and existing processes. However, before you begin defining the processes, you’ll need to create a folder under Sandbox.

EXERCISE 4.1 — Creating a requirement and child requirement

This exercise walks through the steps to creating a requirement and child requirement. Step 1.

Action On the Navigation taskbar, click Requirements.

The Requirements window appears. 2.

In the Navigation tree, click .

3.

Right-click in the Summary pane and select New Requirement.

The New Requirement dialog box appears.

146

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

4.

In the New Requirement dialog box, type in field values and select options as desired.

5.

Click OK to save the new requirement.

You now have the parent requirement for your project displaying in the Requirements list. You can also expand the Navigation tree to see the new requirements. 6.

To create the child requirement: a. In the Requirements Navigation tree, click the desired requirement.

The Detail information appears in the Summary pane. b. In the Summary pane, click the Child Requirements tab c. Right-click in the Child Requirements pane and select New Requirement.

The New Requirement dialog box appears. d. In the New Requirement dialog box, type in field values and select options as desired. e. Click OK to save the new child requirement. 7.

Repeat 6 to create additional child processes.

Certify 8.6.0 Participant Training Guide

147

Lesson 4: How To…

Linking Processes to Requirements As mentioned, you can link processes to requirements to ensure that the requirement passes process execution. The linking of requirements is a useful feature if you find it necessary to track the requirements for your application. You can also link a requirement with multiple processes, and each process can have multiple requirements as dependencies. However, requirements cannot be directly linked to steps in a process. However, before you begin defining the processes, you’ll need to create a folder under Sandbox.

EXERCISE 4.2 — Linking Processes to Requirements

This exercise walks through the steps to linking processes to requirements. Step 1.

Action On the Navigation taskbar, click Processes.

The Processes window appears. 2.

In the Navigation tree, in the Sandbox folder, click your name.

3.

In the Summary pane, select the desired process.

4.

To create the link between the process and the requirement: a. In the Detail pane. Click the Linked Requirements tab. b. Right-click in the Linked Requirements tab and select Add Requirement.

The Select Requirement dialog box appears. c. In the Navigation tree, click the desired requirement. d. In the Summary pane, click the Child Requirements tab. e. Select the desired child requirement. f.

Click OK.

The requirement appears in the Linked Requirements list.

148

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

Promoting Results to “Result of Record” With the processes linked back to requirements, you can execute the processes and update the status of the linked requirements with the results. With that done, you can then identify a specific execution result as a Result of Record, which means that result is the official execution result used to determine the status of processes linked to test requirements, and therefore, the overall satisfaction of the requirement. When you identify a result as a Result of Record, the status and execution of each requirement liked to each process in the selected execution will be updated. This will help you determine which test requirements have completely passed. When you promote a result to a Result of Record, the result will appear bolded and a Result of Record field is checked. If you promote a new result to a Result of Record, a message box appears alerting you that promoting the new result will overlay an existing Result of Record. Once you click OK to the message, the previously promoted results for the same process will be replaced and the result will no longer appear bolded.

Resetting Result of Record You can reset results that have already been promoted to a Result of Record by right-clicking the result in the Summary pane and selecting Reset From Result of Record. Once reset, the result will no longer appear bolded and the status for each requirement linked to each process in the selected execution will be updated with an Unknown status.

Viewing Requirement Status The Requirement Status field in the Requirement status pane shows the current status for each requirement. The three possible scenarios are: Satisfied, Not Satisfied, and Unknown. Table 3 shows how requirement status is computed. The Requirement Status field in the Requirement status pane shows the current status for each requirement. The three possible scenarios are: Satisfied, Not Satisfied, and Unknown. Table 3 shows how requirement status is computed. Table 3 — Computing Requirement Status

Requirements Based On

Status Shown

Evaluation

Parent requirement based on child requirement

Satisfied

All child requirements are satisfied, so parent shows satisfied.

Not Satisfied

If any child requirement is not satisfied, the parent shows not satisfied.

Unknown

If any child requirement has an unknown status, the parent shows an unknown status.

Satisfied

All process statuses are passed or skipped.

Not Satisfied

Any process status is failed or aborted.

Unknown

Process has not been executed.

Requirement based on linked processes

Certify 8.6.0 Participant Training Guide

149

Lesson 4: How To…

If you need a visual view of requirements status, Certify provides a common requirements coverage report in a detailed and summary view. Additionally, you may want to create a custom type of query, chart, or report. Custom queries are used to locate and filter data you want to view.

EXERCISE 4.3 — Promoting a result to Result of Record

This exercise walks through the steps to promoting a result to Result of Record. Step 1.

Action On the Navigation taskbar, click Results.

The Results window appears. 2.

In the Summary pane, right-click the desired result.

A short-cut menu appears. 3.

Select Promote to Result of Record.

The result is bolded and a check mark appears in the Result of Record box as shown.

150

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

Apply Read-Only Access to an Application Version Overview The Permissions dialog box allows users with “Write” permissions to a project to control “read-only” access to an application version. If you have set permissions to an application version as read-only for a user, then the user will not be able to make the following changes to the application version: 

Import maps



Create and edit objects



Create and edit windows



Delete windows and objects

Write-protected application versions and their descendants will appear as disabled in the Navigation tree in both the Applications and Maps windows. If an application version is not write-protected with respect to a user, then existing permission mechanisms will still be enforced.

EXERCISE 4.4 — Assigning Read-Only Access to an Application Version This exercise walks through the steps to assigning a user or group read-only access to an application version. Step 1.

Action On the Navigation taskbar, click Applications.

The Applications window appears. 2.

In the Summary pane, click the arrow to expand the desired application.

3.

Right-click on the application version.

A short-cut menu appears. 4.

Select Security.

The Permissions dialog box appears.

Certify 8.6.0 Participant Training Guide

151

Lesson 4: How To…

5.

Right-click in the Permissions dialog box and select Add User/Group.

The Select User/Group dialog box appears. 6.

Select one or multiple users and/or groups. To select multiple, press the key while selecting each user and/or group. For a range of consecutive users and/or groups, press the key when selecting the range.

7.

Once you have made your selections, click OK.

The Users and/or groups you selected have read-only access to the application version. To remove a user and/or group, right-click on the user or group and select Remove User/Group.

152

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

Work with Recordsets Theory of Recordset Usage Certify uses data from a recordset to pass to the automated test process via a Certify variable for such functions as input into a field, verify values, or set parameters. Therefore all the variables used in each child process must have any of the variables supplied set by either a recordset or as a result of an action setting the value of the variable from a field in a prior step or process Sales Order Type variable would be set by a recordset; however, the variable Sales Order Number would be stored from the status bar after a sales order has been saved. Once a variable has been set it retains that value until one of two events occurs: 

An action such as the reading of the next record in a recordset or step in process overwrites its value with another store action, or



Certify execution stops (either naturally or forced)

Certify will also execute any process (Parent and/or child) for each row of data in a recordset if a recordset is attached to the parent or any child process. This is also one of the ways to handle looping within Certify. This allows Certify to execute child processes more than once in certain situation or to execute many different scenarios in an execution run. Examples of recordset looping: 

To populate a table — A sales order might be created for one sold-to/ship-to customer (and therefore the recordset attached to that process would have only one row of data), but you may want to sell one or more items as part of the test. The child process that would populate the item table would have a separate recordset attached with one or more rows of data. If there were 10 rows of data in the recordset attached to that child process it would execute that process 10 times before returns to its parent process.



To execute many different scenarios — A test case may call for a standard order creation for many different sales order types or ship-to/sold-to combinations. The parent process would contain the recordset with multiple rows of sales order data that represent the various scenarios. In this case the entire End-to-End process completes for each row of data in the recordset. If a child process within that End-to-End as a separate recordset attached with it will execute that process independently of the parent process recordset for the number of rows in its attached recordset.

Certify 8.6.0 Participant Training Guide

153

Lesson 4: How To…

In the above example Certify will create two unique Sales Orders (one for Domestic and one for Export); however, each order will contain the same two items based on the same named recordset being called

154

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

within the E_VA01_CreateStandardOrder child process for each row of data being processed at the VA01_CreateStandardOrder parent process. When Certify executes a child process the parent process must tell the child the name of the layout and recordset to use. Therefore, if a child process needs a recordset it must be attached at the step level in the parent process that calls that child process. This concept allows for great flexibility as the same process can be called in different End-to-End processes with or without layouts and recordset attached or if a different layout or recordset is needed. If a recordset is needed at the topmost parent level it will need to be assigned as part of the Process Details section.

Certify 8.6.0 Participant Training Guide

155

Lesson 4: How To…

For Certify to handle data on a more flexible basis, we are going to introduce the concept of a variable in place of a named recordset and recordset filter. In some situations, all three options may be needed— Named, Recordset Variable, or Recordset filters.

Data Handling Options Certify provides extreme flexibility by providing the ability to supply data at various points in an automated test process. This functionality is known as Layouts and Recordsets. Layouts are the collection of variables whose values will be set by the data in a recordset. The layouts collection of variables becomes the column headers for the Recordset. The combination of layout and recordset can be assigned at the parent process, the child process, and/or as individual steps inside a process. A parent process can use one layout and recordset and each individual child processes use a different and unique layout/recordset. In most situations a process (parent or Child) would have one layout with one or more associated recordsets. Recordset assignment can take on one of the following formats:

156



Static Name — Recordset name is hardcoded in the process. Example: Domestic Sales order



Variable Assignment — The name of the recordset is stored in a variable normally set at the parent level. Example: (v)Recordset Name = Domestic Sales Order



Recordset Filter — One named recordset contains data for all possible scenarios and uses a filter normally set at the parent level to extract matching data. Example: (v)Filter = Domestic Sales Order

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

Certify 8.6.0 Participant Training Guide

157

Lesson 4: How To…

Benefit and Limitations of Each Option Static named recordset 

Recordset name is hardcoded at each step that calls a child process by using the dropdown menu (Recordset must exist in a layout folder).



Requires very little maintenance.



Should only be used if that same data will be used for every test run.



If recordset data needs to be change based on the scenario it will require maintenance or duplication of a Certify. Certify process duplication should be the last resort as it could possible duplicate maintenance by the factor of duplicate processes.

Recordset Variables 

Substitute hardcoded recordset with a variable (such as (v)Recordset Name).



Use the Parent level process to determine the value of the recordset variable providing the flexibility to select the scenario at runtime.



Little to no process maintenance is needed after the recordset variable is in place.



This option only works if every recordset under each layout used at all levels of the process are named EXACTLY the same.



Each Scenario requires its own unique recordset for each layout.



Any miss-named recordsets will cause Certify to abort that child process.



Will not be able to use the Recordset tab in the process to edit the data.



Content Merge will not be able to bring across the associated layouts and recordsets to the target location.

Recordset Filters

158



Select or add a field in the layout that will be used to filter on.



Use one named recordset under each layout.



Use the Parent level process to determine the value of the filter variable providing the flexibility to select the scenario at runtime.



Certify will select only the matching values of a large recordset and pass the ‘pared down’ version to the child process.



Little to no process maintenance is needed after the filter is enabled.



Each recordset must have the same variable as part of the layout used in all the child processes.



If a filter is misconfigured or removed from the step calling the child process the entire recordset will be used which may lead to the wrong data supplied to the test case.

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

EXERCISE 4.5 — Using the Recordset Variable Option

The objective of this exercise is to have the selected test case execute for both Domestic and Export scenarios. Step

Action

1.

Open the Process Editor and select the End-to-End process to edit.

2.

Navigate to the first step that calls a child process that have a layout and recordset attached.

The process will have this symbol —

3.

Click the Variable

4.

Search or create the variable Recordset Name. Data Type = Text.

Certify 8.6.0 Participant Training Guide

button.

159

Lesson 4: How To…

5.

To create the Domestic Recordset: a. Click the Layout

button.

b. Click the Recordset tab.

160

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

c. Right-click and select New Recordset. d. In the Name field, type Domestic. e. Fill in the values for the Domestic recordset.

f. 6.

Click OK when complete.

Repeat step 5 to create the Export recordset.

Certify 8.6.0 Participant Training Guide

161

Lesson 4: How To…

Layout folder should contain minimally Domestic and Export recordsets.

Be sure to cancel out of the Layout section so that the Recordset Name variable is not replaced with a named recordset. 7.

162

Repeat steps 1 – 7 for EVERY step that calls a child process with a layout and recordset attached. Example: VA01_CreateStandardOrder has a child process to call E_VA01_CreateStandardOrder with a layout and recordset attached.

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

Certify 8.6.0 Participant Training Guide

163

Lesson 4: How To…

The layout E_VA01_CreateStandardOrder needs to also contain both Domestic and Export recordsets.

164

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

8.

After all the child processes (and any of their child processes that use a layout/recordset attached) have been changed to the Recordset variable and a Domestic and Export recordset created under each layout, click on the topmost parent level process Tab.

9.

Cop[y the name of the process to be used as the Layout name and click the Layout button.

10.

Navigate to the folder that contains the End-to-End layouts for the End-to-End process being edited.

11.

Right-click and select New Layout.

12.

Paste the process name in the Name field.

13.

Add the single variable (v)Recordset Name.

Certify 8.6.0 Participant Training Guide

165

Lesson 4: How To…

166

14.

Click OK.

15.

Click the Recordset tab.

16.

Right-click and select New Recordset.

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

17.

Create a recordset for Domestic.

18.

Create a recordset for Export.

The recordset variable MUST be named exactly as the individual recordset under each layout. The wrong name will cause Certify to abort the child process.

19.

Click OK.

The layout and first recordset should now be added to the parent process level.

Certify 8.6.0 Participant Training Guide

167

Lesson 4: How To…

In this case, Domestic would be the default recordset; however, the user has the ability to select Export at runtime. If Export is normally the default recordset, simply change it in the process details recordset drop-down and save the process. When you click the execute button to execute the test, you will have the opportunity to select the recordset to be used throughout the test.

When you select Domestic as the recordset it will set the variable (v)Recordset Name to Domestic. Every child process that uses the Recordset variable will open the recordset called Domestic. If you selected Export then recordset variable gets set to Export and the child process will now open the Export recordset. You can repeat this entire process for each new scenario needed.

168

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

EXERCISE 4.6 — Using the Recordset Filter Option

The objective of this exercise is to have the selected test case execute for both Domestic and Export scenarios. Step

Action

1.

Open the Process Editor and select the End-to-End process to edit.

2.

Navigate to the first step that calls a child process that have a layout and recordset attached.

The process will have this symbol —

3.

Click the Layout

4.

Right-click the highlighted layout and select Edit.

Certify 8.6.0 Participant Training Guide

button.

169

Lesson 4: How To…

170

5.

Select the first variable listed.

6.

Right-click and select Insert.

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

7.

Select or create a text variable to represent the scenario filter. Example: Scenario

8.

In the Description field, type a helpful description.

9.

Click OK.

10.

Click the Recordset tab.

11.

Right-click and select New Recordset.

12.

In the Name field, type a common name (such as Standard Sales Order).

Certify 8.6.0 Participant Training Guide

171

Lesson 4: How To…

172

13.

Fill in the data for each scenario. (Example: one row for Domestic and one row for Export.

14.

Click OK to close the recordset.

15.

Click OK to add the recordset to the process.

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

16.

Scroll down to the bottom of the process editor until you see the recordset filter field.

17.

Click the Recordset Filter

button.

The Record Filter dialog box appears. 18.

Highlight the field to filter on, hold the left mouse button and drag to the

Certify 8.6.0 Participant Training Guide

symbol.

173

Lesson 4: How To…

19.

174

Select the criteria from the drop-down menu and assign the variable to match it. In most cases, the same variable name will be used.

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

You can select as many variables as you want to filter on, but in this case, just the Scenario is needed.

20.

Click OK.

The process editor dialog box displays Enabled in the Recordset Filter field to let you know the filter is in effect.

21.

Repeat steps 1 – 20 for each child process that uses a recordset. For recordsets that have multiple lines of data (such as the material recordset in this example), place the matching scenario name on each line. Example: the test case calls for two items for the Domestic scenario and three items for the Export scenario.

Certify 8.6.0 Participant Training Guide

175

Lesson 4: How To…

176

22.

Click OK twice to add the recordset to the process.

23.

Set the filter the same way as above.

24.

After all the child processes have had the filter variable (scenario) added to the layout, the scenario values added to the recordset, and the filter set, create the driver recordset at the topmost parent level.

25.

Copy the name of the process to be sued as the layout name and click the Layout button.

26.

Navigate to the folder that contains the End-to-End layouts for the End-to-End process being edited.

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

27.

Right-click and select New Layout.

28.

Paste the name in the Name field.

29.

Add the single variable (v)Scenario.

30.

Click OK.

31.

Click the Recordset tab.

32.

Right-click and select New Recordset.

Certify 8.6.0 Participant Training Guide

177

Lesson 4: How To…

33.

Create a recordset name for each scenario. In this example, there is a recordset named Domestic and Export.

34.

Set the scenario name variable in that recordset to the same name as the recordset.

35.

Click OK.

The layout should contain two recordsets: Dom estic and Ex port.

178

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

The layout and first recordset should now be added to the parent process level.

In this case Domestic would be the default recordset, however the user has the ability to select Export at runtime. If Export is the normally default recordset, simply change it in the process details recordset dropdown and save the process. When you click the execute button to execute the test, will have the opportunity to select the scenario to be used throughout the test.

When you select Domestic as the recordset it will set the variable (v)Scenario to Domestic. Every child process that uses a layout/recordset will filter only records containing Domestic. If you selected Export Certify will filter only Export records into the process You can repeat this entire process for each new scenario needed. Normally a data flow methodology would be decided on before building out the process and either the recordset name or filter option would be handled as you string together the End-to-End processes reducing the above steps greatly. This example was assuming a change to the process after it was built. In some cases it may be necessary to build a test using more than one option which would work fine in Certify

Certify 8.6.0 Participant Training Guide

179

Lesson 4: How To…

Add Logic to a Process Overview This example of using logic will check the SAP status bar to make sure it’s clear of errors or warning messages that could cause the test to fail.

EXERCISE 4.7 — Adding Logic to a Process

This exercise walks through the steps to check the Status bar in SAP to make sure it’s clear of errors or warning messages. Step 1.

180

Action Create a new process under the Utilities folder called UTL_Statusbar_Checking.

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

2.

Click the Steps tab.

3.

Right-click in the Steps tab and select New.

4.

Click the Application Version drop-down arrow and select SAP Core 1.0.

5.

Click the Window drop-down arrow and select SAP Main.

6.

Click the Object drop-down arrow and select sbar.

7.

Click the Action drop-down arrow and select Verify Property.

8.

At the bottom of the screen, in the Parameters tab, click the Property drop-down arrow and select Message Type.

9.

Click the Criteria drop-down arrow and select Is Equal To.

10.

In the Value field, type S. SAP has four statuses for its status bar: 

Green = Success (S)



Red = Error (E)



Yellow = Warning (W)



Blank (nothing)

Your screen should look like this:

Certify 8.6.0 Participant Training Guide

181

Lesson 4: How To…

Next, we want to add logic to the process. If the status bar is equal to “S”, we will pass and exit the process. If false, we want to skip (don’t fail it) and continue. This will allow the process to continue to check the status bar for other statuses. 11.

To add logic to the process step: a. Click the On True/On False tab. b. In the On True pane, click the Action drop-down arrow and select Exit Process. c. In the On False pane, click the Log Status As drop-down arrow and select Skipped. d. In the On False pane, click the Action drop-down arrow and select Continue.

Your screen should look like this:

12.

Add Step 2 to the process. This step will check for an error (or red status bar): a. Click the Parameters tab. b. In the Steps area, right click step #1 and select Insert Step Below.

The new step is created in the Steps area. The new step contains the values of the previous step. c. At the bottom of the screen, in the Parameters tab, In the Value field, type E.

Your screen should look like this:

182

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

Again, we want to add logic to the process. If the status bar returns an “E”, the test is done and we cannot continue. Therefore, we need to set On True to Fail and the action will Exit All to end the test. We need to set On False to Skip and the action to Continue so we can continue checking the status bar. 13.

To add logic to the process step: a. Click the On True/On False tab. b. In the On True pane, click the Log Status As drop-down arrow and select Failed. c. In the On True pane, click the Action drop-down arrow and select Exit All. d. In the On False pane, click the Log Status As drop-down arrow and select Skipped. e. In the On False pane, click the Action drop-down arrow and select Continue.

Your screen should look like this:

Certify 8.6.0 Participant Training Guide

183

Lesson 4: How To…

The next step is to check for a warning message (yellow). This will require a few steps. First, we will check for the “W” and if true, we will press Enter and recheck everything. To do this, we will add two steps which will be Labels (placeholders as they do not have any action tied to them). Label #1 will be titled “Recheck” and will be added at the beginning of the process. Label #2 will be titled “Press Enter” and will be added at the end of the process. 14.

To add labels to the process: a. Click the Parameters tab. b. Right-click step #1 and select Insert Step Above. c. Click the Application Version drop-down arrow and select System 1.0. d. Click the Window drop-down arrow and select System. e. Click the Object drop-down arrow and select Execution. f.

Click the Action drop-down arrow and select Label.

g. At the bottom of the screen, in the Parameters tab, In the Label Name field, type Recheck. h. Right-click the last step and select Insert Step Below. i.

Click the Application Version drop-down arrow and select System 1.0.

j.

Click the Window drop-down arrow and select System.

k. Click the Object drop-down arrow and select Execution. l.

184

Click the Action drop-down arrow and select Label.

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

m. At the bottom of the screen, in the Parameters tab, In the Label Name field, type Press Enter.

Your screen should look like this:

Again, we want to add logic to the process. If the status bar equals “W” the status will equal Passed, the Action will equal Jump, and the Target Step will equal Press Enter (this is populated from the labels we just created). If false, the process will be skipped. 15.

To add logic to the process step: a. Click step #4 (Warning step). b. Click the On True/On False tab. c. In the On True pane, click the Log Status As drop-down arrow and select Passed. d. In the On True pane, click the Action drop-down arrow and select Jump. e. In the On True pane, click the Target Step drop-down arrow and select Press Enter. f.

In the On False pane, click the Log Status As drop-down arrow and select Skipped.

g. In the On False pane, click the Action drop-down arrow and select Continue.

Your screen should look like this:

Certify 8.6.0 Participant Training Guide

185

Lesson 4: How To…

The last step is to press the Enter 16.

button and add logic to the button.

Add Step #7 to press Enter: a. Click the Parameters tab. b. In the Steps area, right click step #6 and select Insert Step Below. c. Click the Application Version drop-down arrow and select SAP Core 1.0. d. Click the Window drop-down arrow and select SAP Main. e. Click the Object drop-down arrow and select Enter. f.

Click the Action drop-down arrow and select [Press].

You can also use Certify LiveTouch and select the Enter

186

button.

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

Again, we want to add logic to the process to recheck the status bar after pressing . 17.

To add logic to the process step: a. Click step #7 (Press Enter). b. Click the On True/On False tab. c. In the On True pane, click the Log Status As drop-down arrow and select Passed. d. In the On True pane, click the Action drop-down arrow and select Jump. e. In the On False pane, click the Log Status As drop-down arrow and select Failed. f.

In the On False pane, click the Action drop-down arrow and select Exit All.

Your screen should look like this:

18.

Add Step to check for the blank status for the status bar: a. Click the Parameters tab. b. In the Steps area, right click step #4 and select Insert Step Below.

The new step is created in the Steps area. The new step contains the values of the previous step. c. At the bottom of the screen, in the Parameters tab, In the Value field, leave blank.

Your screen should look like this:

Certify 8.6.0 Participant Training Guide

187

Lesson 4: How To…

Again, we want to add logic to the process. If the status bar is blank, the test will pass and edit. Blank means there is nothing wrong with the test and we can keep testing. If false, the test will fail and exit all. This reason for this is because the test has something wrong. Usually, the test cannot see the status bar since there is a popup or something else is wrong. We would fail and exit the test since we did not account for the popup. 19.

To add logic to the process step: a. Click step #5 (Blank step). b. Click the On True/On False tab. c. In the On True pane, click the Log Status As drop-down arrow and select Passed. d. In the On True pane, click the Action drop-down arrow and select Jump. e. In the On True pane, click the Target Step drop-down arrow and select Recheck. f.

In the On False pane, click the Log Status As drop-down arrow and select Failed.

g. In the On False pane, click the Action drop-down arrow and select Exit All.

Your screen should look like this:

188

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

20.

Click the Save

21.

From the File menu, select Close to exit the Process Editor.

Certify 8.6.0 Participant Training Guide

button.

189

Lesson 4: How To…

Create Queries, Reports, and Charts Creating Queries and Reports Overview Certify provides the capability to create queries that collect, sort, and filter data that exists in a project. These queries are the foundation for decision support for your testing projects. Additionally, you can create charts and reports from these query results. You can save queries in a folder, and the queries can be run multiple times to show updated changes in your Certify project. Queries can be run against existing: 

Classes



Results



Processes



Users



Projects



Layouts



Applications

Depending on the query, detailed information relating to the query is displayed in the Details tab. For example, if a query is run against processes, process details are displayed in the Details tab.

Management Reports Certify provides pre-designed reports to help analyze the progress and status of projects, as well as the coverage of your test requirements. The project reports are based on the project that is currently open. The Requirement Coverage report is also based on the current project that is open. In addition, if you are in the Requirements window, you can run the report for a specific set of requirements.

190

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

EXERCISE 4.8 — Creating and Running a Query

This exercise walks through the steps to creating a query and then running the query. Step 1.

Action On the Navigation taskbar, click Reports.

The Reports window appears. a. In the Navigation tree, right-click Query and select New. b. Select Query.

The Query Definition dialog box appears.

c. Select the desired query definition. For this example, Process was selected. d. Click OK.

The New Query (Process) dialog box appears.

Certify 8.6.0 Participant Training Guide

191

Lesson 4: How To…

e. In the Name field, type the desired name for the query. f.

In the Description field, type a description of the query.

g. In the Process tree, double-click the desired item(s) you wish to display in the query.

Process Folder is added to the Display Columns tab. h. In the Process tree, continue selecting the desired items you wish to display in the query. i.

Once all the items are selected, click OK.

Your query is saved and the New Query dialog box closes. The query results appear in the Detail pane with the columns you selected. j.

To run the query:

a. In the Navigation tree, expand Queries. b. Select the desired query.

The query runs, and the results appear in the Detail pane.

192

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

EXERCISE 4.9 — Exporting and Importing a Query

Certify also allows you to export and import queries. This exercise walks through the steps to export a query to an .xml file and import back into Certify. To Export a query: Step 1.

Action On the Navigation taskbar, click Reports.

The Reports window appears. 2.

In the Navigation tree, expand Query.

3.

Right-click the desired query and select Export Query.

The Select Export file dialog box appears. 4.

Browse to the desired directory.

5.

Accept the default file name and click Save.

To import a query: Step 1.

Action In the Navigation tree, right-click Queries and select Import query.

The Select Import File dialog box appears. 2.

In the Look In field, browse to the path where you exported the query.

3.

Select the desired .xml file and click Open.

The query is imported with the name proceeded by (1). 4.

To rename the query:

5.

In the Summary pane, right-click the desired query.

A shortcut menu appears. 6.

Select Edit.

The Edit Query dialog box appears.

Certify 8.6.0 Participant Training Guide

193

Lesson 4: How To…

7.

In the Name field, type the desired name.

8.

Click OK.

The Edit Query dialog box closes.

EXERCISE 4.10 — Adding a Filter to a Query

You can use query filters to narrow the scope of your queries to get the appropriate data. You can choose to set up a Static or Dynamic filter using operators, operands, and prompts to create conditions for the filters using AND, OR, and NOT conditions. This exercise walks through the steps to adding a filter to a query. Step 1.

Action In the Reports window, right-click the desired query and select Edit.

The Edit Query dialog box appears.

2.

Click the Filters tab.

The Filters tab appears. 3.

194

In the Navigation tree, double-click the desired item you wish to display in the query. For this example, Folder was created.

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

In this example, Process Folder appears in the Filters tab.

4.

In the Filters tab, click the Static Filter option button.

5.

In the Operator field, select the equal sign (=) from the drop-down list.

6.

In the Operand field, type .

7.

Click OK.

There is now a filter for the query to generate the process status only for the processes in your folder. 8.

In the Navigation tree, click the desired query.

9.

View the query results in the Summary pane.

Certify 8.6.0 Participant Training Guide

195

Lesson 4: How To…

EXERCISE 4.11 — Creating a Chart

Charts provide a way to view your queries in a graphical format. You can create a pie, bar, column, or line chart. This exercise walks through the steps to creating a chart. Step

Action

1.

On the Navigation taskbar, click Reports.

2.

In the Navigation tree, right-click Chart and select New.

3.

Select Chart.

The New Chart dialog box appears.

4.

In the New Chart dialog box, type in filed values or select options as desired.

5.

Click the Query browse button

.

The Select Query dialog box appears.

196

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

6.

In the Navigation tree, click Queries.

7.

In the Summary pane, select the desired query.

8.

Click OK.

The query appears in the Query field. 9.

Continuing in the New Chart dialog box, type in filed values or select options as desired.

10.

In the tree view, under Process Status, drag Name to the area under Group By (X-Axis).

11.

In the tree view, under Process, drag Name to the area under Column (Y-Axis).

12.

Click OK.

The New Chart dialog box closes. 13.

To run the chart, in the Navigation tree, expand Charts.

14.

Select the desired chart.

The Chart displays in the Summary pane.

Certify 8.6.0 Participant Training Guide

197

Lesson 4: How To…

Running Management Reports Certify provides a set of reports to track the progress of your application’s test certification. Each report contains data for the project that is currently open. The available reports include the following: 

Project Progress Report — shows a trend of process statuses over a period of time.



Project Status Report — displays the status of all processes in the selected project.



Requirements Coverage Report — displays the current coverage of the requirements based on the status of requirements.

You run the management reports from the Projects window. Simply right-click the desired project and select Reports, as shown in Figure 1. Once you select the report you want to run, a dialog box appears where you can enter the name of the report and select other criteria’s. Figure 1 — Running Management Reports

198

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

Perform Administrative Functions Overview After Worksoft Certify is installed, the Certify Administrator adds users and groups and grants permissions, as well as creates projects and applications.

Creating Users and Groups A user is someone who has access to Certify and can carry out Certify tasks. As an administrator, it is your responsibility to set up new users and modify current users. To add or modify a user profile, you will access the Users and Groups area. The information entered for a new user includes the person's first name, last name, user name, email address, role of the person, password, settings, and assigned groups. Users are limited to specific tasks within Certify as defined by their individual or group-related permissions.

EXERCISE 4.12 — Adding a User and Granting Permissions

This exercise walks through the steps to defining a user profile and adding it to the Administrator group. To add a user: Step

Action

1.

On the Navigation taskbar, click Users & Groups.

2.

In the Navigation tree, right-click Users and select New User.

The New User dialog box appears.

Certify 8.6.0 Participant Training Guide

199

Lesson 4: How To…

3.

Type field values and select options as desired.

4.

Right-click anywhere within the Current Groups Containing User pane.

A shortcut menu appears. 5.

Select Add Group.

The Select Group dialog box appears. 6.

Select Administrator.

7.

Click OK.

The Administrative Group appears in the Current Groups Containing User pane. 8.

In the New User dialog box, click OK.

The new user is added as a user of Certify and a member of the default Administrators group.

200

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

To grant permission to the user profile: Step

Action

1.

On the Navigation taskbar, click Users & Groups.

2.

In the Summary pane, select the new user created.

3.

In the Detail pane, select the Permissions tab.

The new user permissions appear. This information is view only. Notice that there are no permissions selected at this point.

4.

Right-click anywhere with the Permissions tab.

A shortcut menu appears. 5.

Select Edit Permissions.

The User Permissions dialog box appears.

Certify 8.6.0 Participant Training Guide

201

Lesson 4: How To…

202

6.

Grant permissions as desired by clicking each checkbox beneath the Read, Write, and Execute columns or by clicking the “Select All” checkbox at the top of each list.

7.

Click OK to save the changes.

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

EXERCISE 4.13 — Adding Groups and Granting Permissions to Groups A group is a collection of users that perform similar Certify tasks or need similar access to Certify functions. This exercise walks through the steps to add a new group and add a user to the group, as well as grant permissions to the group. To add a group: Step

Action

1.

On the Navigation taskbar, click Users & Groups.

2.

In the Navigation tree, right-click Group and select New Group.

The New Group dialog box appears.

3.

Type field values as desired.

4.

Right-click anywhere within the Current Users in Group pane.

A shortcut menu appears. 5.

Select Add User to Group.

Certify 8.6.0 Participant Training Guide

203

Lesson 4: How To…

The Select User dialog box appears. 6.

Select the desired name.

7.

Click OK.

The user is added to the group you just created. 8.

Click OK to save the new group.

To grant permissions to the group: Step 1.

Action In the Navigation tree, click Groups.

The Summary pane displays the available groups. 2.

In the Summary pane, select the desired group.

3.

In the Detail pane, select the Permissions tab.

The groups current permissions appear. (This information is view-only.) 4.

Right-click anywhere within the Permissions tab and select Edit Permissions.

The Group Permissions dialog box appears. 5.

Grant Read and Write permissions as desired.

6.

Click OK. The permissions are added to the group.

204

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

Creating Applications and Versions In Certify, an application is the representation of a program or group of programs that you want to test. An application is also referred to as the application under test or AUT. Application definitions consist of a name and description, the version, the associated interfaces, and its share status. Applications can have one or more versions and be: 

Associated with one or more interface.



Shared across projects.

To create a project, you must set up at least one application. However, you can add other applications at any time. When adding an application, it is important that you provide a unique and identifiable title for the application because the title appears in all displays, lists, and reports. A version is a specific build or an application. When creating a version, you should: 

Specify a version ID, such as 1.0.



Describe the version.



Select the type of interface (i.e., SAP, HTML, Java, etc.)

The interface selection tells Certify the file type to read when importing a map for the application.

EXERCISE 4.14 — Defining an Application and Version

This exercise walks through the steps to defining an application and version. Step

Action

1.

On the Navigation taskbar, click Applications.

2.

In the Navigation tree, right-click Application and select New Application.

The New Application and Version dialog box appears.

Certify 8.6.0 Participant Training Guide

205

Lesson 4: How To…

3.

In the Application Details section, type in the Name and Description in the appropriate fields.

4.

In the Application Version Details section, in the Version field, type the version number (i.e., 1.0).

5.

In the Description field, type a description.

6.

In the Interfaces field, click the checkbox next to the desired interface.

7.

Click OK to save the application and version.

The new application displays in the Summary pane of the Applications window and in the Navigation tree.

206

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

Creating Projects With your application defined, you can now create a project and add the application you created to the project. You can also give users and groups access to the project. In Certify, a project is an organized collection of test assets (variables, processes, layouts, recordsets, requirements, and test results) that are defined for one or more application version. A project is considered the highest level of information in the Certify hierarchy as shown in the diagram. In the previous lesson, you defined an application and version. You can now add it to a project. You can also see in Figure 1 that a project can only have one set of test assets. These can be shared by multiple applications contained in a project. Figure 1 — Worksoft Certify Project Structure

Only selected mapped objects are shared between projects but not variables, data, or processes. For example, Project_B cannot see nor use anything created in Project_A. Administrators have permission to create and modify projects. Projects are created in the Projects area. You can also set permissions to a project and give users and groups access to projects. Only those with read or write access can open the project.

Certify 8.6.0 Participant Training Guide

207

Lesson 4: How To…

When multiple projects exist in a database, you can switch between projects without having to log out and log back into Certify. You can only have one project open at a time. When a project is open, the project name displays in the status bar.

EXERCISE 4.15 — Creating a Project and Adding Users

This exercise walks through the steps to creating a project and adding users to the project. To create a project: Step

Action

1.

On the Navigation taskbar, click Projects.

2.

In the Navigation tree, right-click Projects and select New Project.

The New Project dialog box appears.

3.

208

Type in the Name and Description in the appropriate fields.

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

The Notes field is an optional field. Notes can provide current communication regarding the project, such as upcoming deadlines and project changes. 4.

In the Application Versions field, click the checkbox next to the desired application version

5.

Click OK to save the changes.

The new project is saved and now displays in the Navigation tree under Projects and in the Summary pane. To grant user and group permissions to the project: Step

Action

1.

From the Projects window, in the Summary pane, click the desired project.

2.

In the Detail pane, click the Permissions tab.

3.

Right-click anywhere within the Permissions and select Edit Permissions.

The Permissions dialog box appears. 4.

Right-click anywhere within the Permissions and select Add User/Group.

The Select User/Group dialog box appears. The list contains both individual users and groups. 5.

To make multiple selections, hold down the key and select from the list

6.

Click OK.

The Select User/Group dialog box closes, and the Permissions dialog box reappears with the newest members added to the list. 7.

In the Permissions dialog box, select the Write and Execute checkboxes for the added user and groups

8.

Click OK to save the change.

Certify 8.6.0 Participant Training Guide

209

Lesson 4: How To…

Define State Processes Overview With a project in Certify and application maps imported, you are ready to begin adding processes. The first processes entered will be State processes or those processes executed prior to or after a set of processes for an application test. If you are an administrator, this will probably be your main contact with processes. Processes are business functions or user tasks that are supported by the application(s) being validated. A process in Certify is a test that you wish to perform against your application. The process is made up of steps, such as entering data values, pressing keys or buttons, as well as verifying results like field values, object states, or messages. In Certify, processes are defined, developed, and executed in the Processes window and Process Editor. This is usually a task performed by everyday users of Certify. However, you will learn a specific type of process called a state process. State processes are those used by the execution engine to load and unload the application, log in and log out of the application, or terminate the application. These processes are created similarly to other processes; however, they are marked as state processes so that they can be executed automatically during specific times during test execution. In some cases, you may determine that these processes are not necessary or not desired for testing your application. However, it is important to learn how they can be used. In Certify, you can add two state processes for an application version: 

Start Process



End Process

This may sound limiting until you realize that each “state process” can contain one or more “steps.” For example, your “start” process may include steps to launch a program, enter data for login, and click a button, the series of which puts the application into position for the first test to execute. An administrator’s initial responsibility with processes is to determine whether or not state processes will be used. Once this decision is made, the administrator can then begin defining the state processes for the application under test. Table 1 displays a list of all state processes

210

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

Table 1 — State Processes Behavior

Process Name

Behavior

Start Process

The first time an application version is encountered during execution, Certify checks to see if a start process exists for the application version. If the application version does not have a start process, Certify assumes that you have the application already in context and will attempt to execute the first step in the process. If the application version has a start process for loading the application version, Certify will execute the steps in the start process before executing the steps in the selected process. You can control whether or not the start process is run by checking the application version "already in context" checkbox in the Configuration dialog box. If the "already in context" checkbox is not checked, Certify runs the start process that you created for the application version. If the "already in context" checkbox is checked, Certify will ignore the start process and only execute the steps in selected process.

End Process

The end process is automatically run by Certify at the end of process execution as a cleanup process. If the application version does not have an end process, Certify assumes that the selected process will have a step to exit the application version, or that you will manually exit the application version. End processes are run for all application versions encountered during execution that have an end process defined. You can control whether or not the end process is run by checking the application version "already in context" checkbox in the Configuration dialog box. If the "already in context" checkbox is not checked, Certify runs the end process that you created for the application version. If the "already in context" checkbox is checked, Certify will ignore the end process and only execute the steps in selected process.

Certify 8.6.0 Participant Training Guide

211

Lesson 4: How To…

EXERCISE 4.15 — Defining the Start Process and Adding Steps

This exercise walks through the steps to creating a Start process for the SAP Order to Cash transaction and adding the steps required to carry out the Start process during test execution. Step

Action

1.

On the Navigation taskbar, select Processes.

2.

In the Navigation tree, click the plus sign next to folder.

3.

Click the plus sign next to the Sandbox folder and .

4.

Select your process. For this example, OTC_StandardOrderProcess.

5.

Right-click in the Summary pane and select New Process.

The Process Editor appears. This is where you will define your processes and add the steps using the SAP windows and objects you imported with the application maps. 6.

Give the start process a name and description: a. In the Process section, in the Name field, type SAP Load. b. In the Description field, type Loads the SAP application.

7.

Add a step to the process to open the SAP application: a. Click the Steps tab. b. Right-click in the Steps area and select New. c.

Click the Application Version drop-down arrow and select System 1.0.

d. Click the Window drop-down arrow and select System. e. Click the Object drop-down arrow and select Operating System. f.

Click the Action drop-down arrow and select Execute Application.

The Execute Application step is created in the Steps area. g. At the bottom of the screen, in the Parameters tab, in the Application field, click the Select File icon.

The Select File dialog box appears.

212

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

h. In the Look In field, browse to locate the following folder to locate the SAP GUI executable file: C:\Program Files\SAP\FrontEnd\SAPgui i.

IN the File Name field, select the file sapshcut.exe.

j.

Click Open.

The File path appears in the Application field. k.

Verify that the Wait for Application to Finish checkbox is unchecked (set to false).

l.

In the Command Line field, type the command. An example is: -sysname="SAP Worksoft" -client=300 -max -user=student12 pw=password

The Execute Application step is created in the Steps area 8.

Add a step to the process to open the SAP application: a. Right-click in the Steps area and select New. b. Click the Object drop-down arrow and select Execution. c.

Click the Action drop-down arrow and select Wait.

d. In the Parameters tab, in the Delay field, type 10.

The Execution Wait step is created in the Steps area. 9.

Click the Save

10.

From the File menu, select Close to exit the Process Editor.

button.

The SAP Load process is added to the Summary pane of the Processes window.

Certify 8.6.0 Participant Training Guide

213

Lesson 4: How To…

EXERCISE 4.16 — Defining the End Process and Adding Steps

This exercise walks through the steps to creating the End process for the SAP application and adding the steps required to carry out the end process during test execution. To define the SAP Exit process: Step

Action

1.

On the Navigation taskbar, select Processes.

2.

Right-click in the Summary pane and select New Process.

The Process Editor appears. Once again, this is where you will define your processes and add the steps using the objects you imported with the application maps. 3.

Give the start process a name and description: a. In the Process section, in the Name field, type SAP Exit. b. In the Description field, type Clicks on the Edit button.

4.

Add a step to the process to log out of the SAP application: a. Click the Steps tab. b. Right-click in the Steps area and select New. c. Click the Application Version drop-down arrow and select the desired version. d. Click the Window drop-down arrow and select SAP Main. e. Click the Object drop-down arrow and select Log off (Shift+F3). f.

Click the Action drop-down arrow and select Press.

The Press Exit step is created in the center Steps area. No modifications to this step are necessary. 5.

From the File menu, select Close to exit the Process Editor.

The Save dialog box appears. 6.

Click Yes.

The SAP Ex it process is added to the Summary pane of the Processes window.

214

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

To define the SAP Close process: Step

Action

1.

On the Navigation taskbar, select Processes.

2.

Right-click in the Summary pane and select New Process.

The Process Editor appears. Once again, this is where you will define your processes and add the steps using the objects you imported with the application maps. 3.

Give the start process a name and description: c. In the Process section, in the Name field, type SAP Close. d. In the Description field, type Closes the SAP application.

4.

Add a step to the process to confirm logoff of the SAP application: a. Click the Steps tab. b. Right-click in the Steps area and select New. c. Click the Application Version drop-down arrow and select the desired version. d. Click the Window drop-down arrow and select Log OFF. e. Click the Object drop-down arrow and select Yes. f.

Click the Action drop-down arrow and select Press.

The Press Logoff step is created in the Steps area. g. At the bottom, click the On True/On False tab.

The On True/On False fields appear. h. In the On False pane, type in field values or select options as follows: Field/Option

Value/Action

Log Status As

Select Passed

Action

Select Execute Process

Process

Select the Select Existing Process icon. The Select Process window appears. In the Summary pane, select SAP Exit. Click OK.

Target Step

Select First Steps

Retry Count

Type 5

Certify 8.6.0 Participant Training Guide

215

Lesson 4: How To…

5.

Add a step to the process to close the SAP Logon Pad: a. Right-click in the Steps area and select New.

A new step is created in the Steps area. b. Click the Application Version drop-down arrow and select System 1.0. c. Click the Window drop-down arrow and select System. d. Click the Object drop-down arrow and select Operating systems. e. Click the Action drop-down arrow and select Input DOS command. f.

In the DOS Command field, type taskkill /F /IM saplogon.exe.

The Input DOS Command step is created in the center Steps area. 6.

From the File menu, select Close to exit the Process Editor.

The Save dialog box appears. 7.

Click Yes.

8.

The SAP Close process is added to the Summary pane of the Process window.

You now have a process to open the application so other processes can run and one to log out of SAP GUI and log off the SAP application when processes have finished running.

216

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

EXERCISE 4.17 — Executing the State Process – SAP Load

You now have your state processes defined; however, before adding the State processes to the application version, you should verify that the steps you created work correctly. You can do this by executing the process and reviewing the results. Once completed, you will have an opportunity to view a summary of the execution results for the process and validate that the process was successful. This exercise walks through the steps to executing the Start process you just created. After executing, you will review the results to verify the steps ran correctly. Step

Action

1.

On the Navigation taskbar, select Processes.

2.

Right-click in the SAP Load process and select Run.

The Configuration dialog box appears. 3.

Leave the setting as they are and click Start.

The Execution dialog box appears. 4.

Click Run.

When the process has finished, the Result Viewer appears with the status. If your process failed, see “Possible Reasons for State Process Failure” on the next page to troubleshoot, The sample application doesn’t close automatically. Leave it open for the next exercise so that the Close process can close it.

5.

Click the red

Certify 8.6.0 Participant Training Guide

in the top right corner to close the Result Viewer.

217

Lesson 4: How To…

EXERCISE 4.18 — Executing the State Process – SAP Close

This exercise walks through the steps to executing the End process you just created. After executing, you will review the results to verify the steps ran correctly. Step

Action

1.

On the Navigation taskbar, select Processes.

2.

Right-click in the SAP Close process and select Run.

The Configuration dialog box appears. 3.

Leave the setting as they are and click Start.

The Execution dialog box appears. 4.

Click Run.

When the process has finished, the Result Viewer appears with the status. 5.

Click the red

in the top right corner to close the Result Viewer.

Possible Reasons for State Process Failure

218



Incomplete process (steps are needed)



Path to application is wrong (i.e., application that the State process was assigned to was not called by any steps)



An error in one or more of the process steps



Action used to load or close the application is wrong



Application may already be loaded

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

EXERCISE 4.19 — Adding State Processes to an Application Version After defining, developing, and verifying state processes, you must add them to the application version so the processes run automatically. The Start process will automatically launch the application each time a test is started. The End process will close the application once the process is complete. This exercise walks through the steps to adding the State and End processes to the SAP Order to Cash application in the SAP Test project. Step 1.

Action On the Navigation taskbar, select Projects.

The list of projects displays in the Summary pane. 2.

In the Summary pane, select .

3.

In the Detail pane, click the Application Version tab.

4.

Right-click SAP Core 1.0.

A shortcut menu appears. 5.

Select Edit State Processes

The Edit State Processes dialog box appears.

6.

For Start Process, click the Browse button

.

The Select Process dialog box appears. 7.

Click the plus sign next to , Sandbox, and .

8.

Select your desired process. For this example, OTC_StandardOrderProcess.

9.

Select the SAP Load process.

Certify 8.6.0 Participant Training Guide

219

Lesson 4: How To…

10.

Click OK.

The Edit State Processes dialog box reappears with the Start Process field displaying SAP Load. 11.

For End Process, click the Browse button

.

The Select Process dialog box appears. 12.

Click the plus sign next to , Sandbox, and .

13.

Select your desired process. For this example, OTC_StandardOrderProcess

14.

Select the SAP Close process.

15.

Click OK.

The Edit State Processes dialog box reappears with the End Process field displaying SAP Close. 16.

220

Click OK to save the changes.

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

Define Naming Conventions Overview It is wise to invest the time to develop and follow a process naming convention. As test volumes expand and assets are transferred among users, naming conventions help to promote reuse and reduce confusion. Ideally, names are descriptive enough that their purpose and use is immediately clear and external documentation is not needed.

Naming Conventions for Variables 



Named same as the field it represents 

Format:

Variable names will closely resemble field names



Example:

Order Type Ship-to-party Exp.Date (ex.: if field is “Expiration Date” then mark use of Exp. Date rather than create a new variable)

If a field needs more than one variable ex.: Req. deliv.date), then delimit the variable with a _VariantName. 



Example:

Req. deliv.date_Format Type Req. deliv.date_Date

If a variable needs to be assigned more than one value at the same time, for example for comparison purposes, then the same variable name should be used with a ‘#’ to indicate that it indeed is a necessary variable and not a duplicate of an existing variable. 

Example:

Customer#1 is not equal to Customer#2 (from a table or grid)

Transaction Code/Component or Unit Test Process 

Transaction codes (Tcodes) or components are capitalized.



Separate descriptions by an underscore ( _ ).



Remove spaces from descriptions and capitalize the first letter or each word. 

Format:

TCode_Description1_Description2_Desciption3 Component_ComponentDescription



Example:

VA01_CreateStandardOrder_SingleItem VA01_CreateStandardOrder_MultipleItems WebOrder_SelectionPane

Certify 8.6.0 Participant Training Guide

221

Lesson 4: How To…



If a process uses a child process to work with a multi-element object such as a table or grid it should be extended with the parent process name +, _C , + additional description. 

Example:

VA01_CreateContractOrder_MultipleItems VA01_CreateContractOrder_MultipleItems_C_TableInput

Human Resource Design Information Type Addition to Naming Convention: For transactions that encapsulate functionality (for example HR transactions such as PA30 and PA40), it is best to subdivide processes further than the transaction level. For HR transactions, the use of Info Types is recommended for naming and defining processes. HR processes may also be grouped by Country or State (e.g. CA for Canada or CA for California). Format: Transaction_IT__ Examples: PA40_IT0068_GarnishmentCompensation_CA PA40_IT0068_NewInitialBalance PA40_IT0071_PensionFunds_GB

Integrated or End-to-End Process 

Separate test names and descriptions by an underscore ( _ ).



Remove spaces from descriptions and capitalize the first letter of each word.



Integrated Processes contain only calls to other processes and Comments. 

Format:

ApplicationArea_Description1_Description2_Description3



Example:

O2C_ShipBill_ConstantQuote CRM_CustomOrder_ProcessThroughSAP WebOrder_FromBrowser_ToSAP_ToMainframe

Data Layouts 

Named exactly as the Process Name



Variant Layouts will have the same name as the Process name plus identifier. 

Format:

Layout Name = Processes Name (not test case name)



Example:

Process Name = VA01_StandardOrder Layout Name = VA01_StandardOrder Process Name = MM01_CreateMasterData Layout Name = MM01_CreatemasterData

222

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

Integrated Test Name = O2C_ShipBill_ContractQuote Layout Name = O2C_ShipBill_ContractQuote 

Highlight the Certify Process name while in the process data editor, then use the copy function. When creating the record layout paste the copied process name into the layout name field.



Provide a description, if needed.



Most Certify processes have only one layout associated with it. However, there may be a need to have more than one. In this case, use the same name as the original layout and add a variant identifier. 

Example:

Process Name = MM01_CreateMasterData Primary LayoutName = MM01_CreateMasterData Secondary Layout Name = MM01_CreateMasterData_3rdPartyData

Recordsets 

Recordset names will, in most cases, match the Client test case or test scenario name being created.



Any number of recordsets are possible for any given test. 

Format:

Test Case Name_Purpose



Example:

Process Name = VA01_StandardOrder Layout Name = VA01_StandardOrder Recordset Name = StandardOrder_InternationalCustomers Recordset Name = StandardOrder_NationalCustomers Integrated Test Name = O2C_ShipBill_ContractQuote Layout Name = O2C_ShipBill_ContractQuote

Certify 8.6.0 Participant Training Guide

223

Lesson 4: How To…

Use Worksoft Lights Out Testing (WLOT) Methodology Worksoft Lights Out Testing Worksoft Lights Out Testing (WLOT) provides the ability to execute a battery of integrated tests at predetermined times. These tests will be re-runable and will be based on exception reporting, requiring manual intervention only if the test fails. These tests can be scheduled at pre-determined times and will leverage: 

Off-hour bandwidth



Use of infrastructure and personnel for other tasks



Elimination of manual validation and audit

Candidates Good candidates for WLOT are business critical end-to-end tests that cross functional areas. Some test characteristics are not suitable for WLOT and they include: 

Integrated tests cases that stop and display a dialog or manual step action.



One -off test cases.



Tests that don’t have a pre-determined result. These would include tests which cause SAP to pop warnings regarding invalid data.

Prerequisites for Worksoft Lights Out Testing Good candidates for WLOT are business critical end-to-end tests that cross functional areas. Some test characteristics are not suitable for WLOT and they include:

224



A workstation, VM/Remote server, or a VM server with multiple VM images (server farm or cloud) capable of supporting Certify



Licensed copy of Certify on each VM image



Availability of the AUT (ex: SAP client)



The Certify process can successfully start, login, and close the AUT

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…



Hardware meets the minimum requirements for Certify (see Requirement Documentation for current version of Certify)



Hardware does not automatically go into sleep, hibernation, or screen saver mode after a certain time of inactivity



A task scheduler is available with appropriate security



The test ID’s have the proper security to execute the test and any ancillary actions (such as writing a file to a folder, kicking off a batch program, etc.)



No manual interactive actions exists in the Certify process



Data is sufficient to fully execute the test

Issues and Concerns using WLOT 

Since Certify uses the video buffer to extract screen shots, if a screen saver is enabled or another application is in the foreground, you will not get the correct screen image. This may also occur due to the inactivity timer based on keyboard or mouse movement. See WLOT environment section before regarding 3rd party tools to help alleviate this issue.



Windows built-in task scheduler does not have the ability to control when a test is kicked off based on conditions – only scheduled time. Example: If you schedule Process A to kickoff at 8pm and Process B at 10pm, and if Certify is not done executing Process A before 10PM Process B will not be executed (only one running instance of Certify is allowed in the user space).



If a Certify Process contains the action EXIT ALL as a step and is triggered by the process, Certify will end the WLOT test. If this process appears within a group of process (IE. A WLOT test is created in Certify that contains a list of Integrated Test process) - *NO* other test will run as the entire batch is canceled See the Helpful Idea section for more information on the 2nd and 3rd bullets.

Certify 8.6.0 Participant Training Guide

225

Lesson 4: How To…

WLOT Physical Environment Requirements

WLOT Architecture Virtual Server Requirements: Minimum Certify Client requirement or recommended memory of Virtual Machine manufacture – which ever is greater Enough disk space for software installation and temporary files

Trigger Certify LOT process with Video and keyboard/mouse activity

VNC Client (viewer) & PsExec Client

Server Software Requirements: Virtual Machine of choice (Citrix, VMWare, Windows RDS, etc) Certify Client VNC Server (as a service)

VM/Remote Server(s) (or cloud of Virtual Machines)

Standard Model PC Standard Windows (such as XP, Vista/Win 7 512 memory 250 mb Disk space free Always on

Upload Certify Test process Review Results of LOT test

Certify Client

Suggested 3rd Party Tools 

PsExec is a remote execution tool that lets you execute processes on other systems without having to manually install client software (agentless). It is available from Microsoft at: http://technet.microsoft.com/en-us/sysinternals/bb897553.aspx



RealVNC is a graphical desktop sharing system that uses the RFB protocol to remotely control another computer. It transmits the keyboard and mouse events from one computer to another. It will relay the graphical screen updates back in the other direction via the network. It is available at: http://www.realvnc.com/products/download.html

This tools ( or like tools) are needed to keep the Windows Video Buffer active (so Certify can take requested screen shots) as well as Keyboard Activity (so buttons on certain AUT work properly ) and Mouse Activity (so Windows does not enact the inactivity event).

226

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

VNC Client (Viewer) & PsExec Machine This machine is used to control and display the virtual machine screen.

Requirements Hardware 

Standard or low end PC (such as a decommissioned desktop)



Standard Window (such as XP, Vista/Win 7)



512 memory or more



250 MB or more Disk space free



Always on

System: 

Must be logged on



RealVNC Viewer



PsExec



Has a batch file to kickoff remote execution of Certify tests on remote virtual machine This batch file is used to talk to the VNC Service on the Virtual Machine and is not the same .BAT file used to execute Certify. The VNC Server applet will point to and execute the Certify WLOT.BAT process. See example below of the VNC client .BAT file (Batch file example).

Batch file example: start "C:\Program Files\RealVNC\VNC4\vncviewer.exe" virtualConfig.vnc psexec -i -d -p devgolden -u VMSERVER\admin \\ VMSERVER "C:\Documents and Settings\Admin\Desktop\Dev Automation Certify_LOT.bat" Psexec Reference example: psexec -i -d -p -u < Process to be executed on remote virtual machine> Execution Test Processes with the VNCView (client): When ready to execute tests on virtual machines, fire the execution batch file on the physical machine. Multiple simultaneous virtual test executions can be running on multiple virtual machines all started from one physical machine.

Certify 8.6.0 Participant Training Guide

227

Lesson 4: How To…

Virtual Machines Requirements: Hardware: 

16 GB memory (or recommended memory of Virtual Machine manufacture)



Enough disk space for software installation and temporary files PsExec

Software:

228



Virtual Machine of choice (Citrix, VMWare, Windows RDS, etc.)



Certify Client



VNC server



Certify Client



Auto login enabled



Screen Saver disabled

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

Exporting the Test Process to a .BAT File Certify allows you to export any Process to a Microsoft batch file (.BAT) that can then be executed by double-clicking on the file name from Windows explorer or DOS prompt. The file can also be used by a scheduler to kick off test runs at predetermined times and days.

To create a .BAT file from within Certify: 

Open the Process module.



Open the folder containing the Test process.



Right-click the Certify process and select Run. Configuration screen appears.



Change the setting as outlined below.

Certify 8.6.0 Participant Training Guide

229

Lesson 4: How To…

Saving the .BAT Files: Click on the Export button and navigate to the folder containing Certify batch files.

230

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

Edit the Batch File: Certify exports the .BAT file expecting the user would execute the process by supplying command line arguments during execution. However, in order to use this batch file without line arguments (such as in Lights Out Testing) you will need to change the command line argument place holders with the actual values as they would have been supplied at runtime. To run this command from a command line you would to the following START -> Run -> Cmd >CD “Folder containing batch file” >BatFileName.bat dbo P@$$word CertifyUser C3rt1y Where:

Dbo = Certify SQL DB user (normally sa or dbo) P@$$word=sa or dbo password CertifyUser=login account into Certify C3rt1y=Password for Certify

Certify 8.6.0 Participant Training Guide

231

Lesson 4: How To…

Modifying the .BAT File: Remove the command line argument, test and replace the argument placeholders with actual values.

232

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

File should look similar to the screenshot below.

Certify 8.6.0 Participant Training Guide

233

Lesson 4: How To…

Modify the parameters so that the batch file will run without user intervention as outlined below.

File should now look like the screenshot below.

234

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

Replace the user (%3) and password (%4) with the actual Certify users’ credentials.

File should look like the screenshot below.

Certify 8.6.0 Participant Training Guide

235

Lesson 4: How To…

Finally modify the title if you want to have the results stand out from a user’s executed run (optional).

236

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

Executing Batch Files Manually Double-click on the .BAT file and if all the credentials have been set up correctly Certify will pop up a DOS Command window and display the steps being executed.

Troubleshooting If the window just flashes and disappears the most common reason for failure normally is syntactical, such as misspelled password (case matters), or missing quotes around the data arguments (like “Title”, etc.).

Certify 8.6.0 Participant Training Guide

237

Lesson 4: How To…

Execute the Batch File — Scheduled Note: this is an example using the Windows built-in task scheduler. Refer to the user’s guide if a 3rd party scheduling tool is used instead. Once the batch file is proven out manually, it can be added to a scheduler. Most windows based platforms have the rudimentary Task Scheduler installed and can be used to kick off Certify batch processes. The MS Task Scheduler is just a timer that kicks off a task when a certain date and/or time occur. It cannot determine the status of a prior execution that could impact the next operation ( Example: Process A kicks off at 8pm but unless it finishes satisfactory Process B should not execute – however MS Task Scheduler will kick off Process B regardless) To set up a schedule follow these steps: 1. Click Start on the MS windows task bar. 2. Select All Programs.

238

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

3. Select Accessories.

Certify 8.6.0 Participant Training Guide

239

Lesson 4: How To…

4. Select System Tools.

240

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

5. Select Task Schedule.

Certify 8.6.0 Participant Training Guide

241

Lesson 4: How To…

Execute the Batch File — Setting up a Schedule 1. Click Add Scheduled Task.

2. Click Next to start the wizard.

242

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

3. Click Browse.

4. Open the folder containing the Certify Batch files exported.

5. Open the batch file that will be schedule.

Certify 8.6.0 Participant Training Guide

243

Lesson 4: How To…

6. Select the schedule and click Next.

7. Enter the criteria for the selected schedule (Note: each screen will be different depending on the prior selection), and then click Next. The example below was based on the monthly schedule

244

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

8. Enter the Windows login account information (Note: this is the user account needed to log into the workstation – not Certify).

9. Click Finish. After the schedule is executed, the results can be viewed in Certify under Results.

Certify 8.6.0 Participant Training Guide

245

Lesson 4: How To…

Helpful Design and Execution Tips 

Create Certify STATE processes to START and END the AUT. This will assure that the application is started correctly, logged in, and exits correctly between scheduled WLOT -OR-



Add the Certify Process to start/login to the AUT in the front of each integrated test as well as the Certify integrated test that will logoff/close the AUT as the last step in the integrated test that will be created as a .BAT file



Ex: Integrate test that will be generated into a .BAT file: 1. Execute Process Start_Login_ToSAP 2. Execute Process … 3. Execute Process … Execute Process Logoff_Close_SAP



Data issues are normally the biggest problem in running test successfully unattended. Either assure data readiness for all WLOTs or create Certify data preparation processes that will normalize data prior to the test executing.



Ex: : Integrate Test that will be generated into a .BAT file: 1. Execute Process Start_Login_ToSAP 2. Execute Process M1B1_AddStock 3. Execute Process OTC_CreateStandard

246



Use EXIT ALL carefully if a process will be used in a WLOT bat file. If that action is triggered – all remaining test will not be executed. Either make use of the Execution Rule option or build in a different Exit strategy



One way to make use of Exit All in a group of Processes is to ‘stack’ the processes in a single scheduled .BAT file (Note: inside the actual .Bat File – not within a Mega Certify Process – see next item)

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…



Ex: WLOT.BAT file:

: This Process will execute PM_Procurement_ZSPR_MM009 that contains EXIT ALL

Certify.exe /DBServer="wssqldev02\wssqldev2005" /DBName="MasterContent _841178" /title="PM_Procurement_ZSPR_MM009 - 2/10/2010 1:33:35 PM" /stepdelay=0 /Process="4. SAP Project\PM_Procurement_ZSPR_MM009" /screencapturemode=CaptureDeskTop /capturescreenon=CaptureFailedSteps /Project="Client Project Name" /logstepmode=LogAllSteps /Attribute="QC TestName|" /Attribute="QC TestRun|" /Attribute="QC TestSet|" /UseCertifyConfig /user="BatchUser" /password="BatchPassword" : This Process will execute PM_Procurement_ZSPR_MM010 next – regardless of the results from above Process Certify.exe /DBServer="wssqldev02\wssqldev2005" /DBName="MasterContent_ 841178" /title="PM_Procurement_ZSPR_MM009 - 2/10/2010 1:33:35 PM" /stepdelay=0 /Process="4. SAP Project\PM_Procurement_ZSPR_MM010" /screencapturemode=CaptureDeskTop /capturescreenon=CaptureFailedSteps /Project="Client Project Name" /logstepmode=LogAllSteps /Attribute="QC TestName|" /Attribute="QC TestRun|" /Attribute="QC TestSet|" /UseCertifyConfig /user="BatchUser" /password="BatchPassword" 

Schedule multiple tests with enough time between them in case a WLOT test run is taking longer than anticipated. If the Certify process normally takes 1hr to run if manually executed – allow 1:30 or 2:00 hrs for its start time before the next test is executed.



Scatter the integrated tests to execute across multiple Virtual Machines to avoid the possibility of crossing over into the next business day. VNCView can schedule the kickoff of many tests across many VM machines



Screen images rely on the remote server thinking that it’s active – as if someone is logged on and actual interacting with an application. In a WLOT environment this can be handled correctly by tools such as RealVNC & PsExec (or similar tools).

Certify 8.6.0 Participant Training Guide

247

Lesson 4: How To…

Use the SAP Learn Utility Application Maps Overview After creating your project and application, you are now ready to learn the application to create and prepare the application maps. You will learn about application maps and using the SAP Learn utility. To automate the testing process, Certify has to understand the contents of the application under test. To gather application contents, you use a utility provided with Certify. This utility learns or maps the application and creates an application map. An application map is an inventory of an applications component, including: 

Application version — the release or build of an application



GUI content — window, page, screen, database table, API, or XML message



GUI elements — object, control, field interface, element, or other class



Type of object class



Identification parameters _ name, handle, ordinal, index, schema, or other identifying information

The application map serves as the link between the application under test and the Certify processes. Once you have the application map, you save it to a file and import it into a Certify project. From there, you can edit the map, if needed, and begin adding processes, variables, and data to build your automated test. Because each application map is unique, you can compare a previous map version with new versions of the application. Any changes can be cross-referenced to all affected properties in Certify. For example, if a field or object is modified in a later version, Certify performs impact analysis and identifies all processes that refer to that field or object and modifies all test steps affected by the changes. The test can be reused without totally rebuilding it for the new application version.

Creating Application Maps The Learn utility for creating SAP application maps is the Certify SAP Learn utility application. The Certify SAP Learn utility maps the windows and objects used in the SAP application and stores each object type and its attributes in application maps. Once the windows and objects of a transaction screen are learned, the Certify SAP Learn utility displays them in a tree view format. From here, you can evaluate what was learned, view object properties, and

248

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

modify object names to control what is learned and saved in the map file. Application maps should be created for each screen in the transaction you are learning. Many SAP windows require multiple maps to fully cover the window content. The maps represent the program and screen number tied to the screen you are learning.

Certify SAP Learn Overview The Certify SAP Learn utility is a separate application and is installed subsequent to the Certify client installation. Figure 1 shows the Certify SAP Learn utility user interface with callouts to important features. This view occurs after the learning but before the map file is saved. Figure 1 — Certify SAP Learn Utility Window Features

Certify 8.6.0 Participant Training Guide

249

Lesson 4: How To…

Menu Bar The SAP Learn men bar provides five options: 

File — allows you to save all objects in the Learned Objects tree in one single map, create a map file for each sub-screen, create a map of a sub-screen that you selected in the Learned Objects tree, and exit the utility.



Learn — displays a list of all running SAP screens that can be learned.



Tools — provides options to display your SAP system properties and save a map for a dynamic window that is used by SAP.



Options — allows you to include the main toolbar objects in your map file, include the status bar objects in your map file, and include the table objects in your map file.



Help — provides comprehensive Certify SAP Learn Online help, and displays version information about SAP Learn and other important SAP files.

Toolbar Button The SAP Learn toolbar provides quick access to the HoverFind feature. Button

Name

Description

HoverFind

Allow you to hover over an application and find the Learned Objects tree.

Learned Objects Pane When a screen of an SAP application is learned, the learned objects are displayed in the SAP Learned Objects pane. The first object in the tree is the name of the screen from the title bar of that screen. By default, the name of the screen is also used as the name of the screen map when it is imported into Certify. The remaining parts of the Learning Objects Tree pane are the containers and/or objects located on the screen you learned. If you click on an object on the screen, the selected object is highlighted on the SAP screen. The objects are shown in a tree in either green or red: 

Green — object is enabled. When the map is imported into Certify, this object appears in the list of objects in the Process and Data Editor to test.



Red — object is excluded and will not be imported into Certify.

By right-clicking on an object, you can rename an object; undo rename, display the Certify properties for the selected object; display the properties and methods of the selected object; save the selected subscreen; and copy attribute strings.

250

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

Properties Pane The properties of an object in the Learned Object Tree pane are listed in the Properties pane (the rightside of the screen). All fields are non-editable.

EXERCISE 4.20A — Launching the Learn Utility

In this exercise, you will launch the Certify SAP Learn utility. Step 1.

Action In Certify, on the Menu bar, click Tools.

A drop-down list appears. 2.

Select Certify Interface Learn.

Another drop-down list appears.

3.

Select SAP.

The Certify SAP Learn application appears.

Certify 8.6.0 Participant Training Guide

251

Lesson 4: How To…

4.

Proceed to Exercise B.

EXERCISE 4.21 — Launching the Sample Application

In this exercise, you will launch SAP and access the Create Sales Order: Initial Screen window. This window will also be used in a later exercise. Step

Action

1.

On your desktop, locate the SAP Logon shortcut icon.

2.

Double-click the SAP Logon shortcut icon.

The SAP Logon Pad appears.

252

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

3.

Select the appropriate SAP system (provided by your instructor) and then click Log On.

The SAP Logon window appears.

Certify 8.6.0 Participant Training Guide

253

Lesson 4: How To…

4.

Fill out the appropriate information.

5.

Click the green checkmark

or press .

SAP launches.

254

6.

In the Command field, type VA01.

7.

Click the green checkmark

or press .

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

The Create Sales Order: Initial Scree appears.

8.

Type in filed options.

Do not close this window. You will continue from here in the next exercise.

Certify 8.6.0 Participant Training Guide

255

Lesson 4: How To…

Mapping the Sample Application With the Learn utility ready and the application open, you can begin the mapping process.

EXERCISE 4.22 — Learning the Create Sales Order: Initial Screen Window In this exercise, you will learn the Create Sales Order: Initial Screen window. Step

Action

1.

Verify that both the Certify SAP Learn utility and the Create Sales Order: Initial Screen window are open and in view.

2.

On the Certify SAP Learn menu bar, click Learn.

A drop-down list appears with the running SAP window.

3.

Click the SAP window from the drop-down list. In this example, Create Sales Order: Initial Screen.

The SAP Learn application processes to learn the SAP window. Once complete, SAP Learn displays the windows and object information for the Create Sales Order: Initial Screen window. 4.

In the Learned Objects Pane, expand the tree to display the objects.

Notice the objects are color coded. The objects in green are enabled and will be imported. The objects in red are excluded and will not be imported.

256

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

5.

From the menu bar, click File  Save map.

The Save Map dialog box appears. 6.

In the Save In field, browse to this path: C:\Program Files\Worksoft\Samples\SAP\Map

7.

Accept the default name and click Save.

The window is saved. 8.

From the menu bar, click File  Exit to exit the Certify SAP Learn application.

Certify 8.6.0 Participant Training Guide

257

Lesson 4: How To…

Importing Application Maps You will now import the maps into Certify and modify them in preparation for using them to create processes and tests.

Map Importing Overview Application maps consist of the windows and the objects that make up the application you want to test. You mapped the SAP application and are now ready to import those maps into your Certify database. Importing the maps will make the objects available so that you can create tests or processes using the objects. Based on your permissions, you can import the application map from Applications or Maps. You must have an application and at least one application version created in Certify before importing an application map. If you are importing an application map from Maps, you must have a project created and opened in Certify prior to importing.

EXERCISE 4.23 — Importing a New Application Map

In this exercise, you will import the application maps for the SAP Order to Cash transaction that you created in the previous lesson. Step 1.

Action In Certify, on the Navigation taskbar, click Application.

The Applications window appears. 2.

In the Navigation tree, click the plus sign next to the desired application to expand.

3.

Select and right-click 1.0.

A shortcut menu appears. 4.

Select Import Maps.

The Import Maps dialog box appears.

258

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

5.

6.

Type in field values or select options as follows: Field/Options

Value/Action

Interface

SAP

Import Schema

Select SAP

File Extension

Select checkbox next to .map

Import Directory/Browse

C:\Program Files\Worksoft\Samples\SAP\Map

Import Files

Select the checkbox next to SAPMV45A0101.map.

Import Options

Select Partial Import

Click OK.

The Import Progress dialog box appears indicating the map files are being processed. When the files have been processed, the Resolve dialog box appears.

Certify 8.6.0 Participant Training Guide

259

Lesson 4: How To…

Note that the parent node in the tree represents a window object, and with the parent nodes expanded, you can view all its child objects. 7.

Click OK.

All new windows and objects are added to the database and window names appear in the Summary pane.

260

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

Identify SAP Classes and Actions General Classes and Actions A Class is a description of a category of objects. A class defines how to recognize objects and the actions that can be executed against the objects. Each Certify interface has a set of classes and associated actions already defined. An Action is an individual activity or operation that can be automatically executed on a class. Some actions simulate an operation and some actions check to see if a condition is true. Each action can have input parameters and output parameters. Actions are invoked when you execute a process, and if parameters are required, prompts you for the parameters. For example, entering data to a TextBox requires a parameter for the data value. Each class and action combination invokes a particular function in the interface library, and the parameters are passed into the function during execution as arguments. Some actions simulate an operation like press, while others check to see if a condition is true such as enabled, focused, and visible. All classes in the SAP GUI interface inherit the following generic actions: Class

Action

Generic

Click Find Select Context Menu Set Property Store Property Verify Property

Certify 8.6.0 Participant Training Guide

261

Lesson 4: How To…

SAP Classes and Actions As well as having generic actions, some classes have actions that are unique to the class. The table below lists the unique actions for each class. Class

Description

Action

Box

A simple frame on the screen. The items inside the frame are not children of the box.

Generic actions only

Button

Buttons on the screen.

Press

Calendar

Select a date from the calendar and then store or verify the date. Similar to the Date Picker.

Select Date Store Date Verify Date

CheckBox

Check boxes on the screen.

Set Verify

ComboBox

Combo boxes on the screen.

Select Store Verify

ContainerShell

A wrapper for a set of GUI Shell objects.

Generic actions only

CTextField

A text field with a button in it that can be pressed to bring up a list of options, a dialog, or other input help.

Input

DockShell

A wrapper for the docker control.

Generic actions only

GoSShell

A child of the Titlebar that contains another shell. An example is a toolbar control. This control is only available in the New Visual Design mode.

Generic actions only

GridView

Implemented as an ActiveX. Similar to a table control but has more features.

Click Cell

Store Verify

Find Row IMput Cell Press Toolbar Select Row Store Cell Verify Cell

HTMLViewer

See Scripts class description.

Generic actions only

Local

Labels on the screen. By default, labels are not enabled (imported) in the learn process unless they are explicitly activated.

Click

Object

Used for dynamic objects on the screen.

Generic actions only

OKCodeField

The OkCodeField is at the top of every screen and allows a transaction or program name to be entered instead of using the menu structure. It is treated as a normal text field except the key is automatically sent when a value is input in the field.

Input

262

Store Verify

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

Class

Description

Action

Password

A text field that is similar to the GUITextField object, but it is different because the Text property cannot be read for the password field.

Input

RadioButton

Radio buttons on the screen.

Click Verify

Scripts

Enables the use of the scripting facility provided by the SAP GUI Scripting API. It is used for those exceptional cases where the Certify classes and actions do not provide the needed functionality (e.g., HTML Viewer control with an embedded Web browser).

Open

ScrollContainer

Represents scrollable subscreens. A subscreen may be scrollable without actually having a scrollbar.

Generic actions only

Shell

An abstract object whose interface is supported by all the controls.

Generic actions only

SimpleContainer

Represents non-scrollable subscreens. A simple container does not have any functionality apart from the inherited interfaces.

Generic actions only

SplitterShell

A shell that, by nature, is splitting.

Generic actions only

StatusBar

Represents the message displaying part of the status bar on the bottom of the SAP GUI window.

Store Parameter

StatusPane

Represents the status pane on the bottom of the SAP GUI window.

Generic actions only

Tab

Tabs on the screen.

Click

Table

A ‘dynpro’ control that is part of the standard group of user interface elements of the ABAP programming language. It is still in widespread use and provides all the basic functionality available in most grid type controls.

Click Cell

Play Search Replace Set Variable

Find Row Input Cell Select Row Store Cell Verify Cell

TabStrip

A container whose children are of type GUI Tab.

Generic actions only

TextField

Text fields on the screen.

Input Store Verify

TitleBar

Title bar of the screen.

Verify

Toolbar

Toolbar buttons on the screen.

Press

Tree

Tree view on the screen

Select Verify Node

Certify 8.6.0 Participant Training Guide

263

Lesson 4: How To…

Class

Description

Action

Window

Screen menus and Vkey functions

Close Get Client Select Menu SEndVKey Set Client Set Instance Set Reference Row Set Relative Object Set timeout Verify Client

For a complete list of the SAP Classes and Actins, go to Certify Help  Classes and Actions  SAP Classes and Actions.

264

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

Certify Process System Commands Certify uses map files to talk with the objects in the application under test (AUT), such as SAP screens and fields, HTML objects and links, etc. It also comes with a set of built-in non-application specific objects and actions to work with such things as date (date math, date part), DOS commands, Text manipulation (concatenate, compare, etc.), and other helpful test building options. The table below will help you understand what each system command purpose and actions are System Object

Action

Usage

Example

Date

Compare

Compare one date to another

Compare (V)Ship_Date to Todays date

Get Part

Get Day, Month, or Year from a date

Get Day form Todays date

Date math

Add or subtract Days or Weeks from a date

Set Execution

Comment

Dialog Prompt

Execute Process

Exit All Exit Process

Jump

Certify 8.6.0 Participant Training Guide

Used to Set a variable to specific value Used to insert comments into Certify process steps. Helps describe certain conditions or objects in the process for maintenance purpose Used to prompt the Certify user at runtime to perform some action. The test is paused until the prompt is answered. Allows a process to call a child process. Once the child process is complete, control returns to parent process. A layout and recordset can be added to this step that may be needed to feed the child process. Will case the test to exit regardless of what level of execution Exit the current process being executed and return to the parent process. If the current process is the parent process, the test will exit. Change flow to continue at a different step in the process rather than the next logical step. Note: works with the object Label (see below) which is the named entry point

Get Year from (V)Posting Date Add 7 Days to today’s date Subtract 2 weeks from (V)Expected Delivery date Set (V)Date to (V)Period Date “Find and press the Post Goods Issue button” “Execute Process ‘XXXX’ if count> 5” “Load check paper into the Payroll printer and press Enter when Ready...”

OTC_StandardOrder Execute VA01_CreateOrder Layout=VA01 Recordset=Sales Execute VL01N_ShipOrder Execute VF01_InvoiceOrder If (V)Amount = 0 then Exit All If (V)Available Qty < (V)Order Qty then Exit Process

If (V)Order Qty = 0 then Jump to Label=”Enter Order Qty”

265

Lesson 4: How To…

System Object

Action

Usage

Example

Label

A marker in the process that step flow might be redirected to A prompt that will pause the Certify test being executed and ask the user to supply a true/pass status to a condition outside the control of Certify. Change locale settings for various country specific formats

Label=”Enter Order Qty”

Manual Step

Execute

Set AUT Locale Start at first line with next record

Wait File

Append Data

Clear File

Delete File File Exist Overwrite File

Read File

Number

Compare Get Random Number Math

266

Cause Certify to change step flow in a process to the beginning with the next record in the recordset. EOF will cause the process to end and return to the parent process or end the test if it is the parent process. Delay the process execution by X seconds between steps Add data to the end of a text file located outside of the Certify Database (ex: C:\orders\OrderList.txt) Clears the content of a text file located outside of the Certify Database (ex: C:\orders\OrderList.txt) Deletes the text file located outside of the Certify Database (ex: C:\orders\OrderList.txt) Verify’s the text file located outside of the Certify Database (ex: C:\orders\OrderList.txt) is present Clears and appends data to the end of a text file located outside of the Certify Database (ex: C:\orders\OrderList.txt) Read the contents of a text file located outside of the Certify Database (ex: C:\orders\OrderList.txt)into a variable compare ValueA against ValueB with various compare criteria Generate a Positive integer random number between MIN and MAX range Perform standard Math operations on numeric values

“Check Payroll Printer - did all 48 checks print correctly” [True/False]

Examples of valid locales are de-DE, enGB, en-US, es-MX, fr_FR, it-IT, nl-nl, ptBR compare (V)Ship-Date = (V)system Date True=Continue | False=Start at first line with next record

Wait 10 seconds Append (V)Order Number to C:\orders\OrderList.txt

Clear C:\orders\OrderList.txt

Delete C:\orders\OrderList.txt

File Exist C:\orders\OrderList.txt (on True | on False) Overwrite File (V)Order Number C:\orders\OrderList.txt

Read File (V)Order Number C:\orders\OrderList.txt into (V)Order List

Compare (V)Amount Is Greater Than 0 Compare (V)Amount Is Less Than or Equal To (V)Net Value Get Random Number between 100 and 9999 and store in (V)Random Number Add 1 to (V)Counter and store in (V)Counter Multiple (V)Amount by (V)QTY and

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

System Object

Action Round

Set Set Random Seed Truncate

ODBC

Database Store

Database Verify Operating System

Capture Screen Image Execute Application DOS Command

Recordset

Clear Recordset Export Recordset Extract Recordset

Flush Recordset

Read Record

Certify 8.6.0 Participant Training Guide

Usage

Example

Round up a value based on the stated decimals value

store in (V)Total Round 1.50 to 0 decimals and store in (V)Value [would be stored as 2]

Used to Set a variable to specific value Used to seed the Random Number to be more random. Not normally used. Drop off the decimal value depending on the number of decimals specified

Store a table value from an external database using an ODBC connection and standard SQL statements Verify a table value in an external database using a ODBC connection and standard SQL statements Take a screen shot of the desktop or the topmost window

Round 1.6899 to 2 decimals and store in (V)Value [would be stored as 1.69] Set (V)Qty to 1 Set seed value to 2

(V)Temp Number=21.87 Truncate (V)Temp Number to 0 Decimal [(V)Temp Number = 21] (V)Temp Number=21.87 Truncate (V)Temp Number to 1 Decimal [(V)Temp Number = 21.8] ODBC Database Store Select VALUEX From TABLEX Where CONDITIONX is true and store in (V)Table Value ODBC Database Verify Select VALUEX From TABLEX Where CONDITIONX is true and store in (V)Table Value Capture Current Screen Capture Active Window

Executes an external Windows application by providing the application name and any command line options Enter in a standard DOS command

Execute application C:\Sap\Sapshcut.exe /User=SA Paccount / Password=SAPpassword

Used to remove the contains of a named layout and recordset Will export the contains of a Certify Recordset out to a text file with selected formatting Will export the contents of a Certify Recordset out to a .CSV formatted file.

Clear Recordset Layout=VA01, Recordset=TempRecSet Export Recordset Layout=VA01, Recordset=TempRecSet to C:\temp\TempRecSet, comma delimited Export Recordset Layout=VA01_SalesOrder, Recordset=TempRecSet to C:\temp\TempRecSet Flush Layout=VA01_SalesOrder, Recordset=ExportOrders

Flush will update the database with any changed values in a recordset rather than waiting until the end of the Certify Process run so it can be available immediately Will cause Certify to read a record as a step operation outside the normal process of layout/ recordset attachment

TASKKILL /f C:\windows\notepad.exe

Read Record Layout=VA01_SalesOrder, Recordset=ControlData, Index=2

267

Lesson 4: How To…

System Object

Text

Action

Usage

Example

Refresh Recordset

Will update the recordset values with any variable changed in a process

Write Recordset

Writes data to a layout and recordset. Options are Overwrite (destroy and append, Append)

Compare

Compare TextA against TextB with various criteria and case sensitivity options

Concatenate

Join up to 15 different text elements into one text variable

Convert Case

Switch text value between upper or lower case Use to grab a portion of a text string and place in a text variable based on a known starting and ending text value.

Refresh Recordset Layout=VA01_SalesOrder, Recordset=ControlData Write recordset Layout=VA01_SalesOrder_Temp, Recordset=OrderNumbers [Overwrite | Append] Compare (V)TaxCode Is Greater Than G Compare (V)LastName Is Less Than or Equal To (V)Temp with Case Matching Concatenate (V)Full_Name with (V)First_Name+(V)Middle_Name +(V)Last_Name Convert Case (V)Last Name to Upper Case 1) Set (V)String=”ABC1234#” 2) Find Substring Starts with *ABC and ends with #* and place in (V)Temp 3) (V)Temp=1234 Note: If special characters are part of the search string (ex: ABC*1234) then use the \ to escape the * - ex: ABCD\**) 1) (V)Temp=”123ABC#” 2) length (V)Temp store in (V)Temp 3) (V)Temp=7 1) Set (V)String = “ABCD1234#” 2) Substring Starts with Index 5 and ending with Index 4 and place in (V)Temp 3) (V)Temp=1234 1) Set (V)String = “ABCD1234#” 2) Substring Index (V)String with Substring “1” place in (V)Temp Number 3) (V)Temp Number=5 1) Set (V)String = “ ABCD ” 2) Trim Leading (V)String and place in (V)Temp 3) (V)Temp = “ ABCD “

Find Substring

Length

Find the number of characters in a string

Substring

Use to grab a portion of a text string and place in a text variable based on a starting and ending index number

Substring Index

Find the Index of a text string

Trim

Trim off leading and/or trailing spaces

1) Set (V)String = “ ABCD ” 2) TrimTrailing (V)String and place in (V)Temp 3) (V)Temp = “ ABCD “ 1) Set (V)String = “ ABCD ” 2) Trim Both (V)String and place in (V)Temp 3) (V)Temp = “ABCD“

268

Certify 8.6.0 Participant Training Guide

Lesson 4: How To…

System Object

Action

Usage

Example

Variable

Convert

Change text to number or number to text.

1) Set (V)String = “00023” 2) Convert (V)String and place in (V)Temp Number 3) (V)Temp Number= “23 “

Set

Certify 8.6.0 Participant Training Guide

Note: change text to number will only work if the text string is a numeric value Set a variable to a value

1) Set (V)Counter = “0 ” 2) Add 1 to (V)Counter and store in (V)Counter 3) (V)Counter=1

269

Lesson 4: How To…

Access Worksoft Certify Help If you need additional information on the features in Worksoft Certify, press F1 or click Help in the menu

bar.

270

Certify 8.6.0 Participant Training Guide

Glossary

A Action

An individual activity or operation that can be automatically executed on a class. Some actions simulate an operation (press, key press, store) and some actions check to see if a condition is true (verify). Each action can have input parameters and output parameters.

Administrator

Person(s) responsible for creating and maintaining applications, users and environments within the Certify repository.

Anchor

A method of uniquely identifying a window in Java applications by identifying objects on the window. Anchoring is used when application windows have the same name and/or caption throughout the application and cannot be uniquely identified.

Applet

A small program that is intended not to be run on its own, but rather to be embedded inside another Java application.

Application

Representation of a program or group of programs that is being tested. Applications are made up of one or more versions and all their test assets.

Application Map

A window or set of windows, learned via one of the learn tools, and all of the objects that appear in that window.

Attribute

1User-defined 2Any

field or value.

name-value pair inside the opening tag of an XML element.

Attribute string

Terminology used in all interfaces to identify the interface specific parameters (properties) for a window or object. In Certify, these are the identification parameters.

AUT

Application Under Test

B Boolean

Either the string is "true" or "false." For example, if you are setting the state of a field to visible, then you would use a "true" Boolean. If you are setting the state of a field to invisible, then you would use a "false" Boolean.

Breakpoint

Manual stop placed in the execution of a test at predefined points within the test.

Broken Source

JAVA code that displays in the browser, but does not comply to the strict set of rules that JAVA Learn uses to create parent-child relationships.

Business process certification

Testing methodology created by Worksoft, Inc. that parallels the software development life cycle and provides focus on assuring that critical business processes work.

1

Glossary

C Certify class

A Certify-defined category of objects that define what actions can be executed against the defined objects.

Certify component

Any attribute, application, interface, layout, recordset, application map, process, project, query, chart, report, result, requirement, user, group, or variable in Certify.

Char

A single character such as a, b, F9, *, ^.

Chart

Visual display of information.

Class

Category of fields or objects that define what actions can be executed against the defined fields or objects.

Context

A collection of application versions and associated test processes. In Worksoft Certify v6.x, the term that is used is environment.

Control

Object in a window or dialog box including pushbuttons, scroll bars, and pull-down menus.

D Dashboard

Organized collection of charts, queries and reports for quick viewing.

Data

Set of data values used to loop through your application while a test is being executed.

Data collection

Set of fields that define an entity, such as a customer, transaction, or message.

Data format

Organization of data store, such as database, CSV, fixed length, XML, etc.

Data mask

How the data element is formatted. Use Microsoft Excel list of types.

Data type

How the data element is represented—text, numeric, date, time, etc. in a Microsoft Excel list of cell categories.

Date data type

Any combination of month, day and year or any Certify supported format.

Date variable

Date variables consist of only dates using the day, month, and year in various formats. The default date separator is /.

Double

A number with an optional fractional part. For example, you could have 5, 5.5, 3.14159. You can also have exponents such as 2.3e7 or 2.3e-7. You can have up to 16 or 17 digits depending on the number. The numbers after the "e" have to be whole numbers.

Dynamic application map

An application map that is learned at runtime.

Dynamic list

Repeating sets of objects, such as a table or list, driven by content.

Dynamic object

Unmapped objects that are generated at run-time.

Dynamic views

Hidden views or tabs on a window that contain content that is not visible until called by another control.

E Emulator

F

2

A program that runs on your computer that emulates the behavior of a dumb terminal, or perhaps several varieties of terminals.

Glossary

Feature-level permissions

Gives you the right to have read only access, write only access, no access or execute/no execute access to interfaces, users and groups, reports, applications, attributes and projects.

Field

An entity on a Mainframe screen that represents where inputs and outputs occur.

File import schema

Parser associated with a specific interface library.

Float

A number with an optional fractional part. For example, you could have 5, 5.5, 3.14159. The difference between the float and a double is that floats can only have up to 6 or 7 digits depending on the number. You can also have exponents such as 2.3e7 or 2.3e-7. The numbers after the "e" have to be whole numbers.

Full application map

Single or set of maps representing the entire application for a specific version of an application.

G Group

Collection of users that perform particular tasks or have privileges to access certain functionality within in Certify.

H JAVA Learn

Utility created by Worksoft, Inc. that allows you to capture window or screen objects and all other objects used in an JAVA-based application.

I ICL

Interface Class Library. A library of Certify classes that can have actions performed with them. Also, it includes the parameters for each action and other necessary data.

Identification parameter

A string that identifies the interface specific parameters (properties) for a window or object.

Identifier

Properties used to recognize an object on a window, page, or dialog box. Examples of object properties include a path to the object, a caption or value of the object

In context

Application is already loaded and positioned at the state where the selected process begins.

Input parameter

Value provided to an action that can be used by subsequent test steps to perform an action and specified in an action.

Integer

Any whole number between -2 billion and +2 billion. A “[“ in front of an integer indicates an array is being used.

Interface

Program that contains a set of classes and actions pertaining to a specific technology.

J Java Learn

Utility created by Worksoft, Inc. that allows you to capture window or screen objects and all other objects used in a Java application.

L Layout

List of variables where the values are stored in rows.

3

Glossary

Load process

Loads the application from the command line. The execution of the load process begins at the command line and ends at the initial screen. During execution, Certify uses this process to initiate the application.

Local variable

Temporary variable (Symbol or name that stands for a value) created to use in a particular process only. Examples of a temporary variable include a variable to loop inside a counter or using a single name for a variable.

Logical name

The object name assigned by Certify based on the window caption.

Login process

Logs into the application. Certify will execute this process after the Load process in order to access the application’s main screen. The process begins at the initial screen and ends at the main screen.

Logout process

Certify performs this log out process after all execution steps are completed and you are ready to exit the application.

Long number

Any whole number between -1018 to +1018. For example, the wait method uses a long number in milliseconds.

M Map

A collection of windows and objects, their logical names and attributes.

Modal window

A dialog, or child window, created by a parent application, usually a dialog box, which has to be closed before the user can continue to operate the application.

N Narrative

Documentation templates associated with actions. Narrative templates have parameter tokens that are replaced by Certify at execution time to generate user-friendly documentation.

Native method

A type of method that is standard for the selected object.

Navigation state process

Documentation templates associated with actions. Narrative templates have parameter tokens that are replaced by Certify at execution time to generate user-friendly documentation.

Null

A special value that represents the absence of any object.

Number data type

Integers or floating point values.

Number variable

Values that consist of only numbers.

O Object

A self-contained entity that consists of both data and procedures to manipulate data. An object can be a window, a screen, a page, a dialog box, a portion of a window, screen or dialog box, or any control within that object.

Output parameter

Value passed from an action that can be used by subsequent test steps to perform an action and specified in an action.

P Page anchor

4

JAVA object that defines the internal page links for long or complex Web pages. Differentiates pages by identifying a unique object and/or text on each page. Substrings can be used to further distinguish pages.

Glossary

Pane

Identifiable part of a window providing a convenient way to execute commands or gather information.

Parameter

Value provided to an action that can be used by subsequent process steps (input) or a value passed from an action that can be used by subsequent process steps (output).

Parser

Program that receives input in the form of program instructions, online commands, markup tags, or other defined interface and breaks them up into parts, which can be managed by other programs.

Partial application map

Single or set of maps representing individual windows of an application for a specific version of an application.

Permissions

Rights to access features and/or data.

Physical name

The object name derived from the code.

Plug-in

Refers to a method of extending programs by inserting programs by inserting an executable file into a directory. Plug-ins include wrappers, interfaces, etc.

Port

The way a client program specifies a particular server program on a computer in a network.

Process

Business function or user task that is supported by the application(s) being certified; in Certify, a process is a test that you wish to perform against your application.

Process variable

Symbol or name that stands for a value that is created in a process and can only be used by the process created for.

Project

Collection of variables, processes, layouts, recordsets, requirements or test results that are defined against single or multiple application versions.

Project-level permissions

Gives you the right to read only, write only, or no access to variables, data (layouts and recordsets), processes, requirements, results, and maps. The execute/no execute access pertains to processes only.

Project variable

Symbol or name that stands for a value that is created in a project and available at all times during execution.

Public report

Collection of information viewable by any user with permissions in the project where the report resides.

Q Query

A way to collect, sort, and filter data that exists in a project.

R Recordset

Set of data records that are created from variable values or supply variable values for process steps.

Repository

Set of all Certify data including the Certify database.

Requirement

Feature or function the application is required to provide.

Return on investment (ROI)

A measure of a corporation's profitability, equal to a fiscal year's income divided by common stock and preferred stock equity plus long-term debt. ROI measures how effectively the corporation uses its capital to generate profit; the higher the ROI, the better.

S

5

Glossary

Screen attributes

The property name and string that define fields and lists on a Mainframe screen such as name, type, visible, manual and row, column and length values.

ScreenScraper

A utility created by Worksoft, Inc. that learns Mainframe screen maps by reading a directory or scraping the screen.

Short number

Any whole number between -32768 to +32767. The use of a short number as an argument type is rare.

Standard process

Defined process used by the execution engine that performs application Load, Login, Logout, Terminate or Recovery and brings the application to or exits from a predetermined state.

State process

Group of special processes used by Certify as standard or starting state processes that navigates from the main window to the starting window or page for a process; used by the execution engine when context is lost or not properly set.

Static application map

Window or set of windows, learned via source code, and all of the objects that appear in that window.

Status bar

Informational message bar at the bottom of each window in Certify.

Step

Individual action within a process performed against a screen, window, page or object.

String

A sequence of characters appropriate to the method selected. For example, the string used to represent the name (getName) of a field could be "txtAccountName." A "[" in front of a string indicates an array is being used.

Substring

Text string that is unique to an object and used in conjunction with a page anchor to locate an object on a page.

System variable

Symbol or name that stands for a value, predefined by Certify and used as a read-only variable to data values during execution.

T Terminal

Device that enables you to communicate with a computer.

Test asset

Variable, process, layout, recordset, requirement or test result in Certify.

Test case

Sequence of test steps.

Text data type

A string, accepting any alphabetic or number character that can be typed on a keyboard with a system maximum length of 65,535 characters (64K).

Text variables

Only alphabetic and special characters, no numbers with a system maximum length of 65,536 characters (64K).

Time variables

Only times using the hour, minute, second, and fraction of a second in various formats. Include also are formats for AM/PM and time zone offsets. The default time separator is a colon (:).

U UI

Graphical user interface of an application.

User

Individual authorized to access Certify with permissions assigned by the administrator of your system.

User variable

A type of variable that holds values specific to each user and used during test execution.

V

6

Glossary

Variable

Symbol or name that stands for a value. Values can be set directly, saved from a screen window or page, or read from a recordset, then supplied to a process for providing input or verifying responses.

Version

Specific build of an application.

View

Way to tailor what the user sees and functionality available to the user. Available views include Quality Engineer, Business Analyst, Administrator, Manager and All.

Virtual window

A tab container or virtual view within a Java application window that you want to display as a separate window in Certify.

W Window

Generic term that implies a unique screen layout, which may be a mainframe screen, a client/server window, or a web page.

Worksoft Certify

Complete testing solution that allows you to test your applications without the use of specialized scripting languages.

X XML

Extensible Markup Language. The map file extension recognized by Certify for importing .NET and VB application windows and objects. The .XML file is created by Test Complete and contains the learned window and object descriptors (physical name) and their associated attributes (property name and strings).

7

Glossary

8

Course Evaluation

At Worksoft, Inc. we continually strive to improve the quality of our training programs and documentation. Your feedback is important in helping us to provide the best possible training experience for our clients. Please take a moment to complete this course evaluation. Full Name: ____________________________________________________________ Company:_____________________________________________________________ Course Name: ___________________________ Your Job Role: ___________________ Date Attended: ___________________________Instructor:_______________________

About the Course Excellent

Overall...

Satisfactory

Fair

Poor

How would you rate the class? How would you rate the course format? How would you rate the instructor? How would you rate the training materials?

How would you rate the pace of the course?

 Just Right

 Reasonable

 Too Slow

 Too Fast

Overall, what percentage of the covered material was completely new to you?

 0 to 25%

 up to 50%

 up to 75%

 All

Do you feel that you are now adequately prepared to implement and/or use Certify?

 Yes

 No

1

Evaluation

What did you like most and/or least about the course? _______________________________________________________________________ _____________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ Are there any topics covered that you would have liked to spend more time on? _______________________________________________________________________ _____________________________________________________________________ _____________________________________________________________________ _______________________________________________________________________ Are there any topics not covered that you would like to know more about? _______________________________________________________________________ _____________________________________________________________________ _____________________________________________________________________ _______________________________________________________________________ Would you prefer to have ____ more hands-on time or ____ more lecture time? Why? _______________________________________________________________________ _____________________________________________________________________ _____________________________________________________________________ _______________________________________________________________________ Would you recommend this course to others? If not, why? _______________________________________________________________________ _____________________________________________________________________ _____________________________________________________________________ _______________________________________________________________________

2

Evaluation-2

Evaluation

About the Instructor Did the instructor demonstrate excellent technical expertise on the product?

 Yes

 No

Did the instructor demonstrate industry knowledge and provided adequate explanations?

 Good

 Average

 Poor

Did the instructor present the material and answer questions clearly?

 Good

 Average

 Poor

Was the instructor well-prepared?

 Yes

 No

About the Materials Is the training guide comprehensive for the course?

 Yes

 No

Will you use the training guide as a reference after the class?

 Yes

 No

Additional comments or suggestions overall _______________________________________________________________________ _____________________________________________________________________ _____________________________________________________________________ _______________________________________________________________________

33

Evaluation

4

Evaluation-4

Worksoft Inc. 15851 N. Dallas Parkway, Suite 855 Addison, TX 75001 www.worksoft.com 1.866.836.1773 ©2010 Worksoft Inc. All rights reserved. Worksoft and Worksoft Certify are registered. All other trademarks are properties of their respective owners.