16 Using the PeopleSoft Load Test Module

This chapter provides instructions on configuring and using the OpenScript PeopleSoft Load Test Module, which provides support for load testing of PeopleSoft applications.

16.1 About the PeopleSoft Load Test Module

The PeopleSoft Load Test Module is an extension module to the OpenScript HTTP Module that extends the Web testing with PeopleSoft-specific correlation rules.

16.1.1 Key Features of the PeopleSoft Load Test Module

  • The PeopleSoft Load Test Script Module. The New Project wizard (New from the File menu) includes an "Oracle PeopleSoft" option in the Load Test Group to use when creating PeopleSoft load testing projects in OpenScript.

  • Correlation Library. The PeopleSoft Load Test Module includes a PeopleSoft-specific library of correlation rules for parameterizing HTTP scripts.

16.2 Recording PeopleSoft Load Tests

The PeopleSoft Load Test Module records PeopleSoft-specific correlation rules into HTTP load testing scripts for automating testing of PeopleSoft EnterpriseOne applications.

16.2.1 Recording PeopleSoft Load Test Scripts

To record PeopleSoft Load Test scripts:

  1. Start OpenScript.

  2. Set the PeopleSoft Load Test Correlation preferences.

  3. Select New from the File menu.

  4. Expand the Load Testing group.

  5. Select Oracle PeopleSoft (The PeopleSoft script combines both HTTP and PeopleSoft technologies as part of the same script).

  6. Click Next.

  7. Select the Repository and Workspace.

  8. Enter a script name.

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

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

  11. Load the web page where you want to start recording into the browser.

  12. Navigate the web site to record page objects, actions, and navigations. The page objects, actions, and navigations will be added to the node of the script tree specified by the Set Record Section setting (the Run node is the default).

  13. When finished navigating pages, close the browser.

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

  15. 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.

16.3 Playing Back Scripts

OpenScript plays back recorded PeopleSoft actions. The actions used for playback will either be those that are recorded or specified manually in the Java Code view.

The PeopleSoft Load Test Module uses the OpenScript playback and iterate toolbar buttons which allows users to start the script playback for either a single playback through the script or multiple iterations using data from a databank file. Playback results for PeopleSoft Load scripts can be viewed in the Results and Console views.

16.3.1 Playing Back PeopleSoft Load Scripts

To play back PeopleSoft Load scripts:

  1. Start OpenScript.

  2. Open the PeopleSoft Load script to play back.

  3. Select Playback from the Script menu or click the toolbar button.

    You can view the progress of the script playback in the Console View. You can review the results of script playback in the Results View.

16.3.2 Playing Back PeopleSoft Load Scripts with Iterations

To play back PeopleSoft Load scripts with iterations:

  1. Start OpenScript.

  2. Open the PeopleSoft Load script to play back.

  3. Select Iterate from the Script menu or click the toolbar button.

  4. Select Use Databanks.

  5. Select which databank file to specify the settings for if more than one database is configured for the script.

  6. Specify the settings for the databank file.

  7. Select the Run no more than [ ] iterations option and set the iteration count to the desired number of playback iterations. See Section 4.2.4, "Playing Back Scripts With Iterations" for additional information about iteration settings.

  8. Click OK.

    You can view the progress of the script playback in the Console View. You can review the results of script playback in the Results View.

16.4 Setting PeopleSoft Load Test Correlation Preferences

To set Setting PeopleSoft Load Test Correlation preferences:

  1. Start OpenScript.

  2. Select OpenScript Preferences from the View menu.

  3. Expand the OpenScript node and the Correlation category.

  4. Select PeopleSoft Load Testing Module.

  5. Expand the PeopleSoft Load Test library.

  6. Select or clear the check boxes to enable or disable specific rules.

  7. Click the Add or Edit buttons to modify rules in the library.

  8. Click OK.

16.5 PeopleSoft Load Test Correlation Library

The PeopleSoft Load Test Module includes a correlation library that automatically recognizes and substitutes PeopleSoft parameters with OpenScript variables and functions during script recording. The script nodes show the PeopleSoft entities included in the page navigation. The HTTP recorder automatically recognizes and parameterizes PeopleSoft entities for Load testing.

Additional libraries and rules can be added using the OpenScript Correlation library Preferences for PeopleSoft Load Test.

