PAGE-1 : INTRODUCTION TO AUTOMATION TESTING



BLOG -1 AUTOMATION IN SELENIUM -INTRODUCTION

What is Selenium ?


Selenium automates browsers. 
Selenium is an open source functional automation tool.

We have testing which is divided into two streams:

1. One is functional and
2. Another is Non-Functional.

‘Functional Testing’, is the type of testing done against the business requirements of application. It is a black box type of testing.

The ‘Non-Functional’, Testing is the type of testing done against the non-functional requirements.

The testing of software attributes which are not related to any specific function or user action like performance, scalibility, security or behavior of application under certain constraints.
In manual testing our main activity is to write test cases and these test cases will be executed
manually by some resource like test engineer.

When comes to Automation , all the manual test cases will be converted to test scripts with the help
of some tools like Selenium, QTP ,Sikuli etc.


The process of converting manual test cases to test scripts with the help of some automation tools  is called as “Automation”.
  

So I can use any of the automation tools to convert the test cases to the test scripts.



So you may have a doubt  , Sir in manual testing we are writing the test cases and executing the test
Cases  ,in test scripts we are doing the same activity the same test cases converted to test scripts
and executing it .So what is the use: The main advantage is we can save time.


Now another questions arises : How much time?

Suppose i am having 500 test cases , per day how many test cases we can execute??
50/60 test cases can be executed manually per day. So all the test cases can be executed in 9-10 days. Time . Suppose your lead says that I cannot allocate you 10 days time in every sprint to execute the test cases, you have to complete in 4-5 days  then  what will you do?
If we are executing it in 4-5 days then there can be a challenge to the quality.
So what’s the solution ,

There can be two solutions :
1. Add few more resource which can help you to execute tests in the time frame
2. Or else automation.

Remember that it’s not possible to automate 100% of the application, majority can be automated but few cannot be

For instance, if the application’s user interface will change considerably in the near future, then any automation might need to be rewritten anyway. Also, sometimes there simply is not enough time to build test automation. For the short term, manual testing may be more effective. If an application has a very tight deadline, there is currently no test automation available, and it’s imperative that the testing get done within that time frame, then manual testing is the best solution.
So here we have 500 test cases out of which 400 can be automated and rest cannot be , so in 2 days time with manual efforts we can achieve it.

But how much time will be required to test the remaining 400 cases ? This question is still not being answered?

So my answer is “0” .It will not require any manual QA intervention when the test scripts are running. We can assign a separate machine and just via a click the rest can be achieved or the scheduler can automatically do the rest of the job.
We will be getting the detailed report of the test run i.e. number of test cases passed/failed/skipped etc.  along with the snap shot of the failures.
Once the scripts are stable ,we don’t execute the scripts in regular timings ,my plan is to go home .So before leaving i will run all the test cases. Next morning when i come to office everything will be executed along with screen shots and results.
So here i am not investing any of my time to execute the test cases.

So the main advantage is we can save time.

Time is directly proposal to cost and we can maintain accuracy also. Same scripts can be executed again and again with quality with accuracy.

Why Selenium why not any other automation tool like QTP?

1. Open Source
2. Supports multiple languages(java,perl,php, pyton,ruby etc)
3. Browsers: FF,Chrome ,IE,Safari and Opera
4. Supports the OS like windows,mac and linux.
5. It’s for web applications and mobile applications also.
(Does not support desktop applications)

Suppose i have a web application say gmail which i want to automate ,in that web application we
have some desktop components say uploading a file .is it possible : My answer is “Yes”  we have a tool called a sikuli.I will use this tool to use as an adone to selenium to handle desktop components. “AutoIt” is also there .Some companies are using “Sikuli” and some are using “autoIT”. to handle desktop components.
6. Its flexible and extendable-reusable.

QTP features when compared to Selenium:

1. Not an open source-Commercial as well as costly
2. Language-VP script (somewhat Java Script)
3. Browser: Main compatible with ie (use ff als0)
4. OS : Only windows
5. For Desktop, mobile and web
6. Flexible and extendable.

Selenium is more flexible and extendable.

How can Selenium be more flexible when compared to QTP ?
Compare java with Vb script : which one is more flexible and extendable. Its java ,because it’s a proved language ,since 20 years we are using and still its no-1.That’s the reason companies are using Selenium.

Regression Testing:
The purpose of regression testing is to confirm that a  recent program or code change has not adversely affected existing features.

Regression testing is nothing but full or partial selection of already executed test cases which are re-executed to ensure existing functionalities work fine.


This testing is done to make sure that new code changes should not have side effects on the existing functionalities. It  ensures that old code still works once  the new code changes are done.

4 comments:

Allen Marry said...

This blog will help to get more ideas. This is very helpful for Software Testing learners. Thank you for sharing this wonderful site. If someone wants to know about Software QA services this is the right place for you Software QA Companies.

Lavanya said...

An awesome blog for the freshers. Thanks for posting this information.
Selenium with Java Online Training
Selenium Online Training India

Jhon David said...

nice post I will read it again it most helpfull for me thanks
business automation service

SQA said...

Good article on automation testing. Thank you for sharing this.
Test Automation Engineer Jobs
Automation Tester Jobs
Automation Test Engineer Jobs

About Me

My photo
Pune, Maharastra, India
You can reach me out at : jimmiamrit@gmail.com