eValid -- The WebSite Quality Authority
Browser-Based Client-Side WebSite
Mapping & Analysis,
Functional Testing and Validation,
and Quality Monitoring.
eValid -- Forcing Multiple Sub Window Script Description
With the right low-duty-cycle test scritps it is possible to run multiple
tests in multiple windows on one eValid browser instance.
This can be accomplished with the steps outlined here.
This special type of test construction would be appropriate for a set of
tests that meet these conditions:
- The tests all have a low duty cycle percentage, say N%.
- For an N% duty cycle test the total number of parallel
sub-windows, M, has to be < 1/N%.
For example, if the duty cycle is 10%,
then you should not use more than 10 sub-windows.
This arrangement would achieve a 100% overall duty cycle
for the aggregate of the 10 sub-window's activities, each of
which would exhibit a 10% duty cycle.
- There needs to be a "parent page" upon which the playback script can
act to initially launch the M sub-windows.
- The actions for each sub-window are probably best performed using a
CallScript passage that communications the window number M
so that the actions are performed
on the right one of the multiple sub-windows.
The parent page is assumed to have an active anchor link of the form:
<A HREF=HTTP://URL_OF_STARTING_PAGE TARGET=DUMMY>
This command sequence shown below forces the page to open sub-window N, where
the ALL-CAPS phrases match the above defined anchor declaration.
IndexFindElement 0 DOWN "innerText" "NAME_OF_STARTING_PAGE" ""
ValuePutElement 0 "target" ""
IndexFollowLink 0 ""
SubFrameSet M "NAME_OF_WINDOW"
(Commands focused on website under test in sub-window M)...
The additional command passages must each mention the specific
window name M in order to be effective.
The IndexSet 0 command may not be necessary
if the anchor link is unique on the parent page.
- The parent-page anchor link actually needs to be executed once
for each time the script is creating a window.
- It may be a good idea to issue a SubWindowCloseAll
command at the end of the script to make sure all of the windows are closed.