Skip Headers
Oracle® Application Testing Suite OpenScript User's Guide
Version 9.01 for Microsoft Windows (32-Bit)

Part Number E15488-02
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
View PDF

10 Using the Siebel Functional Test Module

This chapter provides instructions on configuring and using the OpenScript Siebel Functional Test Module, which tests Siebel applications by accessing objects through the Document Object Model (DOM) of the Web browser and the Siebel test automation framework.

About the Siebel Functional Test Module

The Siebel Functional Test Module provides support for functional testing of Siebel web applications. The Siebel Functional Test Module is an extension module to the OpenScript Web Functional Test Module that extends the Web testing with Siebel Functional Test recording and playback capabilities. The Siebel Functional Test Module is fully integrated with the OpenScript platform including the Results view, Details view, Properties view, Console/Problems views, Preferences, Step Groups, Script Manager, and Workspace Manager.

Key Features of the Siebel Functional Test Module

The Siebel Functional Test Module includes the following features:

  • Records Standard Siebel High Interactivity (HI) and Standard Interactivity (SI) components for Siebel versions 7.7, 7.8, 8.0 and 8.1 through integration with Siebel Test Automation CAS Library.

  • Plays back recorded Siebel actions/commands which consist of an event plus object identified by its attributes (for example: GotoScreenlink pageTabs("SiebePageTabs") Accounts Screen).

  • Provides full script code view integration to support script generation for the Siebel Functional Test Module. The Siebel Functional Test Module includes an additional API to support Siebel Functional Test protocol code scripting.

  • Allows users to parameterize user inputs to Siebel Functional Test scripts and drive those inputs from an external data file (Databank).

  • Allows users to insert Tests to validate Siebel HI and SI content on playback.

  • Provides additional options/settings that are specific to Siebel Functional Test scripts within the Siebel Functional Test categories in the preferences interface.

  • Reports playback results for Siebel Functional Test scripts in the Results and Console views.

  • The Siebel Functional Test Script Module API. The Siebel Functional Test Application Programming Interface include Java code methods specific to functional testing of Siebel applications.

The New Project wizard (select New from the File menu) includes a "Siebel Functional Test Script" option to use when creating Siebel functional testing projects in OpenScript. The Siebel Functional Test Script Module records Siebel applications using the Siebel test automation framework. OpenScript captures user actions and records them to the OpenScript script nodes in a highly readable sequence of navigations and actions.

Functional Testing Siebel Applications

The following is an outline of the procedures and best practices used to perform functional testing of Siebel applications with the OpenScript application.

Prerequisites

The instructions in this document assume the following prerequisites:

  • Testing hardware/environment is available.

  • The Siebel applications are installed on a Siebel Server.

  • The Oracle Application Testing Suite applications have been installed on a testing machine.

  • The test machine can access the Siebel applications.

  • Some steps may require system administrator level privileges for the Siebel Server.

  • License for Siebel Test Automation required.

Setting up the Siebel Test Environment

The functional test environment should approximate as closely as possible a working Siebel deployment environment. However, hardware cost constraints may be a limiting factor. This section provides recommendations about the basic test system configuration. Additional test system configurations can be used based upon hardware and network availability.

The basic n-tier configuration should consist of the following systems:

  • Web Server

  • Siebel Server

  • Database Server

  • Database Storage

See the Siebel Installation Guide in the in the Siebel document bookshelf for information about hardware and Siebel installation requirements.

Notes:

  • Siebel applications can contain High-Interactivity (HI) components, which use ActiveX controls, and Standard-Interactivity (SI) applications, which use standard HTML. Applications may also use a combination of HI and SI components. Testing methods vary depending upon the type of components being tested. See the "Automating Functional Tests" chapter in the Testing Siebel eBusiness Applications document in the Siebel document bookshelf for a description of the component types.

  • In general, Siebel applications are more memory intensive than CPU intensive. If trade-offs need to be made in test hardware decisions, memory should be given higher consideration than CPU speed.

  • Siebel web applications use Cookies to maintain the state information.

Enabling Siebel Test Automation