The PeopleSoft correlation library defines the correlation rules for PeopleSoft-based applications. The correlation rules specify the variable names and regular expressions to use to replace dynamic data in PeopleSoft applications and navigations. The default PeopleSoft correlation library provided with the OpenScript PeopleSoft Load Test Module includes the following correlation rules:

  • setRefreshPage - Variable Substitution - this rule locates text in the HTML matching the Regular Expression pattern setRefreshPage\(((^\)+?)\); and replaces it with the variable name setRefreshPage in all locations.

  • dom Correlation - DOM Correlation - this rule implements the default Web Document Object Model correlation rules for PeopleSoft applications.

  • ICStateNum_v1 - Variable Substitution - this rule locates text in the HTML matching the Regular Expression pattern <input type='hidden' name='ICStateNum' id='ICStateNum' value='(.+?)' /> and replaces it with the variable name ICStateNum_v1 in the location matching the Regular Expression &ICStateNum=((.+?))&ICAction.

  • ICSID_v1 - Variable Substitution - this rule locates text in the HTML matching the Regular Expression pattern <input type='hidden' name='ICSID' value='(.+?)' /> and replaces it with the variable name ICSID_v1 in all locations.

  • ICStateNum_v2 - Variable Substitution - this rule locates text in the HTML matching the Regular Expression pattern ICStateNum\.value=(.+?); initVars_win and replaces it with the variable name ICStateNum_v2 in the location matching the Regular Expression &ICStateNum=((.+?))&.

  • ICSID_v2 - Variable Substitution - this rule locates text in the HTML matching the Regular Expression pattern <input type='hidden' name='ICSID' id='ICSID' value='(.+?)' /> and replaces it with the variable name ICSID_v2 in all locations.

  • ViewAttach - Variable Substitution - this rule locates text in the HTML matching the Regular Expression pattern \?cmd=viewattach&userfile=(.+?)& and replaces it with the variable name ViewAttach in all locations.

  • SDirName - Variable Substitution - this rule locates text in the HTML matching the Regular Expression pattern &sdirname=(.+?)' and replaces it with the variable name SDirName in all locations.

  • PSFileProc - Variable Substitution - this rule locates text in the HTML matching the Regular Expression pattern psfileproc/(.+?)\.pdf and replaces it with the variable name PSFileProc in all locations.

  • currentDate - Substitute Recorded Date - this rule locates text in the HTML matching the date pattern MM/dd/yyyy and replaces it with the current date in all locations.

  • new_amount - Variable Substitution - this rule locates text in the HTML matching the Regular Expression pattern <input type='text' name='DERIVED_CO_COMP_NEW_AMOUNT_CHAR\$([0-9]+)' id='DERIVED_CO_COMP_NEW_AMOUNT_CHAR\$([0-9]+)' tabindex='(\d+)' value="(.+?)" and replaces it with the variable name NewAmount in the location matching the Regular Expression DERIVED_CO_COMP_NEW_AMOUNT_CHAR\$([0-9]+)=((\d+(\.\d+)?)).

  • change_amount - Variable Substitution - this rule locates text in the HTML matching the Regular Expression pattern <input type='text' name='DERIVED_CO_COMP_NEW_AMOUNT_CHAR\$([0-9]+)' id='DERIVED_CO_COMP_NEW_AMOUNT_CHAR\$([0-9]+)' tabindex='(\d+)' value="(.+?)" and replaces it with the variable name change_amount in the location matching the Regular Expression DERIVED_CO_COMP_CHANGE_AMT\$([0-9]+)=((\d+(\.\d+)?)).

  • userLang - Variable Substitution - this rule locates text in the HTML matching the Regular Expression pattern userLang: "&c=(.+?)", and replaces it with the variable name userLang in all locations.

  • showModal - Variable Substitution - this rule locates text in the HTML matching the Regular Expression pattern showModal\((.+?)\); and replaces it with the variable name showModal in all locations.

  • hnewpers_v1 - Variable Substitution - this rule locates text in the HTML matching the Regular Expression pattern <input type='hidden' name='([A-Za-z_]+)\$hnewpers\$([0-9]+?)' id='([A-Za-z_]+)\$hnewpers\$([0-9]+?)' value='([0-9\|#]+#)' /> and replaces it with the variable name hnewpers_v1 in the location matching the Regular Expression [A-Za-z_]+\$hnewpers\$([0-9]+)=((.+%23)).

  • hnewpers_v2 - Variable Substitution - this rule locates text in the HTML matching the Regular Expression pattern [A-Za-z_]+\$hnewpers\$[0-9]+\.value='([0-9\|#]+#)'; and replaces it with the variable name hnewpers_v2 in the location matching the Regular Expression [A-Za-z_]+\$hnewpers\$([0-9]+)=((.+?))&.

  • ICElementNum - Variable Substitution - this rule locates text in the HTML matching the Regular Expression pattern <input type='hidden' name='ICElementNum' id='ICElementNum' value='(.+?)' /> and replaces it with the variable name ICElementNum in all locations.

  • ICStateNum_v3 - Variable Substitution - this rule locates text in the HTML matching the Regular Expression pattern win0\((true,|false,){15}(.+?), and replaces it with the variable name ICStateNum_v3 in all locations.

  • ICStateNum_v4 - Variable Substitution - this rule locates text in the HTML matching the Regular Expression pattern oDoc\.win0\.ICStateNum\.value=(.+?) and replaces it with the variable name ICStateNum_v4 in all locations.

  • NewICSID - Variable Substitution - this rule locates text in the HTML matching the Regular Expression pattern <input type='hidden' name='ICSID' id='ICSID' value='(.+?)'> and replaces it with the variable name NewICSID in all locations.

  • LASTUPDDTTM - Variable Substitution - this rule locates text in the HTML matching the Regular Expression pattern <input type="hidden" name="LASTUPDDTTM" id="LASTUPDDTTM" value="(.+?)" /> and replaces it with the variable name LASTUPDDTTM in all locations.

  • PERSON_NAME - Variable Substitution - this rule locates text in the HTML matching the Regular Expression pattern <input type="hidden" name="PERSON_NAME" id="PERSON_NAME" value="(.+?)" /> and replaces it with the variable name PERSON_NAME in all locations.

  • SHEET_ID - Variable Substitution - this rule locates text in the HTML matching the Regular Expression pattern SHEET_ID=(.+?)" cl and replaces it with the variable name SHEET_ID in all locations.

  • GPSID - Variable Substitution - this rule locates text in the HTML matching the Regular Expression pattern <input type="hidden" name="G_APSID" id="G_APSID" value="(.+?)" /> and replaces it with the variable name GPSID in all locations.

  • submitselecteditems - Variable Substitution - this rule locates text in the HTML matching the Regular Expression pattern data-itemkey='(.+?)' data-itemlevel and replaces it with the variable name submitselecteditems in all locations.

  • applicationsid - Variable Substitution - this rule locates text in the HTML matching the Regular Expression pattern <input type="hidden" name="applicationsid" id="applicationsid" value="(.+?)" /> and replaces it with the variable name applicationsid in all locations.