Sunday, December 7, 2014

Difference Between Selenium 1.0 and Selenium 2.0

Selenium 2.0 Advantages:
  • No need of starting server
  • Object-oriented API
  • It is more faster than Selenium RC / 1.0
  • There are more ways to identify objects
  • Can Handle Onload Alerts
Below picture shows the architecture difference between Selenium 1.0 and 2.0



Wednesday, November 19, 2014

Manual Testing Vs. Automation Testing

Manual Testing:  This is traditional method of testing manually to test the software against requirements. Testers simulates the end-user testing.

Automation Testing: This is run through scripts and can be repeated over and over again. It reduces the testing effort and cost The script simulates the end-user testing.


Automation Testing tools:

  • QTP - HP
  • Java-Selenium - Open Source
  • IBM Rational - IBM
  • Visual Studio Test Professional by MicroSoft
  • TestComplete
  • TestPartner
  • SOA Test
  • WinRunner
  • LoadRunner
  • SilkTest
While QTP and other tools involved license cost, Java Selenium is Open-Source which is widely used.

Selenium is a portable software testing framework for web applications. Selenium provides a record/playback tool for authoring tests without learning a test scripting language. It includes features like record and playback, intelligent field selection, Xpath as needed, auto complete for all common selenium commands, walk through tests, debug and set breakpoints, Java Support, or other formats, support for selenium user-extensions file, option to automatically assert the title of every page etc. 

Please contact eastbaytrng@gmail.com or (925) 322 3131 if interested in our QA online or in-person Training in bay area.

Java Selenium Training - Course Content

Please contact eastbaytrng@gmail.com or (925) 322 3131 if interested.

Java Selenium Training
Introduction:
Introduction to Automation
Why and when will we go for Automation
What is the use of Automation
What is the difference between Selenium and QTP
About Selenium:
What is Selenium
Advantages of Selenium
Different flavors of Selenium:
Selenium IDE
Selenium RC
Selenium Grid
Selenium Web Driver/Selenium 2.0
Selenium IDE Introduction:
Downloading and Installing Selenium IDE
Features of  Selenium IDE
Selenium IDE Icons
Recording your first test with Selenium IDE
Locators:
How to identify elements in webpage using Selenium
Tools to identify elements/objects
Firebug
IE Developer tools
Google Chrome Developer tools
Locating elements by ID
Finding elements by name
Finding elements by link text
Finding elements by XPath
Finding Elements by using CSS
Summary
Selenium IDE Concepts:
IDE Context Menu
Asserting the elements
Verifying the elements
WaitFor elements
Storing the elements
Adding Selenium IDE comments
Building Test cases using Selenium IDE
Synchronization commands
Working on pages with AJAX
How to use looping statements like IF, while  in IDE with few examples
Usage of goto commands in IDE
Capturing screenshots in IDE
Generating Dynamic values using JS functions
Usage of JS functions with IDE
Handling alert messages in IDE
Creating test suites
Framework in IDE
What you cannot record
Selenium IDE Commands:
goBack, refresh, Enterkey simulation, highlight ..etc.
Selenium IDE script without record and playback
Java:
Java Basics useful for selenium and web driver.
Class,oops concepts,If,For loop,while,list and iterators
Selenium Remote Control:
What is Selenium Remote Control
Overview of  Selenium Remote Control using JAVA
Download selenium RC
Installing selenium RC
Starting selenium server from Command prompt
Stopping selenium server from Command prompt and Browser
Running selenium scripts/tests from Command prompt using selenium RC
Executing Selenium- IDE Test suites on Different browsers
Report generation for selenium scripts
Selenium RC using Eclipse:
Set up Selenium RC in Eclipse using Junit
Starting Selenium RC from eclipse
Stopping Selenium RC from eclipse
Start and stop selenium RC from Selenium Script
Converting Selenium IDE tests to a programming language(JAVA)
Running Selenium script in Different Browsers with Eclipse and JUNIT.
Writing Selenium tests from scratch using Junit
Junit Annotations
Junit Methods
Debugging Scripts in Eclipse
Frequently used Selenium commands
Syntax of each command
Test Suites using JUNIT
Report Using ANT Build and Junit
Sample Programs in RC:
Identifying objects on web page like -
Text box,  Link,  Button, Checkbox
 Radio Button,  Drop Down Box,  Select value
 Display all values
 Select values step by step
 Write all values into Notepad/Excel/WordPad.
 Capture screen shot
 Handle alerts
 How to read values from excel sheet
Create a Junit suite
Reports
Storing Attributes.
Handling Multiple windows and popups
Handling HTTPS sites
TestNG:
Introduction about TestNG
How to Install TestNG plugin in Eclipse
TestNG sample script
Writing Selenium testing script from scratch
Creating Test suites using TestNG
Reports generation using TestNG
Object Repository:
Use of Object repository
How to use OR in Scripts
Sample scripts using Object repository
Web Driver:
Introduction
Webdriver  vs Selenium RC
Downloading and configuring  web driver in Eclipse
Drivers for Firefox, IE and HTML Unit driver
First Selenium WebDriver Code
Identify Objects using WebDriver:
Text box, Link, Button
Checkbox, Radio Button, Drop Down Box
Select value, Display all values
Write all values into Notepad/Excel/WordPad.

