18
Software Testing Tools (MANUAL + SELENIUM) Plot #204, 2 nd Floor, Above Bank of India ,Opp Mythri vihar ,Ameerpet,Hyderabad.500016. Email:[email protected] Website:www.qedgetech.com. Ph:9154112233 . 040-64644491 / 92.

Software Testing Tools Training

Embed Size (px)

Citation preview

Page 1: Software Testing Tools Training

Software Testing Tools (MANUAL + SELENIUM)

Plot #204, 2nd Floor, Above Bank of India ,Opp Mythri

vihar ,Ameerpet,Hyderabad.500016.Email:[email protected]

Website:www.qedgetech.com.Ph:9154112233 . 040-64644491 / 92.

Page 2: Software Testing Tools Training

MANUAL TESTING

About The Course

Manual Testing course will cover software testing concepts, SDLC, STLC, Agile Testing, Effective Testing methods, QA Process , TestCase writing, TestCase Execution, Defect Reporting , Defect Management and Test Management tools like ALM/Quality Center.

Course Objectives

After the completion of the Manual Testing course, you will be able to:

1. Understand fundamental concepts in software testing, including software testing objectives, processes, test strategies and testing techniques.

2. Understand the software testing processes and manual testing processes like Unit testing, Integration testing, system testing, re-testing, regression testing and system integration testing and UAT etc.,

3. Learn to plan a testing projects, design test cases and data, conduct testing operations, manage defects and generate test report.

4. Learn to conduct UI Testing, Usability Testing, Load Testing, Performance Testing, Security Testing and Compatibility Testing etc.,

5. Learn Defect Reporting process and Defect management process.6. Learn implementing Testing Process using tools like ALM(Quality Center) and JIRA.

Who can join this course?

This is a foundation course for any Fresh Graduates, Students and working professionals who want to learn and gain knowledge on software testing.

Pre-requisites

There is no technical and no programming knowledge required for this course, minimal knowledge on software applications is enough.

Project Work

Towards the end of the Course, you will learn working on a live project. 

2

Page 3: Software Testing Tools Training

Curriculum

Software Testing Overview

• Introduction to Software Testing• Objectives of Testing• Software Development Process• Project vs. Product• Error / Fault / Failure• Why Software has defects?• Most common defects• Cost of fixing defects• Testing then … and Testing now…• What is Verification & Validation• Difference between QA & QC• Role of a Tester

Principles of Testing

• Early Testing• Exhaustive Testing Impossible• Defect Clustering• Pesticide Paradox• Testing is Context Dependant• Testing Should Show Presence of Defects• Absence of Error is a Fallacy

Software Development Life Cycle (SDLC)

• SDLC Phases• SDLC Models

- Waterfall Model- V Model- RAD Model- Prototype Model- Spiral Model- Agile Model

Software Testing Methodologies

• Static Testing• White Box Testing• Black Box Testing• Gray Box Testing

3

Page 4: Software Testing Tools Training

Static Testing Techniques

• Reviews • Types of Reviews• Inspections & Audits• Walkthroughs

White Box Testing

• Unit Testing• Integration Testing

Black Box Testing

• System Testing• User Acceptance Testing (UAT)

Alpha Testing Beta Testing

System Testing and Types of System Testing

• Smoke / Sanity Testing• Formal Testing• Priority Based/Risk Based Testing• Ad-hoc Testing• Re-Testing and Regression Testing• End-to-End Testing• Exploratory Testing• Benchmark Testing• Monkey Testing• UI Testing• Usability Testing• Security Testing• Performance Testing• Load Testing• Stress Testing• Compatibility Testing• Installation Testing• Globalization Testing• Localization Testing• Recovery Testing

4

Page 5: Software Testing Tools Training

Software Testing Life Cycle (STLC)

• Test Planning

Test Strategy Test Plan

• Test Analysis

Analyzing Functional Requirements Preparing Requirement Clarification

• Test Preparation

Identifying & documenting Test Scenarios Test Case Design Techniques

• ECP• BVA• Decision Table Testing• State Transition Testing• Use case Testing

Preparing Test Cases Preparing Test Data Preparing RTM

• Test Execution Build Release Process Executing Testcases

• Defect / Bug Life Cycle • Defect Management

What is defect? Defect Classification Defect Severity & Defect Priority Defect Report Template Defect Reporting & Defect Tracking

• Test Closure Criteria for Test Closure Status Reports (Daily and Weekly)

• Test Summary Reports

5

Page 6: Software Testing Tools Training

Agile Testing Overview of DataBase Testing

ALM (Quality Center)Overview of Test Management

QC Tool Architecture

QC Site Administration

