Thursday, November 22, 2018

Introduction to Selenium

There are many testing tools in market like QTP, SilkUI, and Selenium and so on. However, individuals lean toward Selenium because Selenium is an open source (i.e. you can download this tool free of cost) automation testing tool. We have QTP likewise for automation testing yet you have to pay to HP folks on the off chance that you need to utilize QTP.
You can work on multiple operating systems using Selenium. Selenium is the only tool which can work on MAC, Windows, Linux, and Solaris.
It is used only for web-based applications. QTP can work on windows but Selenium can be used only for web-based applications or websites.
By using Selenium, you can work on multiple OS. Selenium is developed to work at MAC, Windows, Linux, and Solaris.
Platforms supported By Selenium:
  • Windows
  • OS X (Mac OS)
  • Linux
  • Solarsis
Presently, it supports mobiles too. There is another tool called Appeium which is an expansion to Selenium. Appeium offers help to IOS and also Android.
Languages used with Selenium:
You can write Selenium code in any language mentioned below:
  • Java
  • C#
  • Ruby
  • Python
  • PHP
  • Perl
NOTE: In the event that your application is based on one language, you may use any other language to automate it. Like if your application is created in C# and to automate its testing you may use Java.
SO THE LANGUAGE WHAT YOU WRITE YOUR AUTOMATION CODE IS INDEPENDENT OF THE LANGUAGE WHAT YOUR APPLICATION IS BUILT ON.
Browsers supported by Selenium:
  • Internet Explorer
  • Firefox
  • Chrome
  • Safari and many more
Selenium is the only tool which supports cross browsers testing.
Due to such a large number of features (like various language support, numerous browser, different OS support) given by Selenium, it is so well known in the market.
Selenium History:
Selenium came into existence in 2004 when Jason Huggins was testing an internal application at ThoughtWorks.
 Available versions of Selenium:
  • Selenium 1.0 – formally we call it RC (Remote control server).
It is officially depreciated by Selenium team.
The purpose behind Depreciation is:
Selenium 1.0 Architecture:

  • Selenium 2.0 –Web Driver
  • Recently Selenium 3.0 version also came (for it minimum java version required is 1.8)
Selenium 2.0 Architecture– Web Driver:

So we are conquering the first disadvantage of Selenium 1.0.
How the second disadvantage is survived:
Editor instead of using java to trigger the events, utilizes Browsers own/native language to trigger the events (or to converse with the application). Suppose our Firefox browser is built in Java so to converse with a site which is running on Firefox, editor use java. Our IE is based upon C# so editor uses C# to converse with the application in C#. The site which is running on IE can’t stop C# to trigger an event so hence the second issue is settled.
Working of Selenium WebDriver:
Selenium WebDriver working can be clarified in 2 different ways:
  • Nontechnical- using the analogy
  • Technical
Nontechnical- using the analogy:  To explain working, the analogy used is taxi driving.
The manner in which a cab driver drives a taxi, same way Selenium WebDriver drives a browser.
In taxi driving, there are 3 sections:
  • The customer, who chooses where to go and how to arrive, he advises this to the cabbie.
  • The cab driver, the cab driver, who goes about according to the customer’s solicitations and sends his very own solicitations to the vehicle.
  • The vehicle, it goes about according to cabbie’s solicitations.


So also, in Selenium WebDriver test automation (and other tools), there are 3 sections:
  • Test engineer, who writes the automation code, which sends requests to the browser driver component.
  • The browser driver component, who executes the test requests, sent by the engineer, it sends its own request to the browser.
  • The browser, who executes the browser driver requests.
So this is the analogy:
  1. Test engineer <-> The customer
  2. The browser <->Cab driver
  3. The browser <->Vehicle(Car)
Technical explanation :
Beneath steps happen when the automation script is executed:
  • For each Selenium command, an HTTP request is created and sent to the browser driver
  • Using the HTTP server, the browser driver get the HTTP requests
  • The HTTP server implements the Selenium command and executes them on the browser
  • The execution status is sent back to the HTTP server which in turn sends the status back to the automation script.

Selenium Job Roles

The mainstream programming testing work titles after doing Selenium WebDriver training are:
  • Quality Engineer
  • Automation Test Lead
  • QA Engineer
  • Selenium Automation Analyst
  • Senior Test Engineer
Visit the link for Best Selenium Training in Gurgaon.