The Siebel test automation framework must be activated on the Siebel server for OpenScript to access it. Changing the Siebel configuration file may require system administrator level privileges for the Siebel server. A license is also required to use the Siebel Test Automation framework. Contact your account representative for additional information about licence requirements.

Siebel 7.x

To enable the test automation framework in Siebel 7.x:

  1. Open the .CFG file for the Siebel application on the Siebel server.

  2. Set the EnableAutomation and AllowAnonUsers switches in the [SWE] section as follows:

    [SWE]
    
    EnableAutomation = TRUE
    
    AllowAnonUsers = TRUE
    
    ...
    

    See the Siebel Testing Siebel eBusiness Applications documentation if you need to set up secure access to the Siebel Test Automation framework.

  3. Restart the Siebel Server.

Siebel 8.0

To enable the test automation framework in Siebel 8.0:

  1. Log into Siebel as Administrator.

  2. Go to "Site Map".

  3. Go to "Administration - Server Configuration".

  4. Select "Call Center Object Manager" (provided you want to enable automation for Call Center).

  5. Under list of Components, click the Parameters tab.

  6. Find EnableAutomation and AllowAnonUsers parameters and set both to TRUE.

  7. Restart the Siebel Server.

Script Creation Techniques

The following are tips and techniques to use when creating Siebel load test scripts using the OpenScript application:

  • Disable browser caching to make sure the pages are returned from the server rather than the browser cache.

  • Record actions from login through logout to make sure parameters are passed properly between page navigations.

  • Record actions slowly in the Siebel environment to make sure the recorder records all actions to the OpenScript script. If possible, watch as the OpenScript script pages are added to the script tree.

  • Siebel Popup windows may initially appear incorrect. Resize the window slightly to refresh the page in the popup window.

  • Do not insert Siebel Tests in Siebel popup windows unless the test is necessary.

  • Save the script in OpenScript using Save As on the File menu. When you save a Siebel proxy-recorded script, OpenScript automatically creates a Java Agent versions of the script in the workspace. Depending upon the size of the script, the file save operation may take some time.

Setting Browser Options

When recording and playing back scripts to test an application, you want to make sure the pages returned are from the server and not the browser cache. To verify or change the browser settings:

  1. Open Internet Options from the Control Panel.

  2. Click Settings in the Temporary Internet files section.

  3. Select Every visit to the page.

  4. Click View Objects in the Temporary Internet files folder section.

  5. Verify that the downloaded Program files directory does not contain multiple versions of the Siebel High Interactivity Framework and Siebel Test Automation programs installed.

  6. If necessary, remove the duplicate or older versions.

  7. Close the Downloaded Program Files window.

  8. Click OK to close the Temporary Settings.

  9. Click OK to close the Internet Properties.

Starting the Siebel Application

When you start the Siebel application in the browser, the URL must include the Siebel Web Engine (SWE) command to generate the test automation framework information. The AutoOn Siebel Web Engine command (SWECmd) is added to the URL as follows (SWECmd is case-sensitive):

http://hostname/application/start.swe?SWECmd=AutoOn

where hostname is the machine name or IP address of the Siebel server and application is the name of the Siebel application. For example, application could be callcenter or callcenter_enu depending upon the Siebel version.

Enter the start URL and command into the browser address. for example:

http://siebelServer/callcenter_enu/start.swe?SWECmd=AutoOn

As you navigate pages, OpenScript records page navigation to the OpenScript script tree.

Determining a Siebel Component Type