Scripts:
Capture screen shot(positive)
Handling On load alerts
Page scroll down using Java script
HTML Unit Driver
Handling Multiple Windows
Implicit wait
Handling Ajax Auto suggests
Handling web tables
Handling Test data in Excel sheet
Generating test results and detailed Summary Report
Handling Alerts, Browser windows, Application windows & pop-ups
Actions Class:
Draggable
Droppable
Mouse over
Selectable
Simulating Right click
Slider

Customized Framework using  Functions and
Object Repository:
Writing Common Functions:
a.     What is function
b.     What is the use of function
c.     How to reuse
Writing Web driver Functions:
d.     Type, Click, Clickandwait
e.     Rowcount, Column count,
f.      Istextpresent
g.     Element present
Selenium Grid:
About Selenium Grid
Installation
Getting started with Selenium Grid
How to use Grid

Please contact eastbaytrng@gmail.com or (925) 322 3131 if interested.




JAVA Selenium - Training @ your place @ your pace

About our Training:
Training @ your place @ your pace
QA Java Selenium Testing, QTP and Manual Test Training starts every week-end. We have a FREE orientation/Demo before sign-up the training. 

Please contact eastbaytrng@gmail.com or (925) 322 3131 if interested.
- Training is via online with a live Trainer presenting via audio.
- After training job-support will be provided with a panel of QA experts
- For interested trainees, crash course over week-end can be arranged. Timing is flexible. 
- Job-Oriented training with real-time examples and the trainer will share job aid tools such as sample code, POC and Framework model.

Java Selenium - Course Content:Selenium IDE Introduction
Locators
Selenium IDE Concepts
Selenium IDE Commands
Java Basics useful for selenium and web driver.
Selenium Remote Control
Selenium RC using Eclipse
Sample Programs in RC
TestNG
Object Repository
Web Driver
Identify Objects using WebDriver
Scripts
Actions Class
Customized Framework using Functions and
Object Repository
Selenium Grid, 
Mini Project - Hands-on, 
Resume Help, 
Mock Interview and Placement Assistance

Please contact eastbaytrng@gmail.com or 
(925) 322 3131 if interested.

JAVA Selenium - JAVA Introduction

For Java Selenium Web Driver, Java is preferred language and we will see Java features here.
Java Selenium can be used with Python, C#, Java, JavaScript and PHP.

JAVA:
Object Oriented: In Java, everything is an Object. Java can be easily extended since it is based on the Object model.
Platform independent: Unlike many other programming languages including C and C++, when Java is compiled, it is not compiled into platform specific machine, rather into platform independent byte code.  
Simple:Java is designed to be easy to learn. If you understand the basic concept of OOP Java would be easy to master.
Secure: With Java's secure feature it enables to develop virus-free, tamper-free systems. Authentication techniques are based on public-key encryption.
Architectural-neutral :Java compiler generates an architecture-neutral object file format which makes the compiled code to be executable on many processors, with the presence of Java runtime system.
Portable:Being architectural-neutral and having no implementation dependent aspects of the specification makes Java portable. Compiler in Java is written in ANSI C with a clean portability boundary which is a POSIX subset.
Robust:Java makes an effort to eliminate error prone situations by emphasizing mainly on compile time error checking and runtime checking.
Multithreaded: With Java's multithreaded feature it is possible to write programs that can do many tasks simultaneously.  
Interpreted:Java byte code is translated on the fly to native machine instructions and is not stored anywhere.  
High Performance: With the use of Just-In-Time compilers, Java enables high performance.
Distributed:Java is designed for the distributed environment of the internet.

Dynamic: Java is considered to be more dynamic than C or C++

Java Object-Oriented - Java supports following Object-Oriented principles.
•Inheritance
•Overriding
•Polymorphism
•Abstraction
•Encapsulation
•Interfaces
•Packages

Inheritance - Using extends and implements
Overriding - ability to define a behavior that's specific to the subclass type which means a subclass can implement a parent class method based on its requirement.
Polymorphism  - Polymorphism is the ability of an object to take on many form.
Abstraction - An abstract class is one that cannot be instantiated.
Encapsulation - Encapsulation is the technique of making the fields in a class private and providing access to the fields via public methods.
Interface - An interface is a collection of abstract methods.
Package - A Package can be defined as a grouping of related types(classes, interfaces, enumerations and annotations ) providing access protection and name space management.

What is difference between JDK, JRE and JVM?

JRE: Java Runtime Environment. It is basically the Java Virtual Machine where your Java programs run on. It also includes browser plugins for Applet execution.
JDK: It's the full featured Software Development Kit for Java, including JRE, and the compilers and tools (like JavaDoc, and Java Debugger) to create and compile programs.
JVM: Java Virtual Machine , actually executes the java bytecode. It is the execution block on the JAVA platform. It converts the bytecode to the machine code.