Who should choose Software testing as a career?

  • One who is good in comprehending intelligent riddles: Software will go to the market if a tester says there are no bugs in the product and it is prepared to release. Tester discovers bugs and likewise breaks the framework as far as stress testing.
  • One who love helping other people: A tester help in releasing a quality product to the market. To release a decent product, engineers give a valiant effort. Yet at the same time risks are there will be a few errors. Being a tester you have to discover those mix-ups.
  • One who loves to take challenges: A tester needs to investigate the framework for comprehension and discovering bugs. At that point, he reports the bugs, which are settled by the engineer. Thus, at last, a quality product is conveyed to the market.
  • One who loves coding: An Automation Tester writes code to discover the bugs in the framework. And in this way, a quality product will be conveyed.
  • One who loves to communicate with people: A tester needs to associate with engineers and client to get more information on domain knowledge.
  • One who loves to be in a team where quality products will be delivered: Being a tester one help in conveying a quality product which makes everyone cheerful.

Wednesday, November 14, 2018

Selenium Summary – IDE, RC, WebDriver, Grid

In my previous posts, I have shared details about all selenium segments. Below is the summery.
The whole Selenium Tool contains four segments:
  1. Selenium IDE, a Firefox add-on that you can just use in making generally basic test cases.
  2. Selenium RC also called Selenium 1. It is the first Selenium tool which allows users to use the programming language to make complex test cases.
  3. WebDriver, the more up to date. It allows your test scripts to communicate directly to the browser.
  4. Selenium Grid is used with Selenium RC to execute parallel tests across different browsers and operating systems.
Selenium RC and WebDriver were merged to frame Selenium 2.
Check the slide I found from the LinkedIn account of RedBush Technologies providing training details on Selenium WebDriver. It is the Best Selenium Training Institute in Gurgaon and provides the Best Selenium Training in Gurgaon.

Introduction to Selenium Grid

The previous article was about Selenium WebDriver. Now I am going to write about the Selenium Grid.
Selenium Grid is a tool used together with Selenium RC to run parallel tests across different machines and different browsers all at the same time. Parallel execution means running multiple tests at once.


Features:
  • Enables simultaneous running of tests in multiple browsers and environments.
  • Saves time enormously.
  • Utilizes the hub-and-nodes concept. The hub acts as a central source of Selenium commands to each node connected to it.

Ref – RedBush Technologies, it is the Software Development and Training Institute. It is the Best Selenium Training Institute in Gurgaon and provides the Best Selenium Training in Gurgaon.

Introduction to Selenium WebDriver

Selenium WebDriver is better than both Selenium IDE and Selenium Remote Control (RC) in many aspects. It implements a more modern and stable approach to automating the browser’s actions. Selenium WebDriver, unlike Selenium RC, does not rely on JavaScript for Automation.
Selenium WebDriver controls the browser by directly communicating with it.
The supported languages are the same as those in Selenium RC (Remote Control).
  • Java
  • C#
  • PHP
  • Python
  • Perl
  • Ruby

Pros
  • Installation is simpler than Selenium RC
  • Communicates directly to the browser
  • Browser interaction is more realistic
  • No need for a separate component such as the RC server
  • Faster execution time than RC and IDE
Cons
  • Installation is more complicated than Selenium IDE
  • Requires programming knowledge
  • Can not readily support new browsers
  • Has no built-in mechanism for logging runtime messages and generating test results
Ref – RedBush Technologies, it is Gurgaon based Software Development and Training Institute. It is the Best Selenium Training Institute in Gurgaon and provides the Best Selenium Training in Gurgaon.

Introduction Selenium RC

Selenium RC was the flagship testing framework of the whole Selenium project for a long time. This is the first automated web testing tool that allowed users to use a programming language they prefer. As of version 2.25.0, RC can support the following programming languages:
  • Java
  • C#
  • PHP
  • Python
  • Perl
  • Ruby
Pros
  • Cross-browser and cross-platform
  • It can perform looping and conditional operations
  • It can support data driven testing
  • It has matured and complete API
  • It can readily support New Browsers
  • Faster execution than IDE
Cons
  • Installation is more complicated than IDE
  • Must have programming knowledge
  • Need selenium RC server to be running
  • API contains redundant and confusing commands
  • Browser interaction is less realistic
  • Inconsistent result and uses JavaScript
  • Slower execution time than WebDriver

Ref – RedBush Technologies, it is the Software Development and Training Institute. It is the Best Selenium Training Institute in Gurgaon and provides the Best Selenium Training in Gurgaon.

