Friday, 17 July 2015

SELENIUM DEMO


Ways of Testing:
                There are two ways of Testing
                                1. Manual Testing
                                2. Automation Testing
1. Manual Testing:

Testers do manually without using any automated tools
It is an oldest and most rigorous type of testing
Finally we can say all the tasks accomplished manually with our efforts
                                        (or)
With human efforts we are doing so we can call manual Testing

                It is a way of testing in which one will perform all the phases of software testing life cycle like Test planning, Test development, Test execution, Result analysis, Bug tracking, and Reporting are accomplished manually, successfully with human efforts

Advantages:

Ø Manual testing will be useful when the test case only needs to run once or twice.
Ø It is very much helpful in testing.
Ø It will take less cost than automation.
Ø Manual Testing is eye ball testing
Ø Easy to learn for new people who are entered into testing.
Ø Manual QA testing can be used in both small and big projects.
Ø Manual is more reliable than automated (in many cases
    Automated not cover all cases)
Ø Manual testing doesn’t require any specific knowledge about any scripting language but Automation required
Ø Manual Testing which is performed by humans, so we can find many such defects which can never be found using Automation tools.

Already manual testing existed in the market, why automation came into the market?

That means we have some drawbacks in manual testing

What are the Drawbacks in Manual Testing:

v Time consuming
Whenever we are comparing with automation it will take more time
v More no of people required
We need to store the paper records is very bulky
So it is very easy to miss a record or file and there are some chances the records will be lost or damaged
So Many people can be employed to maintain the records
v No efficiency and effectiveness
v It is a slowest process
v We can’t repeat the task again and again
v It is not consistent process
That means one tester may approach and perform
A certain test different from another, so we can get different results on the same test
v It will be very difficult to manage
That means Modern software development practices are well structured, but we don’t have sufficient structure in manual
v No accuracy or less accuracy
v Tiredness
v It is a bore process
There is nothing new to learn when on tests manually
v Simultaneous actions are not possible
2. Automation Testing:
                Automation testing is a process in which all the drawbacks of manual testing are addressed properly and provides speed and accuracy to the existing testing process.

Advantages:

v Fast; Means automated tools run tests faster than human user
v Clear: Every statement is easy to understand.
v Quality: Means we can run more tests in less time with quality.

v Reliable: Means tests perform precisely the same operations each time we can run.
v Repeatable:  Means we can run the test repeatedly and we can check how software reacts under repeated execution of the same operations and we can run many times in a row without human interaction
v Reasonable: Means we can reuse tests on different versions of an application even if it is user interface changed.
v Programmable: Means you can get hidden information from the application

Drawbacks of Automation Testing:

v Professionals required
If it is manual testing we can give the training with in week and we can take into the project
But if it is automation some scripting knowledge required
v Tools are very expensive
Whenever we are comparing with manual testing automation is very costly, manual is a cheapest testing process
v We cannot automate all the areas using tools also
This is the main reason that’s why most of the companies they are depending upon manual testing
So
Simply we can say tools have limitations
Automated Tool:
                Automated tool is an assistant of a test engineer, which works based on the instructions and information given by a test engineer.
                If you want work with any automated tools first of all you should learn 5 basic things
If you know these things we can work with any automated tools very easily

·        How to give the instructions?
·        How to give the information?
·        How to use its recording facility?
·        How to use its play back facility?
·        How to analyze the results?
My assistant is selenium
I want to work with selenium
I know telugu, selenium don’t know telugu
I know hindi,selenium don’t know hindi

I know english,selenium don’t know english

I know tamil,selenium don’t know tamil
Selenium knows java, pearl, python,c#,ruby
So we need to learn any of the scripting language



Types of Automated Tools:

A black box testing tools are broadly divided into Three
Types

 Functional tools   : QTP, Winrunner,Rft,Selenium, , Test

   partner, Test complete,Testdrive

 Management Tools  : Test Director/Quality Center, Jira,Qtest,

  QaComplete

Performance tools   : Load Runner,silk,jmeter












Differences between Qtp and selenium


Qtp                                                                         Selenium

Developed by mercury                                    developed by Jason Huggins in 2004
  In 1994   

Commercial tool                                             open source tool

We have recording facility                              we don’t have recording facility in wd

We can use vb                                                 we can use java, pearl, python,c#,ruby

Excellent Object Identification mechanism            no object identification

We can work with window, web applications    only for web applications

We can work with IE Browser                          We can work with multi browsers
                  
Selenium:
Selenium is software which contains some set of programs
Selenium components:
Selenium IDE:  it is set of programs + a user interface from where the user can interact with that set of programs.









Oval: User interface




 





Advantages: 
v Free software
v Easy to install
v We have recording  and playback facility
v  This selenium  IDE scripts we can convert into other language like Java, C#, Python and Ruby
v  It is not only a time saver but also an excellent way of Learning scripts syntax
v We can insert comments, commands
v Execution will be super-fast

Disadvantages:

v Main disadvantage is ,it runs only in Firefox
  Browser
v We can’t write the script manually
v Cannot upload files
v It does not directly support loops and conditions
v Reading from external files like .txt, .xls is not possible
v We can perform very limited testing
Selenium RC (remote control): it is a set of programs to perform automation testing, to interact with those programs we need to configure them in any user interface. Generally people use eclipse as it is a powerful editor for writing java programs.

Note: after selenium rc they have made selenium web driver as more powerful. Selenium web driver is providing more facilities for automation testing when compared to RC people started using web driver and slowly RC is getting deprecated.








Oval: Programs


Oval: User interface




 





Disadvantages:
v There are very limited features in RC when working with Ajax based UI elements
v  we need to start, stop the server manually
v  Controlling multiple windows is somewhat difficult
Selenium web driver: it is a set of powerful programs to perform automation testing, to interact with those programs we need to configure them in any user interface.
       Generally people use eclipse for configuring the web driver programs into eclipse
Eclipse is a powerful editor for writing the java programs.








Oval: Programs


Oval: User interface




 




Advantages;
1)  Support for iPhone and Android testing

2)  We can Implement listeners concept it is a very  much
Awaited feature
3)   Better features for Ajax testing.

4)  You can easily simulate clicking on front and back button

 Of browser.
5)  You can extract objects in bulk like QTP. For ex - extract
All links of page.
6)  Like RC you don’t have to start a server in web driver.

7)  You can simulate movement of a mouse using selenium.

8)   Using this Web driver we can easily handle the
Popup windows
9)  You can find coordinates of any object using Web driver.

10)              You have classes in Web driver which help you to
Simulate key press events of keyboard.
11)              Keyword driven framework is very easy to build in web driver.


Selenium grid:  it is a set of programs used for executing the
Tests parallel on multiple machines in order to increase the
Performance of execution.

v We can do Remote Execution of the selenium tests    
v Selenium Grid used to save time by executing
    Independent test cases in parallel.
v Load Testing can be done

v execute test case in parallel to simulate multiple

Transactions in single time






No comments:

Post a Comment