Summary -

In this topic, we described about the below sections -

Selenium IDE was initially created by Shinya Kasatani from Japan and contributed to the Selenium project in 2006. It is initially known as Selenium Recorder and later names as Selenium IDE.

Selenium IDE (Integrated Development Environment) is a tool that helps to develop Selenium tests by using record-and-playback functionality. It’s an easy-to-use Chrome and Firefox extension and similar to QTP. This feature increases the speed in creating test cases, effortless to install and easy to learn.

Unlike Selenium WebDriver and RC, it is a record-run-playback tool uses to develop Selenium Test cases and does not require any programming knowledge to write test scripts. However, the one who creating the test cases should have a basic knowledge of HTML, JavaScript and DOM (Document Object Model).

We can simply record the process with the browser to create test cases and use the playback option to re-run the test cases.

IDE does not require any additional setup to get started and just need to add the extension to the specific browser.

Selenium IDE provides a GUI (Graphical User Interface) for easily recording interactions with the website.

Selenium IDE should use as a prototyping tool, but not an overall solution for developing and maintaining complex test suites.

Selenium IDE supports autocomplete mode when creating tests that serves two purposes -

  • Helps testers to enter commands more quickly.
  • Restricts the user from entering invalid commands.

What is Selense?

Scripts are recorded with Selenium IDE in a special test scripting language called Selenese for Selenium. Selenese comes up with commands for bringing out actions in a web browser and restoring data from the resulting pages.

These Selenese commands are used in Selenium IDE that are used to test web applications.

In Selenese, we can perform the test activities on the existence of UI elements based on their HTML tags, testing for specific content, testing for broken links, testing of input fields, selection list options, submitting forms, and table data among other things. Additionally, Selenium commands support testing of window size, mouse position, alerts, Ajax functionality, windows pop-up, event handling, and many other web-application features.

The tests recorded via the plugin can exported to the programming languages like Java, Ruby, Python, etc.

A command in Selenium describes that "what Selenium has to do". Selenium selenese commands are classified into three types –

  • Actions
  • Accessors
  • Assertions

These are discussed in detail in Selenium Selenese Commands

IDE Features (In short)

  • Automate any webpage by providing URL.
  • Control the execution speed of automation.
  • Error / exception logging.
  • Finding an element on a webpage.
  • Record and Play.
  • Storing test cases / test scripts.
  • Support for several types of locators.

Advantages

  • Selenium IDE is very easy to use.
  • It has the capability to convert the test to different programming languages such as html, java etc.
  • Selenium IDE provides Logging capabilities using file login plug-in.
  • Selenium IDE is flexible for the users.
  • It is now cross-browser.
  • Selenium IDE tests are no longer brittle.
  • Selenium IDE is now better at waiting till the app loads.
  • Supports to code conditional logic.
  • Supports modular test scripts.
  • Supports embedded code.
  • Supports to edit scripts.
  • Has a debugger, User can debug and set breakpoints in IDE.
  • Supports run scripts in parallel.
  • Can be run from CI build scripts.
  • scripts can be managed in a code repository.
  • Is extensible with plugins.
  • Can perform visual UI testing.
  • Can visually test responsive web apps.
  • Helps pinpoint the cause of front-end bugs.

Disadvantages

  • It is Firefox plugin, thus its support limited to Firefox only.
  • Doesn't support iteration and conditional statement.
  • Doesn't support error handling and database testing.
  • Doesn't support test script grouping.
  • Do not support alerts, pop-ups and navigations.
  • Doesn’t export WebDriver scripts.
  • Doesn’t support data-driven scripts.
  • Cannot be used in the testing of iPhone and Android applications.
  • Reading from external files and uploading files is not supported.