Selenium Commands and Results
The Alternative To HP QuickTest Professional(tm) (QTP)
Many testers, developers, and IT managers ask Appvance to compare HP QuickTest Professional (QTP) to AIQ with Selenium IDE. Appvance provides app performance test automation solutions for organizations needing to improve the reliability and reduce service interruptions in their Web applications, Rich Internet Applications (RIA, using Ajax, Flex, Flash,) Web services and Business Process Management services. Appvance is the app performance expert for dozens of tools. This comparison document helps organizations look for an inexpensive solution that works with their latest applications. Here is a high-level summary:
Category
HP QTP 10
Appvance Enterprise 7.0.1 with Selenium 1.0
Technical experience required to be successful
Web 1.0 Record/Playback
Rich Internet Application (RIA, Using Ajax) Support
Drill down to root cause of functional issues/crashes
Record Tests
MS IE 9,10
Firefox 3.6 or later
Playback Tests
MS IE 9,10
MS IE 9,10 Firefox 3.6 or later, Safari, Chrome
Data-driven Testing
Reusable Test Components
Agile software development lifecycle (SDLC) support
Add-ons available
Language Support
VBScript
Selenese, Java, Ruby, Perl, PHP, Python, C#, Groovy
Functional Testing, Load Testing, Service Monitoring from one test script
Run tests in the Cloud, in your QA lab, or both
Selenium Command Language Reference (Selenese)
Selenium implements a domain-specific language (DSL) named Selenese.
Appvance implements the SeleniumHtmlUnit object library in AIQ to operate Selenese commands in HtmlUnit
Results Analysis and Reports for Root Cause Analysis and Mitigation
AIQ records the time it takes to operate each step in a Selenium test and the overall time to process the test use case (transaction.) AQI's Results Analysis Engine summarizes the transaction logs into a set of charts and reports.
Read Appvance Results Analysis
Scaling Selenium Tests in the Grid and Cloud
AIQ is a distributed test environment. AIQ runs Selenium tests on a Grid of your test equipment, in a Cloud Computing environment, or both. Read The Test Deployment Guide
Continuous Integration and Selenium
AIQ is an ideal environment for automating Selenium test operations from a Continuous Integration environment. The CI platform starts a TestScenario test and AIQ automatically provisions and deploys tests to the available TestNodes in your own Grid or in a Cloud Testing environment.Read The Test Deployment Guide
Selenium Command Reference
The following table summarizes the list of implemented and unimplemented Selenese commands in SeleniumHtmlUnit.
Command
Wait Command
Target
Value
Selenium Control
setTimeout
milliseconds
setMouseSpeed
number of pixels
setMouseSpeedAndWait
setSpeed
milliseconds
setSpeedAndWait
addLocationStrategy
strategyName
functionDef
addLocationStrategyandWait
allowNativeXpath
boolean
allowNativeXpathAndWait
ignoreAttributesWithoutValue
boolean
ignoreAttributesWithoutValueAndWait
assignId
locator
identifier
assignIdAndWait
captureEntirePageScreenShot
filename, kwargs
captureEntirePageScreenShotAndWait
echo
message
pause
milliseconds
runScript
javascript
runScriptAndWait
waitForCondition
javascript
milliseconds
waitForPageToLoad
milliseconds
waitForPopUp
windowID
milliseconds
fireEvent
locator
eventName
fireEventAndWait
Browser Operations
open
url
openAndWait
openWindow
url
windowID
openWindowAndWait
goBack
goBackAndWait
refresh
refreshAndWait
close
deleteCookie
name
path
deleteCookieandWait
deleteAllVisibleCookies
deleteAllVisibleCookiesAndWait
setBrowserLogLevel
logLevel
setBrowserLogLevelAndWait
Cookie Operations
createCookie
nameValuePair
optionString
createCookieAndWait
deleteCookie
name
optionString
deleteCookieAndWait
deleteAllVisibleCookies
deleteAllVisibleCookiesAndWait
Popup Box Operations
answerOnNextPrompt
answer
answerOnNextPromptAndWait
chooseCancelOnNextConfirmation
chooseCancelOnNextConfirmationAndWait
chooseOkOnNextConfirmation
chooseOkOnNextConfirmationAndWait
Checkbox & Radio Buttons
check
locator
checkAndWait
uncheck
locator
uncheckAndWait
Lists & Dropdowns
addSelection
locator
optionLocator
addSelectionAndWait
removeSelection
removeSelectionAndWait
locator
optionLocator
removeAllSelections
removeAllSelectionsAndWait
locator
Edit Fields
type
locator
value
typeAndWait
typeKeys
locator
value
typeKeysAndWait
setCursorPosition
locator
position
setCursorPositionAndWait
Keyboard Operations
keyDown
locator
keySequence
keyDownAndWait
keyPress
locator
keySequence
keyPressAndWait
keyUp
locator
keySequence
keyUpAndWait
altKeyDown
altKeyDownAndWait
altKeyUp
altKeyUpAndWait
controlKeyDown
controlKeyDownAndWait
controlKeyUp
controlKeyUpAndWait
metaKeyDown
metaKeyDownAndWait
metaKeyUp
metaKeyUpAndWait
shiftKeyDown
shiftKeyDownAndWait
shiftKeyUp
shiftKeyUpAndWait
Mouse Operations
click
locator
clickAndWait
clickAt
locator
coordString
clickAtAndWait
doubleClick
locator
doubleClickAndWait
doubleClickAt
locator
coordString
doubleClickAtAndWait
contextMenu
locator
contextMenuAndWait
contextMenuAt
locator
coordString
contextMenuAtAndWait
mouseDown
locator
mouseDownAndWait
mouseDownA
locator
coordString
mouseDownAtAndWait
mouseMove
locator
mouseMoveAndWait
mouseMoveAt
locator
coordString
mouseMoveAtAndWait
mouseOut
locator
mouseOutAndWait
mouseOver
locator
coordString
mouseOverAndWait
mouseUp
locator
mouseUpAndWait
mouseUpAt
locator
coordString
mouseUpAtAndWait
dragAndDrop
locator
movementString
dragAndDropAndWait
dragAndDropToObject
sourceLocator
destLocator
dragAndDropToObjectAndWait
Form Operations
submit
formLocator
submitAndWait
Windows/Element Selection
select
locator
optionLocator
select AndWait
selectFrame
locator
selectWindow
windowID
focus
locator
focusAndWait
highlight
locator
highlightAndWait
windowFocus
windowFocus AndWait
windowMaximize
windowMaximizeAndWait
Selenium Accessors
store
expression
variableName
storeAlert
variableName
assertAlert
pattern
assertNotAlert
pattern
verifyAlert
pattern
verifyNotAlert
pattern
waitForAlert
pattern
waitForNotAlert
pattern
storeAlertPresent
variableName
assertAlertPresent
pattern
assertNotAlert Present
pattern
verifyAlertPresent
pattern
verifyNotAlertPresent
pattern
waitForAlertPresent
pattern
waitForNotAlertPresent
pattern
storeAllButtons
variableName
assertAllButtons
pattern
assertNotAllButtons
pattern
verifyAllButtons
pattern
verifyNotAllButtons
pattern
waitForAllButtons
pattern
waitForNotAllButtons
pattern
storeAllFields
variableName
assertAllFields
pattern
assertNotAllFields
pattern
verifyAllFields
pattern
verifyNotAllFields
pattern
waitForAllFields
pattern
waitForNotAllFields
pattern
storeAllLinks
variableName
assertAllLinks
pattern
assertNotAllLinks
pattern
verifyAllLinks
pattern
verifyNotAllLinks
pattern
waitForAllLinks
pattern
waitForNotAllLinks
pattern
storeAllWindowIds
variableName
assertAllWindowIds
pattern
assertNotAllWindowIds
pattern
verifyAllWindowIds
pattern
verifyNotAllWindowIds
pattern
waitForAllWindowIds
pattern
waitForNotAllWindowIds
pattern
storeAllWindowNames
variableName
assertAllWindowNames
pattern
assertNotAllWindowNames
pattern
verifyAllWindowNames
pattern
verifyNotAllWindowNames
pattern
waitForAllWindowNames
pattern
waitForNotAllWindowNames
pattern
storeAllWindowTitles
variableName
assertAllWindowTitles
pattern
assertNotAllWindowTitles
pattern
verifyAllWindowTitles
pattern
verifyNotAllWindowTitles
pattern
waitForAllWindowTitles
pattern
waitForNotAllWindowTitles
pattern
storeAttribute
attributeLocator
variableName
assertAttribute
attributeLocator
pattern
assertNotAttribute
attributeLocator
pattern
verifyAttribute
attributeLocator
pattern
verifyNotAttribute
attributeLocator
pattern
waitForAttribute
attributeLocator
pattern
waitForNotAttribute
attributeLocator
pattern
storeAttributeFromAllWindows
attributeName
variableName
assertAttributeFromAllWindows
attributeName
pattern
assertNotAttributeFromAllWindows
attributeName
pattern
verifyAttributeFromAllWindows
attributeName
pattern
verifyNotAttributeFromAllWindows
attributeName
pattern
waitForAttributeFromAllWindows
attributeName
pattern
waitForNotAttributeFromAllWindows
attributeName
pattern
storeBodyText
variableName
assertBodyText
pattern
assertNotBodyText
pattern
verifyBodyText
pattern
verifyNotBodyText
pattern
waitForBodyText
pattern
waitForNotBodyText
pattern
storeChecked
variableName
assertChecked
pattern
assertNotChecked
pattern
verifyChecked
pattern
verifyNotChecked
pattern
waitForChecked
pattern
Unimplemented Selenese Commands
SeleniumHTMLUnit is an AIQ object library that translates Selenese commands on-to-fly and runs the commands using the HTMLUnit headless browser. Some Selenese commands do not make sense in an AIQ context. For example, AIQ provides cookie management commands of its own. The following is a list of Selenese commands not implemented in SeleniumHTMLUnit. AIQ throws a Not Implemented exception when encountering one of the following commands:
NotImplemented commands
altKeyDown
getAlert
getTable
mouseMoveAt
altKeyUp
getAllButtons
getWhetherThisFrameMatchFrameExpression
mouseUpAt
answerOnNextPrompt
getAllFields
getWhetherThisWindowMatchWindowExpression
openWindow
captureScreenshot
getAllLinks
getWhetherThisWindowMatchWindowExpression
refresh
chooseCancelOnNextConfirmation
getAllWindowIds
getXpathCount
setBrowserLogLevel
chooseOkOnNextConfirmation
getAllWindowNames
highlight
setContext
clickAt
getAllWindowTitles
isAlertPresent
setCursorPosition
close
getAttributeFromAllWindows
isConfirmationPresent
setMouseSpeed
controlKeyDown
getBodyText
isEditable
shiftKeyDown
controlKeyUp
getConfirmation
isOrdered
shiftKeyUp
controlKeyUp
getCookie
isPromptPresent
start
createCookie
getCursorPosition
keyDown
submit
deleteCookie
getElementHeight
keyPress
typeKeys
doubleClick
getElementIndex
keyUp
waitForFrameToLoad
doubleClickAt
getElementPositionLeft
metaKeyDown
waitForPopUp
dragAndDrop
getElementPositionTop
metaKeyUp
windowFocus
dragAndDropToObject
getElementWidth
mouseDownAt
windowMaximize
dragdrop
getExpression
mouseMove
fireEvent
getLocation
getMouseSpeed
getPrompt
Last updated: June 26, 2023
If you have any feedback on this topic, please contact us at documentation@appvance.ai