Copyright © 2013, Oracle and/or its affiliates. All rights reserved.1
Safe Harbour
THE FOLLOWING IS INTENDED TO OUTLINE OUR GENERAL
PRODUCT DIRECTION. IT IS INTENDED FOR INFORMATION
PURPOSES ONLY, AND MAY NOT BE INCORPORATED INTO ANY
CONTRACT. IT IS NOT A COMMITMENT TO DELIVER ANY
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.2
CONTRACT. IT IS NOT A COMMITMENT TO DELIVER ANY
MATERIAL, CODE, OR FUNCTIONALITY, AND SHOULD NOT BE
RELIED UPON IN MAKING PURCHASING DECISIONS. THE
DEVELOPMENT, RELEASE, AND TIMING OF ANY FEATURES OR
FUNCTIONALITY DESCRIBED FOR ORACLE'S PRODUCTS
REMAINS AT THE SOLE DISCRETION OF ORACLE.
Keyword-Driven Testing with Oracle Application Testing Suite: Application Testing ReinventedReinvented
Mikael FriesPrincipal Product Manager – Oracle ATS & TaaS
Srikanth KrishnanSenior Director - Oracle EBS QA
Program Agenda
� How is testing done today?
� Testing challenges
� The Oracle solution
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.4
� Product Demo
� Real-world Case Study
How Is Testing Done Today?
� Testing team have to wait for application
– Test automation project is started once the application is available
� Teams of testers and application users are required for testing
Typical scenario
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.5
– Test team works with application users to understand scenarios and flows
for testing as well as the scope of the testing project
� Test automation begins
– Test team is provided access to a test environment
– Test team begins to build test automation scripts
– Test team consults application users for clarification of scenarios
Oracle Application Quality Solutions
Application Testing Products
Infrastructure Testing Products
Application
Testing Suite
Oracle Functional
TestingOracle Load
Testing
Oracle Test
Manager
SQL Performance
Analyzer
Application
ReplayDatabase Replay
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.6
Test Data and Lab Management Products
Cloud Delivery Platform Testing-as-a-Service
Data Discovery
and ModelingData Sub setting Data Masking
�Production Workload�Synthetic Workload �Test Data Management
� Oracle Functional Testing Suite
for Oracle Applications
– Functional & regression testing
– Supports Web & Oracle Applications
� Oracle Load Testing Suite for
Oracle Applications
– Load & Performance style testing
– Supports Web & Oracle Applications
Smart integration with EM Diagnostics
Oracle Application Testing SuiteOracle’s solution for testing Oracle Applications
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.7
– Smart integration with EM Diagnostics
� Test Management
– Test Process Management solution for
� Test Planing
� Requirements
� Test cases
� Defects tracking
� Reporting
Testing Challenges
� Manual testing takes too long
– Business users do not have time to test every change (repeatedly)
� Difficult to find technical resources for test automation
Growing complexity of applications requires more testing
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.8
– Unable to leverage automated testing due to unavailability of technical
resources
� Constant business process changes render test assets obsolete
– Scripts needs to be maintained/recreated after changes to the applications
New Approach to Testing
� Dramatically reduces testing time
� Minimizes the need for technical
resources
Making sure your application is tested
?Copyright © 2013, Oracle and/or its affiliates. All rights reserved.9
� Reduces the testing complexity
� Minimizes the effort to keep you test
assets current
?
INTRODUCING
ORACLE
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.10
ORACLE FLOW BUILDER- KEYWORD DRIVEN TESTING
What Is Keyword Driven Testing?
� Keyword-driven testing is another way of creating automated tests
� It enables non-technical testers to compose test flows by defining
series of user actions that together define an application user flow
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.11
� User actions are defined using pre-defined keywords such as
Click, SetText, Select, etc.
� Test flows are then transformed into executable test automation
scripts at run time
How Is Keyword Driven Testing Implemented?
� Use a Keyword driven testing
framework as harness
� Testers analyze the application to
test and define Keywords
� Non-technical testers use
Keywords to mimic actions in Flows
– SetText Id_UserName John Doe
– SetText Id_Password MyS3Cr3T
Example
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.12
test and define Keywords
� Technical testers implement
Keywords and map these to code
– Keywords ”Click” & ”Button” could
for example generate the code web.button(Object).click();
– SetText Id_Password MyS3Cr3T
– Click Button OK
� Bind test data to Flows
� Generate test automation scripts
Pros and Cons of Keyword Driven TestingKeyword driven testing
Pros Cons
Maintenance is lower (over time)
• Test cases are concise
• Readable test cases for stake holders
• Test cases are easy to modify
Requires technical resource for keyword
implementation
Test cases can reuse keywords Only suitable for applications where keywords /
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.13
Test cases can reuse keywords Only suitable for applications where keywords /
user actions can be re-used in many places
More ‘robust’ test scripts Longer Time to Market
• Build framework
• Define keywords & code
Framework may support multiple
test automation tool
Steeper initial learning curve
Oracle Functional Testing Suite for Oracle AppsIncludes both record/playback and keyword driven testing framework
Flows & Compoenents
EBS Pre-Built
Test Content
Your
Data
Your
Flows
Oracle Functional Testing Suite
for Oracle Applications
Oracle EBS
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.14
Record
Manually
Generate
Test
Automation
Scripts
OpenScript
Record & Playback
+ Advanced
Scripting
Flow Builder
Framework to combine
flows and data to generate
test scripts
Test Content
Oracle Functional Testing Suite
for Oracle Applications
Oracle EBS
Oracle Flow Builder
� Keyword driven testing framework for non-technical testers
� Key differentiators for Oracle Flow Builder
– Optimized for Oracle e-Business Suite (EBS) testing with pre-
defined Keywords
New feature of Oracle Functional Testing Suite for Oracle Applications
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.15
defined Keywords
– Rich library of pre-defined
test flows & components
� 2100+ components
� 200+ sanity flows
� Supports all key EBS modules
<Keyword>
<Keyword>
<Keyword>
Oracle Flow Builder Concept
<Keyword><Keyword>
Component Set
Component
<Keyword>
<Keyword>
<Keyword>
Component
<Keyword>
<Keyword>
<Keyword>
Component
<Keyword>
<Keyword>
<Keyword>
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.16
Component Set
Flow
Component
Component
<Keyword>
<Keyword>
<Keyword>
Test Script
Oracle Flow Builder
<Keyword>
<Keyword>
<Keyword>
Component Set
Component
<Keyword>
<Keyword>
<Keyword>
Component
<Keyword>
<Keyword>
<Keyword>
Component
<Keyword>
<Keyword>
<Keyword>
<Keyword><Keyword>� Create components of commonly seen
user actions through Flow Builder’s Web
UI or through MS Excel
– Components can be re-used
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.17
Component Set
Flow
Component
Component
<Keyword>
<Keyword>
<Keyword>
Test Script
– Components can be re-used
– Components can be easily changed when
application changes or for customizations
Flow BuilderHow to define a component
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.18
How To Work With Components SetsOracle Flow Builder components
Components
Login to App
Update Item
BOM
Navigate to
Form
Assign
Serial Tag
Search Item
Close Form
Define Revision
Logout of App
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.19
How To Work With Components SetsYou can use the components to build Flows
Components
Login to App
Update Item
BOM
Navigate to
Form
Assign
Serial Tag
Search Item
Close Form
Define Revision
Logout of App
Navigate to
FormSearch Item Define Revision
Update Item
BOM
Login to App
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.20
Flow 1
Flow 2
How To Work With Components SetsYou can use the components to build Flows
Components
Login to App
Update Item
BOM
Navigate to
Form
Assign
Serial Tag
Search Item
Close Form
Define Revision
Logout of App
Login to AppNavigate to
FormSearch Item Define Revision
Update Item
BOMAssign
Serial Tag
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.21
Flow 1
Flow 2
How To Work With Components SetsUse Component Sets to combine frequently used components
Components
Update Item
BOM
Navigate to
Form
Assign
Serial Tag
Search Item
Close Form
Define Revision
Logout of AppUpdate Item
BOM
Login to AppLogin to App
Login to App
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.22
Flow 1
Login to App
Navigate to
Form
Search Item
Define Revision
Update Item
BOM
Navigate to
Form
Search Item
Define Revision
Assign
Serial TagFlow 2
SAMECreate
Component Set
”Define Item
Revision”
How To Work With Components SetsUsing Components Sets will simplify Flow creation
Components
Login to App
Update Item
BOM
Navigate to
Form
Assign
Serial Tag
Search Item
Close Form
Define Revision
Logout of AppUpdate Item
BOM
Login to App Login to App
Component Set
Component Set
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.23
Flow 1
Login to App
Navigate to
Form
Search Item
Define Revision
Update Item
BOM
Navigate to
Form
Search Item
Define Revision
Assign
Serial TagFlow 2
Define Item
Revision
Define Item
Revision
Component Set
Component Set
Deploy AuTRecord Script(s)
Add verifications
Parametrize Synchronize Stabilize
Record/Playback vs Oracle Flow BuilderSteps to automate a testing
Traditional record / playback
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.24
(Create Components) Assemble Flows Bind test data Generate Script
Keyword driven testing with Oracle Flow Builder
What If The Application Changes?How To Handle Changes in Application
Changes in UI
onlyChanges in UI only
Changes in UI &
transactions/logic
Update
component
Where is
the change?� Analyze and identify areas
where application changed
� Update components or
flow structure accordingly
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.25
Copy flow
structure
Enter test
data
Generate
script
Update
component
Update test
data
Generate
script
flow structure accordingly
� If required update test data
� Re-generate test automation scripts
Re-record Script(s)
Add verifications
Parametrize Synchronize Stabilize
Record/Playback vs Oracle Flow BuilderSteps to maintain test automation
Traditional record / playback
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.26
(Update Components) (Update Flows) (Bind test data) Generate Script
Keyword driven testing with Oracle Flow Builder
Oracle Flow BuilderArchitechture
http
MS Excel for creating
components off-line
Web UI for creating
components, component Sets,
flows & user management
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.27
Application Server
Repository
http
OFT Scripts
Generated
from Flows
Notifications
Component & Flow Storage
Users can
create & upload
Custom Function
Libraries to extend
Flow Builder functionality
Oracle Flow BuilderHow to install
Setup a server with Oracle Linux 5.x
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.28
Install Oracle 11g EE Database
Extract Oracle Flow Builder Zip >unzip ./OFB_MAIN_GENERIC_x.x.S.zip –d /tmp/OFB_MAIN
Begin OFB Setup >./tmp/OFB_MAIN/setup.sh install
Oracle Flow BuilderHow to install
Enter configuration as prompted by the setup scriptEnter install directory: /scratch/myUser/oracle/OracleOFB
Create Administrator Password to access the application: oracle123
Enter Database host name (press enter to accept [auto-detected-hostname]): xxxxx.us.oracle.com
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.29
[auto-detected-hostname]): xxxxx.us.oracle.com
Enter Database port (press enter to accept [1521]): 1521
Enter database SID (press enter to accept [orcl]): orcl
Enter database admin user name: system
Enter database admin Password: oracle123
Begin to use Oracle Flow Builder for test automation
Graphic Section Divider
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.30
Case Study Oracle e-Business Suite QA
ComponentsOracle Flow Builder
PO Header
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.31
ComponentsOracle Flow Builder
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.32
PO line type - Goods
PO line type - Service
Component Definition
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.33
Graphic Section Divider
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.34
DEMO
Addressing The Testing Challenges
� Manual testing takes too long
– Oracle Flow Builder can reduce the need for manual testing
freeing the business users from manual testing
Difficult to find technical resources for test automation
Oracle Flow Builder
����
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.35
� Difficult to find technical resources for test automation
– Oracle Flow Builder requires less technical resources allowing testing team
to work more efficiently
� Constant business process changes render test assets obsolete
– Oracle Flow Builder requires a fraction of maintenance compared to
traditional scripts, allowing customers to keep up-to-date
����
����
����
Addressing The Testing Challenges
� Reduce test development effort
– Make use of pre-defined components
� Compress lead time for testing
Oracle Flow Builder
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.36
– Test script development can begin before application is ready
� Easy maintenance
– Quick and easy changes of components and flows
� AUT* does not have to be available when creating the scripts
�When AUT* changes testers only have to update Keywords or flows
* Application Under Test
Addressing The Testing Challenges
� Eliminates the major drawbacks of keyword driven testing
– Pre-defined Keywords
– Pre-defined components & flows
Oracle Flow Builder
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.37
“With Oracle Flow Builder we address the key issue of automating EBS testing content and reusability. We have derived up to 60% savings using Oracle Flow Builder over traditional methods”
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.38
Srikanth KrishnanSenior Director,
EBS QA, Oracle.
Oracle Flow Builder over traditional methods”
Re-inventing Application Testing
� Optimized testing solutions for Oracle applications
� Jump-start EBS testing with pre-built content
� Allow your organization to become truly agile
Oracle Application Testing Suite
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.39
– Empower non-technical resources to create test automation flows
– Easy changes of existing components for your customizations
– Keep your testware current with a minimal effort
– Reduce complexity of testing
� Reduce test cycle effort - allows you to test every change!
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.40
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.41