Using Selenium ProcessContainer

Updated: 2015.07.21

!!! Subject to changes as the Process Container Evolves !!!

Launching from SeleniumPlus:

  1. Select the Project you are working on in the SeleniumPlus Package Explorer.
  2. Select "Selenium+ -> Process Container -> Launch Process Container" from the main menu.

Launching from Command-Line:

Pseudo-Simple:   %JAVAEXE% -cp %CLASSPATH% org.safs.selenium.spc.WDSPC

  1. Minimally, set CLASSPATH to include:

  2. Run 32-bit Java class org.safs.selenium.spc.WDSPC
    (Project's root directory must be the Working Directory. This is where the 'test.ini' file is located.)
Note: The Eclipse Plug-In is scheduled to do this for you in the future.

Sample BAT file (command-line execution) for Windows:

The BAT file must be located in the desired Project's root directory--where the test.ini file resides: Note: The Eclipse Plug-In is scheduled to do this for you in the future.

Usage:

Selenium Process Container is made to "reconnect" to existing WebDriver sessions.  But it can also launch new sessions with the URL and Browser you specify.

Click an item in the image map below to get specific information on it.  Click the image background to see all info below.

Enter the Application URL here Select the Browser to launch Launch the Browser with the URL Close the launched Browser session Click to Get Current Window Titles List of Current Window Titles List of Known Frames in Browser Try SHORT Recognition Strings Process VISIBLE elements only. Click Mode Clicks Also Show Properties !Click to eval ALL window elements! Cancel eval of ALL window elements Save recognition strings to App Map Activate single-element Click Mode for 10 seconds Interactive Recognition Playground Try to find component using recognition string Set/Accept Recognition for the Map. Seek Children of Selected Element Show Properties Dialog for the selected Element Interactive Preview Screenshot Interactive Element Hierarchy Status Bar info

    Enter or select the full URL to the app to launch.
    The list will remember previous launches allowing you to simply select from the list instead.
    The list is maintained in history.dat in the project folder.

    Select which browser to use for the new browser session.

    Click Start to launch the selected URL in the selected browser session.
    Following a successful launch, the Current Windows list should automatically update with the current titles of all currently registered WebDriver browser sessions.

    Click Stop to close the session selected in the Current Windows list.
    This will likely be disabled in the future to allow test reconnection to a running session.
    In that case, closing the browser itself will be required to end the session.

    Updates the list of the currently available WebDriver window titles.
    The user should use Find Windows to refresh the list any time they manually interact with a WebDriver browser which navigates the browser to a new page with a new title-- such as the new page loaded AFTER logging in to an application via a Login page.

    Shows the currently available window titles.
    This list is automatically refreshed anytime a new WebDriver browser session is started.
    The user should also use Find Windows to refresh the list any time they manually interact with a WebDriver browser which navigates the browser to a new page with a different title-- such as the new page loaded AFTER logging in to an application via a Login page.

    Shows the currently available browser frames.
    This list is automatically refreshed anytime a browser Search locates frames or iframes in the browser.
    Certain actions or interactions, like Click Mode clicks, only work in the currently selected Frame.

    Click Search to process ALL objects on the selected Window.
    This takes a new Preview screenshot of the application window as it begins processing.
    On complex pages this Search can take a VERY long time since ALL elements on the page are processed.
    "START Click Mode" processing for individual elements may be a better alternative on such complex pages.

    Click Cancel to stop full page processing that is taking to long.
    "START Click Mode" processing for individual elements may be a better alternative on such complex pages.

    Used to save the stored recognition strings to an App Map.
    This would normally be done once the user is satisfied with all the recognition strings stored for each element in the hierarchy Tree.

    Select/Check if you want Process Container to attempt to use the shortest recognition strings (last child only) when searching for an element in the browser.
    Short strings are most desirable if they are unique across the application.   If the short string is too generic, the user can edit it to add more of the hierarchy without requiring the entire full XPath.

    Select/Check if you want Process Container to only "see" and capture information on visible elements and to ignore elements that are hidden.
    This does not mean only elements that are visible to you in the browser at this time.  It includes all elements that are set to be visible (not hidden) even though they may be scrolled out of the bounds of the viewport.  Ignoring hidden elements gives us a more accurate point-and-click interaction with the application in its current state.

    However, there are times when you DO want to know about and gather information (properties?) on objects that are set to "hidden". When that is the case, uncheck this box. This is MOST effective AFTER having a hierarchy of "visible" components. You can then uncheck this box, select an item in the tree hierarchy, and then use "Seek Children" to find hidden children of the selected component.

    Select/Check if you want Process Container to automatically retrieve and show a Properties panel for each item selected during Click Mode.

    "START Click Mode" used to select a specific individual element on the browser page.
    This takes a new Preview snapshot of the application window as it begins processing.
    Click Mode captures are active until a browser element is clicked or an internal 10 second timeout is reached.  The button changes to "STOP Click Mode" allowing the user to abort the mode before the timeout is reached.
    Clicking a browser element while active will capture relevant information for the element and attempt to extract/create a full path recognition string for the element.  The tool will also then attempt to highlight the component in both the Preview pane and the browser window.
    A successful highlight of the correct browser element AFTER the click suggests the recognition string used will work to find the correct element at runtime.  If the wrong element (or no element) is highlighted in the browser window then the stored recognition string needs to be edited to find the correct element.

    Will populate with the found recognition string for the selected browser element in Click Mode, or with the stored recognition string of the selected hierarchy Tree node if that was selected.
    The user can experiment editing this recognition string and using the Find Element button to test if the edited recognition string finds the correct element (if any) in the browser window.
    During certain Recognition modes of editing, the Recognition field will display the edited value of the recognition string while the Status Bar will display the unedited full xpath value of the recognition string.
    Once we are certain the Recognition string is "good" use the Set button to store the Recognition string as the default recognition string to be saved in the Map.

    Click Find Element to attempt to find and highlight the element in the browser using the current recognition string displayed in the Recognition editor.
    The user can experiment editing the recognition string and using this button to test if the edited recognition string finds the correct element (if any) in the browser window.
    Once we are certain the Recognition string is "good" use the Set button to store the Recognition string as the default recognition string to be saved in the Map.

    Used to set the current Recognition string as the one to be used in the App Map.
    Once the string in the Recognition field has been verified with Find Element to accurately find the right element, use Set to flag that string as the one to be saved in the App Map when Save Map is performed.

    Used after a node in the element hierarchy panel has been selected. Activates the seeking and processing of child components of the selected element in the hierarchy panel. This is often used after a broad hierarchy of the visible components has been found. The user can then deselect the "Visible Only" checkbox and learn about hidden child components, if any.

    Used after a node in the element hierarchy panel has been selected. Activates the capturing and display of all known object properties (attributes and other attainable properties) in a Node Info dialog box.

    Holds the last screenshot taken with the last Search or Click Mode capture.
    The app will attempt to highlight items in the Preview pane when the element hierarchy Tree is populated with elements for the page.
    If the element hierarchy Tree is populated, the user can also click items in the Preview pane to locate and select the corresponding item in the hierarchy Tree.  The element matching the selected item will also be sought and highlighted in the browser window.   A successful highlight of the correct browser element AFTER the Preview pane click suggests the recognition stored for the corresponding item in the hierarchy Tree will work to find the correct element at runtime.  If the wrong element (or no element) is highlighted in the browser window then the stored recognition string needs to be edited to find the correct element.

    Stores information on each element in the page hierarchy known to the tool.
    This is usually populated after the completion of a Search for all page elements.
    In the future, this may also get populated with items found resulting from "START Click Mode".
    The user can click items in the Tree and the corresponding item in the Preview pane and in the browser window should get highlighted.  The Recognition editor should be populated with the stored recognition string for the selected Tree node.
    A successful highlight of the correct browser element AFTER the Tree node click suggests the recognition stored for that node will work to find the correct element at runtime.   If the wrong element (or no element) is highlighted in the browser window then the stored recognition string for that Tree node needs to be edited to find the correct element.

    Used to display status and other informatio--like recognition strings--during processing and interactive use of the Preview pane, hierarchy Tree, and other UI elements.