0% found this document useful (0 votes)
28 views

Selenium IDE

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views

Selenium IDE

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 29

Selenium IDE

Steve Kwon, Raphael Huang, Amad Hussain, Mubasil Shamim


Introduction
● Selenium is a portable software-testing framework for web applications
● Selenium IDE is a complete integrated development environment
● Implemented as a Firefox extension
● Selenium IDE includes the entire Selenium Core, can allow
○ recording
○ Editing
○ and debugging tests
● You can choose to use its recording capability,
● or you may edit your scripts by hand
Benefits
● Selenium IDE is very easy to use
● Convert the test to different programming languages
● User is not required to need any programming knowledge
● User can debug and set breakpoints
Disadvantages
● Selenium IDE is Firefox plugin, thus its support is limited to
Firefox only
● Selenium IDE doesn't support error handling
● Selenium IDE doesn't support test script grouping
● Selenium IDE doesn't support Database testing
Download and Install Selenium IDE
● Launch Mozilla Firefox Browser.
● Type URL: https://addons.mozilla.org/en-us/firefox/addon/selenium-ide/
Download and Install Selenium IDE
● Firefox will show do you want to
allow Mozilla Firefox to install
Selenium IDE Add-ons or not.

● Click on Install button as Shown


this image.
Download and Install Selenium IDE (continued)
● Firefox will automatically install
Selenium IDE software.
● After the installation is
completed, restart the Firefox.
● Click on the “Restart Now”
button to reflect the Selenium
IDE installation.
Download and Install Selenium IDE (continued)
● Once the Firefox is booted and
started again, we can see
selenium IDE under the tools
menu list.
● Click on Tools menu list,
Selenium IDE will be displayed
in the list.
Download and Install Selenium IDE (continued)

● Click on Selenium IDE, it will


launch Selenium IDE
Opening the IDE

● To run the Selenium IDE, simply select it


from the Firefox Tool menu.
● It opens with an empty script-editing
window and a menu for loading, or
creating new test cases.
Toolbar

● The toolbar contains buttons for controlling the execution of your test
cases, including a step features for debugging your test cases.

● The right-most button, the one with the red dot, is the record button.
Toolbar Elements
● Speed Control: controls how fast your test case runs.

● Run All: Runs the entire test suite when a test suite
with multiple test cases is loaded.

● Run: Runs the currently selected test. When only a single


test is loaded, this button and the Run All button have the
same effect.

● Pause/Resume: Allows stopping and re-starting of a


running test case.
Toolbar Elements (continued)
● Step: Allows you to “step” through a test case by
running it one command at a time. It is useful for
debugging test cases.

● Apply Rollup Rules: This advanced feature allows


repetitive sequences of Selenium commands to be
grouped into a single action. Detailed documentation
on rollup rules can be found in the UI-Element
Documentation on the Help menu.

● Record: Records the user’s browser actions.


Toolbar Element in Selenium IDE v2.9 (the most recent ver.)

● The Selenium IDE Scheduler works with jobs. A job


contains information about what the scheduler
should do. It contains a title, it contains the test suite
that should be automatically run or played and it
contains the schedule information, which is the time
when the test suite should be run.
Commands (Selenese)
● Test Script: Sequence of commands used to test an application
● Can test:
○ Existence of UI elements based on HTML tags
○ Specific content
○ Broken Links
○ Input Fields
○ Selection list options
○ Submitting forms
○ Table Data
○ Etc…
● 3 Command Types:
○ Actions
○ Accessor
○ Assertion
Actions
● Manipulate the state of the application
○ Type this box / Click this link / Select option

● Test is stopped on failure

● Used with the “AndWait” suffix


○ clickAndWait / typeAndWait
○ Notifies the browser that the action calls the server and Selenium should wait for the response
Accessors
● Examine the state of the application and store the result in variables
○ storeTitle

● Also used to automatically generate assertions


Assertions
● Verify that the state of the application matches expectation

● Types
○ Assert: Aborted on failure
○ Verify: Continues on failure and logs the error
○ WaitFor: Succeed when a condition becomes true or immediately if already true. Fail and halt if the
condition does not become true within the timeout setting
Common Commands
● type - Sets value of an input field as if typed in

● open - Opens a page using a url

● click - Clicks a link, button checkbox, or radio button

● select - Selects an option from a drop-down using an option locator

● selectFrame - Selects a frame within a current window


Common Commands
● verifyTitle/assertTitle - Verifies an expected page title

● verifyTextPresent - Verifies that a specified string appears somewhere on the


rendered page

● waitForPageToLoad - Waits for new page to load


○ Use instead of the “andWait” suffix like with “clickAndWait” or “typeAndWait”

● pause - Wait for specified amount of time


Common Commands
● highlight - Briefly changes the backgroundColor of the specified element.
○ Useful for debugging

● store/storeExpression - sets a variable with some value to be used with other


commands

● echo - prints specified message into the log area


○ Useful for debugging

● refresh - simulates user clicking the “refresh” button


Locators - ID/Name
● Uses ID or Name html property to locate elements
● Defaults to first instance in the document if multiple matches
Locators - Link Text
● Finds the first instance of a hyperlink with specified text
Locators - CSS
● Generalized way to select using HTML tags
● Uses the following levels of granularity for syntax:

Find By Target Syntax Example

Tag and ID css=tag#id css=input#email

Tag and Class css=tag.class css=input.inputtext

Tag and Attribute css=tag[attribute=value] css=input[name=lastName]

Tag, Class, and Attribute css=tag.class[attribute=value] css=input.inputtext[tabindex=1]

Inner Text css=tag:contains(“inner text”) css=span:contains(“Help”)


Locators - CSS
Tag, Class, and Attribute css=tag.class[attribute=value] css=input.inputtext[tabindex=1]
Locators - DOM
● Use the Javascript document object to find elements/text on the page
● Useful for dynamically generated content
Locators - XPath
● If we represent the HTML as an XML Tree, XPath is the path to a specific
element node.
● Easy to implement as long as your page structure does not change.
● Can use plugins such as Firebug (Firefox) or XPath Helper (Chrome) to generate
Converting to Other Programming Languages
● Test cases can be exported to Python, Java, etc, for use in integrated unit tests.
● Be sure to install the required Selenium dependencies using pip/maven
● WebDriver is generally more concise and better supported than Remote Control
Sources/More info
● http://toolsqa.com/selenium-ide-tutorial/
● https://www.guru99.com/selenium-tutorial.html
● http://www.softwaretestinghelp.com/selenium-ide-script-selenium-tutorial-3/

You might also like