mirror of
https://github.com/silverstripe/silverstripe-framework
synced 2024-10-22 14:05:37 +02:00
4a5d9b03f8
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@39001 467b73ca-7a2a-4603-9d3b-597d59a354a9
549 lines
23 KiB
XML
Executable File
549 lines
23 KiB
XML
Executable File
<?xml version="1.0" encoding="UTF-8"?>
|
|
<apidoc>
|
|
<top>Defines an object that runs Selenium commands.
|
|
|
|
<h3><a name="locators"></a>Element Locators</h3>
|
|
<p>
|
|
Element Locators tell Selenium which HTML element a command refers to.
|
|
The format of a locator is:</p>
|
|
<blockquote>
|
|
<em>locatorType</em><strong>=</strong><em>argument</em>
|
|
</blockquote>
|
|
|
|
<p>
|
|
We support the following strategies for locating elements:
|
|
</p>
|
|
<blockquote>
|
|
<dl>
|
|
<dt><strong>identifier</strong>=<em>id</em></dt>
|
|
<dd>Select the element with the specified @id attribute. If no match is
|
|
found, select the first element whose @name attribute is <em>id</em>.
|
|
(This is normally the default; see below.)</dd>
|
|
<dt><strong>id</strong>=<em>id</em></dt>
|
|
<dd>Select the element with the specified @id attribute.</dd>
|
|
|
|
<dt><strong>name</strong>=<em>name</em></dt>
|
|
<dd>Select the first element with the specified @name attribute.</dd>
|
|
<dd><ul class="first last simple">
|
|
<li>username</li>
|
|
<li>name=username</li>
|
|
</ul>
|
|
</dd>
|
|
<dd>The name may optionally be followed by one or more <em>element-filters</em>, separated from the name by whitespace. If the <em>filterType</em> is not specified, <strong>value</strong> is assumed.</dd>
|
|
|
|
<dd><ul class="first last simple">
|
|
<li>name=flavour value=chocolate</li>
|
|
</ul>
|
|
</dd>
|
|
<dt><strong>dom</strong>=<em>javascriptExpression</em></dt>
|
|
|
|
<dd>
|
|
|
|
<dd>Find an element using JavaScript traversal of the HTML Document Object
|
|
Model. DOM locators <em>must</em> begin with "document.".
|
|
<ul class="first last simple">
|
|
<li>dom=document.forms['myForm'].myDropdown</li>
|
|
<li>dom=document.images[56]</li>
|
|
</ul>
|
|
</dd>
|
|
|
|
</dd>
|
|
|
|
<dt><strong>xpath</strong>=<em>xpathExpression</em></dt>
|
|
<dd>Locate an element using an XPath expression.
|
|
<ul class="first last simple">
|
|
<li>xpath=//img[@alt='The image alt text']</li>
|
|
<li>xpath=//table[@id='table1']//tr[4]/td[2]</li>
|
|
|
|
</ul>
|
|
</dd>
|
|
<dt><strong>link</strong>=<em>textPattern</em></dt>
|
|
<dd>Select the link (anchor) element which contains text matching the
|
|
specified <em>pattern</em>.
|
|
<ul class="first last simple">
|
|
<li>link=The link text</li>
|
|
</ul>
|
|
|
|
</dd>
|
|
</dl>
|
|
</blockquote>
|
|
<p>
|
|
Without an explicit locator prefix, Selenium uses the following default
|
|
strategies:
|
|
</p>
|
|
|
|
<ul class="simple">
|
|
<li><strong>dom</strong>, for locators starting with "document."</li>
|
|
<li><strong>xpath</strong>, for locators starting with "//"</li>
|
|
<li><strong>identifier</strong>, otherwise</li>
|
|
</ul>
|
|
|
|
<h3><a name="element-filters">Element Filters</a></h3>
|
|
<blockquote>
|
|
<p>Element filters can be used with a locator to refine a list of candidate elements. They are currently used only in the 'name' element-locator.</p>
|
|
<p>Filters look much like locators, ie.</p>
|
|
<blockquote>
|
|
<em>filterType</em><strong>=</strong><em>argument</em></blockquote>
|
|
|
|
<p>Supported element-filters are:</p>
|
|
<p><strong>value=</strong><em>valuePattern</em></p>
|
|
<blockquote>
|
|
Matches elements based on their values. This is particularly useful for refining a list of similarly-named toggle-buttons.</blockquote>
|
|
<p><strong>index=</strong><em>index</em></p>
|
|
<blockquote>
|
|
Selects a single element based on its position in the list (offset from zero).</blockquote>
|
|
</blockquote>
|
|
|
|
<h3><a name="patterns"></a>String-match Patterns</h3>
|
|
|
|
<p>
|
|
Various Pattern syntaxes are available for matching string values:
|
|
</p>
|
|
<blockquote>
|
|
<dl>
|
|
<dt><strong>glob:</strong><em>pattern</em></dt>
|
|
<dd>Match a string against a "glob" (aka "wildmat") pattern. "Glob" is a
|
|
kind of limited regular-expression syntax typically used in command-line
|
|
shells. In a glob pattern, "*" represents any sequence of characters, and "?"
|
|
represents any single character. Glob patterns match against the entire
|
|
string.</dd>
|
|
<dt><strong>regexp:</strong><em>regexp</em></dt>
|
|
<dd>Match a string using a regular-expression. The full power of JavaScript
|
|
regular-expressions is available.</dd>
|
|
<dt><strong>exact:</strong><em>string</em></dt>
|
|
|
|
<dd>Match a string exactly, verbatim, without any of that fancy wildcard
|
|
stuff.</dd>
|
|
</dl>
|
|
</blockquote>
|
|
<p>
|
|
If no pattern prefix is specified, Selenium assumes that it's a "glob"
|
|
pattern.
|
|
</p></top>
|
|
<function name="click">
|
|
<param name="locator">an element locator</param>
|
|
<comment>Clicks on a link, button, checkbox or radio button. If the click action
|
|
causes a new page to load (like a link usually does), call
|
|
waitForPageToLoad.</comment>
|
|
</function>
|
|
<function name="fireEvent">
|
|
<param name="locator">an <a href="#locators">element locator</a></param>
|
|
<param name="eventName">the event name, e.g. "focus" or "blur"</param>
|
|
<comment>Explicitly simulate an event, to trigger the corresponding "on<em>event</em>"
|
|
handler.</comment>
|
|
</function>
|
|
<function name="keyPress">
|
|
<param name="locator">an <a href="#locators">element locator</a></param>
|
|
<param name="keycode">the numeric keycode of the key to be pressed, normally the
|
|
ASCII value of that key.</param>
|
|
<comment>Simulates a user pressing and releasing a key.</comment>
|
|
</function>
|
|
<function name="keyDown">
|
|
<param name="locator">an <a href="#locators">element locator</a></param>
|
|
<param name="keycode">the numeric keycode of the key to be pressed, normally the
|
|
ASCII value of that key.</param>
|
|
<comment>Simulates a user pressing a key (without releasing it yet).</comment>
|
|
</function>
|
|
<function name="keyUp">
|
|
<param name="locator">an <a href="#locators">element locator</a></param>
|
|
<param name="keycode">the numeric keycode of the key to be released, normally the
|
|
ASCII value of that key.</param>
|
|
<comment>Simulates a user releasing a key.</comment>
|
|
</function>
|
|
<function name="mouseOver">
|
|
<param name="locator">an <a href="#locators">element locator</a></param>
|
|
<comment>Simulates a user hovering a mouse over the specified element.</comment>
|
|
</function>
|
|
<function name="mouseDown">
|
|
<param name="locator">an <a href="#locators">element locator</a></param>
|
|
<comment>Simulates a user pressing the mouse button (without releasing it yet) on
|
|
the specified element.</comment>
|
|
</function>
|
|
<function name="type">
|
|
<param name="locator">an <a href="#locators">element locator</a></param>
|
|
<param name="value">the value to type</param>
|
|
<comment>Sets the value of an input field, as though you typed it in.
|
|
|
|
<p>Can also be used to set the value of combo boxes, check boxes, etc. In these cases,
|
|
value should be the value of the option selected, not the visible text.</p></comment>
|
|
</function>
|
|
<function name="check">
|
|
<param name="locator">an <a href="#locators">element locator</a></param>
|
|
<comment>Check a toggle-button (checkbox/radio)</comment>
|
|
</function>
|
|
<function name="uncheck">
|
|
<param name="locator">an <a href="#locators">element locator</a></param>
|
|
<comment>Uncheck a toggle-button (checkbox/radio)</comment>
|
|
</function>
|
|
<function name="select">
|
|
<param name="locator">an <a href="#locators">element locator</a> identifying a drop-down menu</param>
|
|
<param name="optionLocator">an option locator (a label by default)</param>
|
|
<comment>Select an option from a drop-down using an option locator.
|
|
|
|
<p>
|
|
Option locators provide different ways of specifying options of an HTML
|
|
Select element (e.g. for selecting a specific option, or for asserting
|
|
that the selected option satisfies a specification). There are several
|
|
forms of Select Option Locator.
|
|
</p>
|
|
<dl>
|
|
<dt><strong>label</strong>=<em>labelPattern</em></dt>
|
|
<dd>matches options based on their labels, i.e. the visible text. (This
|
|
is the default.)
|
|
<ul class="first last simple">
|
|
<li>label=regexp:^[Oo]ther</li>
|
|
</ul>
|
|
</dd>
|
|
<dt><strong>value</strong>=<em>valuePattern</em></dt>
|
|
<dd>matches options based on their values.
|
|
<ul class="first last simple">
|
|
<li>value=other</li>
|
|
</ul>
|
|
|
|
|
|
</dd>
|
|
<dt><strong>id</strong>=<em>id</em></dt>
|
|
|
|
<dd>matches options based on their ids.
|
|
<ul class="first last simple">
|
|
<li>id=option1</li>
|
|
</ul>
|
|
</dd>
|
|
<dt><strong>index</strong>=<em>index</em></dt>
|
|
<dd>matches an option based on its index (offset from zero).
|
|
<ul class="first last simple">
|
|
|
|
<li>index=2</li>
|
|
</ul>
|
|
</dd>
|
|
</dl>
|
|
<p>
|
|
If no option locator prefix is provided, the default behaviour is to match on <strong>label</strong>.
|
|
</p></comment>
|
|
</function>
|
|
<function name="addSelection">
|
|
<param name="locator">an <a href="#locators">element locator</a> identifying a multi-select box</param>
|
|
<param name="optionLocator">an option locator (a label by default)</param>
|
|
<comment>Add a selection to the set of selected options in a multi-select element using an option locator.
|
|
|
|
@see #doSelect for details of option locators</comment>
|
|
</function>
|
|
<function name="removeSelection">
|
|
<param name="locator">an <a href="#locators">element locator</a> identifying a multi-select box</param>
|
|
<param name="optionLocator">an option locator (a label by default)</param>
|
|
<comment>Remove a selection from the set of selected options in a multi-select element using an option locator.
|
|
|
|
@see #doSelect for details of option locators</comment>
|
|
</function>
|
|
<function name="submit">
|
|
<param name="formLocator">an <a href="#locators">element locator</a> for the form you want to submit</param>
|
|
<comment>Submit the specified form. This is particularly useful for forms without
|
|
submit buttons, e.g. single-input "Search" forms.</comment>
|
|
</function>
|
|
<function name="open">
|
|
<param name="url">the URL to open; may be relative or absolute</param>
|
|
<comment>Opens an URL in the test frame. This accepts both relative and absolute
|
|
URLs.
|
|
|
|
The "open" command waits for the page to load before proceeding,
|
|
ie. the "AndWait" suffix is implicit.
|
|
|
|
<em>Note</em>: The URL must be on the same domain as the runner HTML
|
|
due to security restrictions in the browser (Same Origin Policy). If you
|
|
need to open an URL on another domain, use the Selenium Server to start a
|
|
new browser session on that domain.</comment>
|
|
</function>
|
|
<function name="selectWindow">
|
|
<param name="windowID">the JavaScript window ID of the window to select</param>
|
|
<comment>Selects a popup window; once a popup window has been selected, all
|
|
commands go to that window. To select the main window again, use "null"
|
|
as the target.</comment>
|
|
</function>
|
|
<function name="waitForPopUp">
|
|
<param name="windowID">the JavaScript window ID of the window that will appear</param>
|
|
<param name="timeout">a timeout in milliseconds, after which the action will return with an error</param>
|
|
<comment>Waits for a popup window to appear and load up.</comment>
|
|
</function>
|
|
<function name="chooseCancelOnNextConfirmation">
|
|
<comment>By default, Selenium's overridden window.confirm() function will
|
|
return true, as if the user had manually clicked OK. After running
|
|
this command, the next call to confirm() will return false, as if
|
|
the user had clicked Cancel.</comment>
|
|
</function>
|
|
<function name="answerOnNextPrompt">
|
|
<param name="answer">the answer to give in response to the prompt pop-up</param>
|
|
<comment>Instructs Selenium to return the specified answer string in response to
|
|
the next JavaScript prompt [window.prompt()].</comment>
|
|
</function>
|
|
<function name="goBack">
|
|
<comment>Simulates the user clicking the "back" button on their browser.</comment>
|
|
</function>
|
|
<function name="refresh">
|
|
<comment>Simulates the user clicking the "Refresh" button on their browser.</comment>
|
|
</function>
|
|
<function name="close">
|
|
<comment>Simulates the user clicking the "close" button in the titlebar of a popup
|
|
window or tab.</comment>
|
|
</function>
|
|
<function name="isAlertPresent">
|
|
<return type="boolean">true if there is an alert</return>
|
|
<comment>Has an alert occurred?
|
|
|
|
<p>
|
|
This function never throws an exception
|
|
</p></comment>
|
|
</function>
|
|
<function name="isPromptPresent">
|
|
<return type="boolean">true if there is a pending prompt</return>
|
|
<comment>Has a prompt occurred?
|
|
|
|
<p>
|
|
This function never throws an exception
|
|
</p></comment>
|
|
</function>
|
|
<function name="isConfirmationPresent">
|
|
<return type="boolean">true if there is a pending confirmation</return>
|
|
<comment>Has confirm() been called?
|
|
|
|
<p>
|
|
This function never throws an exception
|
|
</p></comment>
|
|
</function>
|
|
<function name="getAlert">
|
|
<return type="string">The message of the most recent JavaScript alert</return>
|
|
<comment>Retrieves the message of a JavaScript alert generated during the previous action, or fail if there were no alerts.
|
|
|
|
<p>Getting an alert has the same effect as manually clicking OK. If an
|
|
alert is generated but you do not get/verify it, the next Selenium action
|
|
will fail.</p>
|
|
|
|
<p>NOTE: under Selenium, JavaScript alerts will NOT pop up a visible alert
|
|
dialog.</p>
|
|
|
|
<p>NOTE: Selenium does NOT support JavaScript alerts that are generated in a
|
|
page's onload() event handler. In this case a visible dialog WILL be
|
|
generated and Selenium will hang until someone manually clicks OK.</p></comment>
|
|
</function>
|
|
<function name="getConfirmation">
|
|
<return type="string">the message of the most recent JavaScript confirmation dialog</return>
|
|
<comment>Retrieves the message of a JavaScript confirmation dialog generated during
|
|
the previous action.
|
|
|
|
<p>
|
|
By default, the confirm function will return true, having the same effect
|
|
as manually clicking OK. This can be changed by prior execution of the
|
|
chooseCancelOnNextConfirmation command. If an confirmation is generated
|
|
but you do not get/verify it, the next Selenium action will fail.
|
|
</p>
|
|
|
|
<p>
|
|
NOTE: under Selenium, JavaScript confirmations will NOT pop up a visible
|
|
dialog.
|
|
</p>
|
|
|
|
<p>
|
|
NOTE: Selenium does NOT support JavaScript confirmations that are
|
|
generated in a page's onload() event handler. In this case a visible
|
|
dialog WILL be generated and Selenium will hang until you manually click
|
|
OK.
|
|
</p></comment>
|
|
</function>
|
|
<function name="getPrompt">
|
|
<return type="string">the message of the most recent JavaScript question prompt</return>
|
|
<comment>Retrieves the message of a JavaScript question prompt dialog generated during
|
|
the previous action.
|
|
|
|
<p>Successful handling of the prompt requires prior execution of the
|
|
answerOnNextPrompt command. If a prompt is generated but you
|
|
do not get/verify it, the next Selenium action will fail.</p>
|
|
|
|
<p>NOTE: under Selenium, JavaScript prompts will NOT pop up a visible
|
|
dialog.</p>
|
|
|
|
<p>NOTE: Selenium does NOT support JavaScript prompts that are generated in a
|
|
page's onload() event handler. In this case a visible dialog WILL be
|
|
generated and Selenium will hang until someone manually clicks OK.</p></comment>
|
|
</function>
|
|
<function name="getAbsoluteLocation">
|
|
<return type="string">the absolute URL of the current page</return>
|
|
<comment>Gets the absolute URL of the current page.</comment>
|
|
</function>
|
|
<function name="isLocation">
|
|
<return type="boolean">true if the location matches, false otherwise</return>
|
|
<param name="expectedLocation">the location to match</param>
|
|
<comment>Verify the location of the current page ends with the expected location.
|
|
If an URL querystring is provided, this is checked as well.</comment>
|
|
</function>
|
|
<function name="getTitle">
|
|
<return type="string">the title of the current page</return>
|
|
<comment>Gets the title of the current page.</comment>
|
|
</function>
|
|
<function name="getBodyText">
|
|
<return type="string">the entire text of the page</return>
|
|
<comment>Gets the entire text of the page.</comment>
|
|
</function>
|
|
<function name="getValue">
|
|
<return type="string">the element value, or "on/off" for checkbox/radio elements</return>
|
|
<param name="locator">an <a href="#locators">element locator</a></param>
|
|
<comment>Gets the (whitespace-trimmed) value of an input field (or anything else with a value parameter).
|
|
For checkbox/radio elements, the value will be "on" or "off" depending on
|
|
whether the element is checked or not.</comment>
|
|
</function>
|
|
<function name="getText">
|
|
<return type="string">the text of the element</return>
|
|
<param name="locator">an <a href="#locators">element locator</a></param>
|
|
<comment>Gets the text of an element. This works for any element that contains
|
|
text. This command uses either the textContent (Mozilla-like browsers) or
|
|
the innerText (IE-like browsers) of the element, which is the rendered
|
|
text shown to the user.</comment>
|
|
</function>
|
|
<function name="getEval">
|
|
<return type="string">the results of evaluating the snippet</return>
|
|
<param name="script">the JavaScript snippet to run</param>
|
|
<comment>Gets the result of evaluating the specified JavaScript snippet. The snippet may
|
|
have multiple lines, but only the result of the last line will be returned.
|
|
|
|
<p>Note that, by default, the snippet will run in the context of the "selenium"
|
|
object itself, so <code>this</code> will refer to the Selenium object, and <code>window</code> will
|
|
refer to the top-level runner test window, not the window of your application.</p>
|
|
|
|
<p>If you need a reference to the window of your application, you can refer
|
|
to <code>this.browserbot.getCurrentWindow()</code> and if you need to use
|
|
a locator to refer to a single element in your application page, you can
|
|
use <code>this.page().findElement("foo")</code> where "foo" is your locator.</p></comment>
|
|
</function>
|
|
<function name="getChecked">
|
|
<return type="string">either "true" or "false" depending on whether the checkbox is checked</return>
|
|
<param name="locator">an <a href="#locators">element locator</a> pointing to a checkbox or radio button</param>
|
|
<comment>Gets whether a toggle-button (checkbox/radio) is checked. Fails if the specified element doesn't exist or isn't a toggle-button.</comment>
|
|
</function>
|
|
<function name="getTable">
|
|
<return type="string">the text from the specified cell</return>
|
|
<param name="tableCellAddress">a cell address, e.g. "foo.1.4"</param>
|
|
<comment>Gets the text from a cell of a table. The cellAddress syntax
|
|
tableLocator.row.column, where row and column start at 0.</comment>
|
|
</function>
|
|
<function name="isSelected">
|
|
<return type="boolean">true if the selected option matches the locator, false otherwise</return>
|
|
<param name="locator">an <a href="#locators">element locator</a></param>
|
|
<param name="optionLocator">an option locator, typically just an option label (e.g. "John Smith")</param>
|
|
<comment>Verifies that the selected option of a drop-down satisfies the optionSpecifier.
|
|
|
|
<p>See the select command for more information about option locators.</p></comment>
|
|
</function>
|
|
<function name="getSelectedOptions">
|
|
<return type="string[]">an array of all option labels in the specified select drop-down</return>
|
|
<param name="locator">an <a href="#locators">element locator</a></param>
|
|
<comment>Gets all option labels for selected options in the specified select or multi-select element.</comment>
|
|
</function>
|
|
<function name="getSelectOptions">
|
|
<return type="string[]">an array of all option labels in the specified select drop-down</return>
|
|
<param name="locator">an <a href="#locators">element locator</a></param>
|
|
<comment>Gets all option labels in the specified select drop-down.</comment>
|
|
</function>
|
|
<function name="getAttribute">
|
|
<return type="string">the value of the specified attribute</return>
|
|
<param name="attributeLocator">an element locator followed by an</param>
|
|
<comment>Gets the value of an element attribute.</comment>
|
|
</function>
|
|
<function name="isTextPresent">
|
|
<return type="boolean">true if the pattern matches the text, false otherwise</return>
|
|
<param name="pattern">a <a href="#patterns">pattern</a> to match with the text of the page</param>
|
|
<comment>Verifies that the specified text pattern appears somewhere on the rendered page shown to the user.</comment>
|
|
</function>
|
|
<function name="isElementPresent">
|
|
<return type="boolean">true if the element is present, false otherwise</return>
|
|
<param name="locator">an <a href="#locators">element locator</a></param>
|
|
<comment>Verifies that the specified element is somewhere on the page.</comment>
|
|
</function>
|
|
<function name="isVisible">
|
|
<return type="boolean">true if the specified element is visible, false otherwise</return>
|
|
<param name="locator">an <a href="#locators">element locator</a></param>
|
|
<comment>Determines if the specified element is visible. An
|
|
element can be rendered invisible by setting the CSS "visibility"
|
|
property to "hidden", or the "display" property to "none", either for the
|
|
element itself or one if its ancestors. This method will fail if
|
|
the element is not present.</comment>
|
|
</function>
|
|
<function name="isEditable">
|
|
<return type="boolean">true if the input element is editable, false otherwise</return>
|
|
<param name="locator">an <a href="#locators">element locator</a></param>
|
|
<comment>Determines whether the specified input element is editable, ie hasn't been disabled.
|
|
This method will fail if the specified element isn't an input element.</comment>
|
|
</function>
|
|
<function name="getAllButtons">
|
|
<return type="string[]">the IDs of all buttons on the page</return>
|
|
<comment>Returns the IDs of all buttons on the page.
|
|
|
|
<p>If a given button has no ID, it will appear as "" in this array.</p></comment>
|
|
</function>
|
|
<function name="getAllLinks">
|
|
<return type="string[]">the IDs of all links on the page</return>
|
|
<comment>Returns the IDs of all links on the page.
|
|
|
|
<p>If a given link has no ID, it will appear as "" in this array.</p></comment>
|
|
</function>
|
|
<function name="getAllFields">
|
|
<return type="string[]">the IDs of all field on the page</return>
|
|
<comment>Returns the IDs of all input fields on the page.
|
|
|
|
<p>If a given field has no ID, it will appear as "" in this array.</p></comment>
|
|
</function>
|
|
<function name="getHtmlSource">
|
|
<return type="string">the entire HTML source</return>
|
|
<comment>Returns the entire HTML source between the opening and
|
|
closing "html" tags.</comment>
|
|
</function>
|
|
<function name="setContext">
|
|
<param name="context">the message to be sent to the browser</param>
|
|
<param name="logLevelThreshold">one of "debug", "info", "warn", "error", sets the threshold for browser-side logging</param>
|
|
<comment>Writes a message to the status bar and adds a note to the browser-side
|
|
log.
|
|
|
|
<p>If logLevelThreshold is specified, set the threshold for logging
|
|
to that level (debug, info, warn, error).</p>
|
|
|
|
<p>(Note that the browser-side logs will <i>not</i> be sent back to the
|
|
server, and are invisible to the Client Driver.)</p></comment>
|
|
</function>
|
|
<function name="getExpression">
|
|
<return type="string">the value passed in</return>
|
|
<param name="expression">the value to return</param>
|
|
<comment>Returns the specified expression.
|
|
|
|
<p>This is useful because of JavaScript preprocessing.
|
|
It is used to generate commands like assertExpression and storeExpression.</p></comment>
|
|
</function>
|
|
<function name="waitForCondition">
|
|
<param name="script">the JavaScript snippet to run</param>
|
|
<param name="timeout">a timeout in milliseconds, after which this command will return with an error</param>
|
|
<comment>Runs the specified JavaScript snippet repeatedly until it evaluates to "true".
|
|
The snippet may have multiple lines, but only the result of the last line
|
|
will be considered.
|
|
|
|
<p>Note that, by default, the snippet will be run in the runner's test window, not in the window
|
|
of your application. To get the window of your application, you can use
|
|
the JavaScript snippet <code>selenium.browserbot.getCurrentWindow()</code>, and then
|
|
run your JavaScript in there</p></comment>
|
|
</function>
|
|
<function name="setTimeout">
|
|
<param name="timeout">a timeout in milliseconds, after which the action will return with an error</param>
|
|
<comment>Specifies the amount of time that Selenium will wait for actions to complete.
|
|
|
|
<p>Actions that require waiting include "open" and the "waitFor*" actions.</p>
|
|
The default timeout is 30 seconds.</comment>
|
|
</function>
|
|
<function name="waitForPageToLoad">
|
|
<param name="timeout">a timeout in milliseconds, after which this command will return with an error</param>
|
|
<comment>Waits for a new page to load.
|
|
|
|
<p>You can use this command instead of the "AndWait" suffixes, "clickAndWait", "selectAndWait", "typeAndWait" etc.
|
|
(which are only available in the JS API).</p>
|
|
|
|
<p>Selenium constantly keeps track of new pages loading, and sets a "newPageLoaded"
|
|
flag when it first notices a page load. Running any other Selenium command after
|
|
turns the flag to false. Hence, if you want to wait for a page to load, you must
|
|
wait immediately after a Selenium command that caused a page-load.</p></comment>
|
|
</function>
|
|
</apidoc>
|