Siebel applications can include High-Interactivity (HI) object and Standard-Interactivity (SI) object types. You can use the Inspect Path feature of OpenScript to determine the type of an object in an application.

  1. Click the Inspect Path toolbar button or the Capture button to open the Select Object dialog box.

  2. Move the mouse cursor over the page in the Siebel application to view the component type. The current component is highlighted in the OpenScript browser and the path appears in the Select Element dialog box. Siebel HI component types are indicated by /siebelft:cas[ClassName= in the Path/Object fields:

  3. The path to HI component types is also referred to as the Object Descriptor String (ODS) and is used in OpenScript to recognize applets used with the Siebel application.

    SI component types are indicated by /web:window[index='0']... in the Path field.

  4. Press F10 to capture the object path. You can copy the path from the dialog box using Ctrl-C and paste using Ctrl-V.

The following are examples of complete object paths (line breaks added for clarity):

High-Interactivity (HI) Path.

/siebelft:cas[ClassName='SiebApplication' and 

        RepositoryName='Siebel Universal Agent']

   /siebelft:cas[ClassName='SiebScreen' and 

           RepositoryName='Web Call Center Home Screen']

   /siebelft:cas[ClassName='SiebView' and 

           RepositoryName='Home Page View (WCC)']

   /siebelft:cas[ClassName='SiebApplet' and 

           RepositoryName='Sales Message Alert List Applet Tiny']

   /siebelft:cas[ClassName='SiebList' and 

           RepositoryName='SiebList']

Standard-Interactivity (SI) Path:

/web:window[index='0']

   /web:document[index='10']

   /web:span[text='Search' or index='1']

or

/web:window[index='0']/web:document[index='10']

   /web:form[index='0' or name='SWEForm1_0']

   /web:input_text[id='s_1_1_16_0' or name='s_1_1_16_0' or index='1']

Recording Siebel Functional Test Scripts

The Siebel Functional Test Module records standard Siebel High Interactivity (HI) and Standard Interactivity (SI) components for Siebel versions 7.7, 7.8, 8.0 and 8.1 through integration with Siebel Test Automation CAS Library. Siebel Test Automation must be enabled on the Siebel server side in order to successfully record these events. The Recorder creates functional and regression test scripts for automating testing of Siebel applications.

Siebel HI components are Active-X based controls and Siebel Test Automation provides the object/attribute information for OpenScript to record interactions with those controls. Actions on HI controls will be captured in the test script as OpenScript "siebelFT" commands. Siebel SI components are standard Web controls which are captured as standard OpenScript "web" commands using Web Functional Test object attributes; however, Siebel Test Automation may provide additional attributes to identify SI controls which take precedence over standard Web object/attributes. Object Identification attributes can later be modified by users through the Preferences global settings for new scripts or for already recorded commands in the tree view or code view. Recording can be configured through Internet Explorer only as Siebel does not support Firefox.

The Siebel Functional Test Module provides a record toolbar button that lets you initiate the Siebel recorder and capture Web/Siebel page actions to the script view. The record toolbar includes start and stop recording toolbar buttons. OpenScript recorders also open a floating toolbar that can be used while recording without having to switch between the browser and OpenScript.

Before recording Siebel Functional test scripts, make sure the Siebel test automation framework is activated on the Siebel server. See Functional Testing Siebel Applications for details about Prerequisites and the Siebel Test Environment.

Setting Siebel Functional Test Record Preferences

To set Siebel Functional Test record preferences:

  1. Start OpenScript.

  2. Select OpenScript Preferences from the View menu.

  3. Expand the OpenScript node and the Record category.

  4. Select Siebel Functional Test.

  5. Set the Object Identification preferences.

  6. Click OK.

Adding/Editing Object Identifiers

The Siebel Functional Test Module uses object identification to specify attributes used to identify High Interactivity (HI) and Standard Interactivity (SI) Web objects. The Siebel Functional Test Module uses the same predefined path attributes for common Web objects as the Web Functional Test Module; however, Siebel Test Automation may provide additional attributes to identify HI controls which take precedence over standard Web objects/attributes. Object paths are specified in XPath format. For example, for HI controls, the object identification path appears as follows in Java code commands:

/siebelft:cas[@ClassName='SiebApplication' and 

         @RepositoryName='Siebel Universal Agent']

   /siebelft:cas[@ClassName='SiebPageTabs' and 

            @RepositoryName='SiebPageTabs']")

and for SI Web objects, the object identification path appears as follows in Java code commands:

/web:window[@index='0']

    /web:document[@index='0']

        /web:form[@index='0' or @name='SWEEntryForm']

        /web:input_password[@id='s_swepi_2' or @name='SWEPassword' or @index='0']

The Siebel Functional Test Module includes object identifiers that specify how the recorder identifies Browser and Siebel objects. You can set the default Siebel SI object attributes in the Siebel Functional Test Module Record Preferences. You can add object identifiers or edit the existing object identifiers in the Record preferences. The HI control identification is provided by the Siebel Test Automation CAS Library. You can also edit object attributes in recorded scripts in the tree view or the code view.

In addition to the predefined object identification, you can add an Object Library to the script to record paths into a library file. Object Library files may be shared and reused across other scripts. The Object Library files provide a more convenient "short name" for objects to provide for more convenient programming.

To add or edit an object identifier:

  1. Select the OpenScript Preferences from the View menu.

  2. Expand the Record node and select Siebel Functional Test.

  3. Click the Object Identification tab.

  4. Click Add or select an existing object identifier and click Edit.

  5. If adding a new object identifier, enter a name for the object identifier.

  6. Add or edit object elements for the object identifier.

    For each object element, you specify a name (typically a Siebel object attribute), an operator, a value and a value type. As you add object elements, OpenScript builds the object identifier using logical OR between each object identifier element. Click Edit to change between logical OR and AND.

  7. Click OK. The object identifier is added to the record preferences.

See the Using the Web Functional Test Module chapter for additional information about adding and editing Object Identifiers.

Recording Siebel Functional Test Scripts

To record Siebel Functional Test Scripts:

  1. Start OpenScript.

  2. Select New from the File menu.

  3. Select Siebel Functional Test Script.

  4. Click Next.

  5. Select the Repository and Workspace.

  6. Enter a script name.

  7. Click Finish. A new Script tree is created in the Script View.

  8. Select Record from the Script menu. The browser automatically opens when you start recording.

  9. Load the Siebel application using the AutoOn Siebel Web Engine command (?SWECmd=AutoOn) in the URL into the browser.

  10. Log in and navigate the web site to record page objects, actions, and navigations. The page objects, actions, and navigations will be added to the Run node of the script tree.

  11. When finished navigating pages, log out and close the browser.

  12. Select Stop from the Script menu or click the Stop button on the OpenScript toolbar.

  13. Expand the Run node of the script to view the page objects, actions, and navigation nodes in the script tree.

    You can customize the script using the menu options or the Code View for specific testing requirements.

    Note:

    Do not close the script editor view or script project while recording or playing back scripts. Doing so could result in unpredictable behavior in the OpenScript application.

Modifying Scripts

Once a script has been created/recorded, you can make modifications to customize the script for your specific testing needs.

Adding Siebel Actions

The Siebel Functional Test Module includes actions for Siebel objects that can be added to a script.

To add Siebel actions to a script:

  1. Record a Siebel Functional Test script.

  2. Select the script node where you want to add the action.

  3. Select the Script menu and then select Other from the Add sub menu.

  4. Expand the Siebel Functional Test node.

  5. Expand an action node and select the action.

  6. Click OK.

    The Siebel action dialog boxes let you define the action to perform during playback of a Siebel Functional Test script. This dialog box is used for most Siebel actions including Application, Button, Calculator, Calendar, Checkbox, Communications Toolbar, Currency, List, Menu, Page Tabs, PDQ, Rich Text, Screen Views, Task Assistant, Text, Text Area, Threadbar, Toolbar, Tree, and View Applets. Specific values may be required for specific actions.

    • Action: Shows the action to perform. Additional values for variables or attributes may be required depending upon the action to perform.

    • Path: Specify the object ID of the Siebel or Web object on which to perform the action. You can use the Capture or Select menu options to capture or select an object path.

    • Value(s): Specify the variables or attributes as required for the specific action on an object.

  7. Enter the object identification path for the object.

  8. Enter any required values to use for the object action.

  9. Click OK. The action node is added to the script tree.

    In the Java Code view, a siebelFT.object(objectId).action() method will be added to the script code:

    siebelFT.menu(100,"/siebelft:cas[@ClassName='SiebApplication' 
    
       and @RepositoryName='Siebel Universal Agent']
    
     /siebelft:cas[@ClassName='SiebMenu' 
    
       and @RepositoryName='SiebMenu']").select("File\\\\File - Logout");
    

    The Siebel Functional Test node includes actions for objects such as Application, Calculator, Calendar, Communications Toolbar, Page Tabs, Task Assistant, Threadbar, and View Applets, etc. Other object actions have corresponding Java code methods.