Introduction – Selenium IDE

Selenium Integrated Development Environment (IDE) is the most simple framework in the Selenium suite. And it is very easy to learn. It is a Firefox plugin that you can use like other plugins.
However, Selenium IDE should just be utilized as a prototyping tool, due to its simplicity. For more advanced test cases, you should use either Selenium RC or WebDriver.
Pros
  • Easy to install
  • No programming experience required. Only HTML and DOM are needed.
  • It can export tests to formats usable in Selenium RC and WebDriver
  • Has built-in help and test result reporting module.
  • Extension support provided
Cons
  • Available only in Firefox
  • Designed only to create prototypes of tests
  • No support for iteration and conditional operations
  • Test execution is slow compared to that of Selenium RC and WebDriver

Ref – RedBush Technologies, it is a Software Development and Training Institute. It is the Best Selenium Training Institute in Gurgaon and provides the Best Selenium Training in Gurgaon.

Movie Booking System – Java/NetBeans Project

I am writing this blog to share an interesting project of RedBush Technologies i.e. Movie Booking System.
It was earlier shared on their website under Project Bank. And today RedBush shared a video, explaining the same project.
In case you are looking for such project here is the link to download the project. And below is the video explaining this project.


RedBush Technologies is Software Development and Training Institute. It is the Best Selenium Training Institute in Gurgaon and provides the Best Selenium Training in Gurgaon.

Who developed Selenium?

Since Selenium is a collection of different tools, it had different developers as well. Below are the key persons who made notable contributions to the Selenium Project
Primarily, Selenium was created by Jason Huggins in 2004. An engineer at ThoughtWorks, he was working on a web application that required frequent testing. Having realized that the repetitious Manual Testing of their application was becoming more and more inefficient, he created a JavaScript program that would automatically control the browser’s actions. He named this program as the “JavaScriptTestRunner.”
Seeing potential in this idea to help automate other web applications, he made JavaScriptRunner open-source which was later re-named as Selenium Core.
Visit RedBush Technologies

Selenium Trainer Profile – Ritu Bajar

...Continue writing about Automation Testing, I'm writing about the Selenium trainer at RedBush technologies.
Ritu Bajar, a highly accomplished trainer, has an extensive work experience of 10+ years in IT Industry.
She holds a B.Tech degree in Computer Science and Engineering from ITM, Gurgaon, now known as NorthCamp University. She has 5+ years of training experience in Selenium and Java. She has worked with companies like TCS, TSYS International etc.
She is “International Software Testing Qualifications Board” certified professional.
Her contribution to students’ success is, support in training, with the best theoretical example, and practical.
Her passion for training program led to the establishment of “RedBush Technologies – Best Training Institute in Gurgaon” in 2013.
Having shouldered responsibilities of business management and training brings a wealth of corporate experience which reinforces her skills to impact and connect with students.
She has trained above 200 students in her carrier.
Ritu’s deep perspective, yet surprisingly simplicity leave an everlasting impact on the students as well as the ones who get to know her.  She is full of Passion and Purpose, is high spirited and, has a never-ending approach towards innovation.
Ritu is providing training on following courses –
  • Selenium Automation Testing
  • Java – Core Java to Advance Java
  • C/C++ Programming Language
Below is the latest review from her student says, “RedBush Technologies is the Best Selenium Training Institute in Gurgaon and provides the Best Selenium Training in Gurgaon.


What should you know about Selenium Automation Testing

Today, I’m writing what students need to know about Selenium. Selenium is an open source software. It is used for automation testing. The test cases carried out using scripts.


The most important thing you need to know that only web applications can be tested using Selenium. We can neither test any desktop application nor test any mobile application using Selenium.
A reason for Selenium’s popularity is that it is open-source. So, no license required. Some other reasons for its popularity are as below:
  • It is good for all operating systems.
  • Testing can be done using any popular language like Java, Python, C#, PHP, Ruby, Perl, and .Net
  • Tests can be done using any browser: Mozilla Firefox, Internet Explorer, Google Chrome, Safari or Opera.
  • It has some integrated tool to manage test case and to generate reports.


Ref - RedBush Technologies is Software Development and Training Institute. It is the Best Selenium Training Institute in Gurgaon and provides the Best Selenium Training in Gurgaon.

Introduction to C Language

C is a procedural programming language. It was at first created by Dennis Ritchie somewhere in the range of 1969 and 1973. It was essentia...