Creating Domain Creating Project Creating Users Mapping User to QC Project

QC User Modules

Defining Test Requirements Writing TestCases in QC Mapping TestCases to Requirements Exporting TestCases from Excel to QC Create Test Sets Executing TestCases Defect Reporting & Defect Tracking Analyzing Reports & Graphs

Project Testing WorkShop

SELENIUM/WEBDRIVER

6

Page 7: Software Testing Tools Training

About The Course

Selenium is used for automating Web Application Testing. Selenium is open source tool, hence many companies preferring Selenium to cut down project maintenance cost which increased demand for Selenium Testers.

In this course you will experience to work with Modularity Framework, Data Driven Framework, Keyword Driven Framework and Hybrid Framework. Selenium IDE, Selenium WebDriver, Selenium-Grid, TestNG, MAVEN,Jenkins is covered during the course. You will learn to perform tests on multiple machines simultaneously running on different Operating Systems and Cross Browser Testing with Selenium.

Course Objectives

After the completion of ‘Testing with Selenium WebDriver’ Course, you should be able to :

Understand Selenium Architecture and its components Record and importing tests with Selenium IDE Identifying elements using Locatorse.g by link, by text, by id, by css, by xpath etc. Understand Selenium WebDriver/ Selenium 2.0 Automating Textbox,DropdownList,Link,Checkbox,RadioButtons,Tables,Calender, Keyboard and mouse operations Handling Alerts and Multiple windows Validate page content using Selenium WebDriver API Write Test cases using TestNG Creating Reusable automation Tests Generating Customized Test Results Use WebDriver advanced features e.g. taking screenshots, handling cookies and

managing Exceptions Create Data driven, Keyword driven and Hybrid test frameworks Perform Cross browser testing with Mozilla Firefox, Google Chrome, Safari and

Opera Perform distributed testing using Selenium GRID Automate windows applications with AutoIt Scheduling Tests with Jenkins

7

Page 8: Software Testing Tools Training

Who can join this course?

Professionals from any domain can join the course as it does not require hard core programming knowledge. Selenium is a new and booming Technology in Software Industry that is widely accepted across all the industries. People with basic knowledge of Object Oriented Programming can easily take up this course.

Pre-requisites

The pre-requisite for this course is basic knowledge of Core Java. We provide a complimentary course "Java Essentials for Testing With Selenium WebDriver" to all the participants who enrol for Selenium course.

Project Work

Towards the end of the course you will be working on a Project where we will be automating a Web Application to cover all the possible cases of interaction with application. Project will be Keyword Driven so that it should work as per user instructions. Test cases will be executed multiple times using Data Driven approach. Project will handle Textboxes, Links, Checkbox, Radio button, submit button, reset button, URL, Page Title, synchronization between pages when navigating from one page to another, taking screenshots of application for each of the validation of – verbose, textbox value, dynamic links, handling of dialog and alert box, fetching data from application. We will build this Project using Eclipse and Selenium WebDriver.

Why learn Selenium?

Selenium is an open source tool and covers all the scenarios what licensed tool like QTP, IBM RFT or other available tools in market can do. Performance, execution speed and browser interaction of Selenium is too fast than any other automation tool. Unattended execution can be achieved using Selenium Framework. Selenium supports different operating systems along with support for different programming languages and browsers, these features makes the Selenium ahead of any other Automation tool.

8

Page 9: Software Testing Tools Training

Curriculum

Java Essentials for Testing With Selenium WebDriver

Java Programming Basics

Why Java for Selenium Installing Java Installing Eclipse First Eclipse Project First Java program Concept of class file Datatypes in Java String class and functions

o Practical Examples on Strings handling Conditional Statements

o If…else…o Switchcaseo Practical Examples with conditions

Loopso While Loopo For Loopo Practical Examples with loops

Arrays o Single Dimensional Arrayso Two Dimensional arrayso Practical usage of arrays in Selenium

Operators What are Functions? Function Input Parameters Function Return Types

Object Oriented Programming

Local Variables Global Variables Static and Non-Static Variables Static and Non-Static Functions Creating Objects in Java Meaning of static Why is main method static? Object and Object References Call by reference and Value Overloading and Overriding Functions Access Modifiers - Public/Private/Default/Protected Constructors Interface Usage of Objects in Selenium Inheritance Usage of Inheritance in Selenium

9

Page 10: Software Testing Tools Training

Creating Packages Accessing Classes across Packages

Exception Handling

Exception handing with try catch block Importance of exception handling Exception and Error Throwable Class Final and Finally Throw and Throws Different Types of Exceptions Need of exception handling in Selenium framework

Automating Excel file Operations

