Tuesday, September 6, 2011

Selenium - Basics For Designers (A Step Back)

SELENIUM AUTOMATION – ONE STEP BACK

Basic Understanding of Selenium:-

§ Selenium should be considered as a placeholder for developing automation tests and it may not be considered as tool which satisfies your requirement.

§ The reason behind selenium supports multiple languages is to extend/use the language support (Java/C#/Ruby).

§ We can develop your own test tool feature by using the language supported by Selenium.

§ We can also integrate Selenium with any tool which is developed in language supported by Selenium or the languages having access to the system resources (Ex: executing External programs from Command Prompt).

§ Selenium is not bonded with any unit testing frameworks, instead it can be integrated with any unit testing frameworks like (TestNG, NUnit, JUnit, RSpec, Cucumber etc).

Why Unit Testing Frameworks for Functional Automation:-

§ Though Unit Testing Frameworks are developed to do the White Box Testing, the idea behind using with Functional Automation is to reuse the features provided by the Unit Testing Frameworks for Functional Test Automation.

§ We would be having many unit- testing frameworks but selecting the right tool to integrate with selenium is based on Automation Requirement and Approach

§ Following are some of the areas where we can reuse the unit testing framework features for Automation




We can also customize the open source unit testing frameworks for Custom Report Generation, Changing the sequence of Execution and logging additional information for each test case.

Choosing The Right Language For Automation:-

Selenium supports multiple languages (Java/C#/Python) , choosing a right language is again an important factor before starting Selenium Automation Project. Following are some of the factors that influences this

- Skill of the Automation Resources.

- Accessing Application code base for Test Data Creation (using Mock Objects, using application APIs).

- Integrating with other open source tools in the same language. (Ex: use of Sikuli for a third party button click).

- Availability of Open Source APIs/libraries to develop a new feature for automation (Ex: use of XL API’s like poi, jxl, xstream for Java).

Selenium Framework Skeleton with Minimum Modules:-






Modal Objects: - Test Data Objects with mode and flow specification (Same Object can be used for User Registration Add and User Registration Edit.

Tool Integration Libraries: - We can write libraries for new tool that is going to be integrated and should be accessible in the Test Layer.

(Hope other modules are Self Explanatory).

Note: - Use of OOPs within Automation framework is highly encouraged but let it not be too complex.

No comments:

Post a Comment