Creating/Opening XLS Files Reading/Writing Microsoft XLS Files Counting Rows and Columns Filling BG/Font Colours Practical Examples

Automating Text File Operations

Creating/Opening Text Files Reading/Writing Text Files Practical Examples

Automating Database Operations

Connecting to Databaseso MySQLo Oracleo SQL Server

Sending SQL Queries to Database Process the Results Practical Examples

10

Page 11: Software Testing Tools Training

Selenium Introduction

Introduction to Selenium and its Components

What is Selenium? Who developed Selenium? Selenium Components

Selenium IDE

Installing Selenium IDE Creating your First Selenium IDE script How to use Locators in Selenium IDE How to enhance a script using Selenium IDE Creating and Running Tests Creating and Running Test Suite

Selenium WebDriver

WebDriver Introduction

Introduction to WebDriver & Comparison with Selenium RC Installing Selenium WebDriver Architecture of selenium Webdriver Creating your First Script in Webdriver

Launching AUT and Inspecting properties of Elements

Launching AUT in FireFox Launching AUT in InternetExplorer Launching AUT in Chrome Launching AUT in Safari Inspecting properties of Elements on different Browsers Installing FireBug and FirePath Creating FireFox Profile

11

Page 12: Software Testing Tools Training

Automating Operations on various Elements

Browser TextBox ListBox Links Check Box Radio Button HTML Tables Calendars

Automating Keyboard and Mouse Events

Action Class KeyBoard Events Drag & Drop Actions Mouse Hover Action RightClick, Double Click & Tool Tip

Handling multiple Windows

getwindowHandle() getwindowHandles() Switching between windows Handling elements present in different windows

Handling Alerts

accept() dismiss() getText() sendKeys()

Handling Frames

What is iFrame? Locating Frames Switching between Frames Handling Frames

Handling Ajax Components

12

Page 13: Software Testing Tools Training

Creating Customize XPath/CSS Selectors

What is XPath When to Use XPath Absolute XPath/Relative XPath Specifying conditions with XPath CSS Selectors Customizing CSS Selector

Synchronization

1. ImplicitWait2. WebDriverWait3. FluentWait4. PageLoadTimeout

TestNG

What is TestNG?

Advantages of TestNG over JUnit Why do we need TestNG in Selenium? Installing TestNG in Eclipse Creating a New TestNG Test File @Test annotation Running the Test Checking reports created by TestNG Generating HTML Reports Annotations used in TestNG Validating Tests with Assertions Creating multiple Tests Prioritizing Tests Parameterizing Tests with dataProvider TestNG dataProvider with Excel Creating and Running Test Suites with TestNG.xml Parallel Test Execution with TestNG Cross Browser Testing using TestNG

Automation Test Frameworks

13

Page 14: Software Testing Tools Training

Modular Driven Framework Keyword Driven Framework Data Driven Framework Hybrid Framework

Page Object Model (POM) & Page Factory in Selenium

What is POM Why POM? Advantages of POM Creating POM Tests What is Page Factory? Creating Tests with Page Factory

Database Testing using Selenium

JDBC (Java Database Connectivity) Driver Manager Driver Connection Statement ResultSet SQLException Connecting to DataBases Sending SQL Queries to Database Processing Results Real-time examples of Database Testing with Selenium

AutoIT

Installing AutoIT Components of AutoIT Using FinderTool AutoIT commands Creating Scripts in AutoIT Creating executable files Running AutoIT Scripts from Selenium

Selenium GRID

14

Page 15: Software Testing Tools Training

What is Selenium Grid? When to Use Selenium Grid? What is a Hub and Node? How to Install and Use Grid 2.0? Designing Test Scripts That Can Run on the Grid Using the DesiredCapabilites Object Using the RemoteWebDriver Object Running a Sample Test Case on the Grid Sequential and Parallel Test Execution Running Tests on different Operating Systems Running Tests on different Browsers

MAVEN & JENKINS

MAVEN

What is Maven and Why Maven? Installing/Configuring Maven Creating Maven Project Importing Maven Project into Eclipse What is POM.xml? Adding Dependencies to POM.xml

JENKINS

Installing/Configuring Jenkins Scheduling Test Execution in Jenkins Auto mail configuration in Jenkins What is continues integration? Continues integration with JENKINS

GIT

GIT

Downloading and Installing GIT Installing GIT and GITHUB plug-ins for JENKINS Configuring SSH host keys for GIT and JENKINS GIT Bash commands Uploading project to GIT

LOG4J

15

Page 16: Software Testing Tools Training

LOG4J

Introduction about Logging Logging problems without Log4J How to solve Logging problem with Log4J What is Layout? Different types of Layouts in Log4J What is Appender? Different types of Appenders

16