Transcript

FRESHER TRAINING PROGRAM [MANUAL/QTP/ALM/QC/SE/LR/DB/ANDROID]

Software Testing

COURSE OVERVIEW

Manual Concepts

Software Testing Concepts ● What is software Testing ● Objective of software Testing ● Importance of software Testing ● Principles of software Testing ● Testing Terminology ● Relation between Testing and Quality ● Characteristics and Responsibilities of a Software Tester

SDLC and STLC ● Software Development Life Cycle ● Life cycle models (Waterfall, Spiral, Prototype, Agile, RAD and V) ● Scrum concepts ● Software Test Life cycle ● Types of Environments

Fundamentals of Software Testing

● Software Verification and Validation ● Software Quality Assurance and Control ● Levels of Software Testing ● Types of Software Testing (Functional & Non Functional and their sub types) ● Software Testing technique types - Static and Dynamic ● Black Box, White Box and Grey Box Testing

Quality Assurance Standard

● CMM and ISO Certifications

Test Planning and Estimation ● Test Planning ● Test Planning Activities ● Exit Criteria ● Test Estimation

Test Process

● Designing Test Plan ● Documentation of Test Scenarios ● Designing of Test Cases ● Defect Reporting ● Root Cause Analyses ● Bug Isolation ● Defect Management

DATABASE

● What is Database Application ?

● Understanding data storage

● Back end & front end Testing

● General Database Basics

● Relational Database Concepts

● Overview of DML , DDL, TCL

● DML : Insert , update , Delete , marge

● Restricting & Sorting Data

● Single ROW Function

● Character Function , Number Function , Round ,

● Truncate , MOD , MAX , Min , Date

QUALITY CENTER/ALM

Introducing Quality Center

● The Quality Center Testing Process ● Starting Quality Center

Specifying Testing Requirements ● Defining Requirements ● Viewing Requirements ● Modifying Requirements ● Converting Requirements

Planning Tests ● Developing a Test Plan Tree ● Designing Test Steps ● Copying Test Steps ● Calling Tests with Parameters ● Creating and Viewing Requirements

Coverage ● Generating Automated Test Scripts ● Running Tests ● Defining Test Sets ● Adding Tests to a Test Set ● Scheduling Test Runs ● Running Tests Manually ● Running Tests Automatically

Adding and Tracking Defects ● How to Track Defects ● Adding New Defects ● Matching Defects ● Updating Defects ● Mailing Defects ● Associating Defects with Tests ● Creating Favourite Views

Tracing Changes ● Triggering a Traceability Alert ● Viewing the Traceability Alert ● Creating Follow Up Alerts

Analysing the Testing Process ● Generating Reports ● Generating Graphs

Customizing Projects

● Starting Project Customization ● Adding a New Project User ● Assigning a User to a User Group ● Defining a User-Defined Field ● Creating a Project List

QTP/UFT

Automation and Automation Concepts

● Introduction to Test Automation ● Test Automation Truths or Myths ● Where to use Test Automation and Where Not ● Test Automation Process ● What is HP-QTP

Preparing to Record ● Information About Add ins, Licenses ● Review Documented User Steps ● Prepare the Test Environment ● Identify the Application Under Test (AUT) ● QTP’s Recording Process ● QTP’s Replay Process ● Normal Recording, Low Level Recording & Analog Recording

Working with Objects ● Identify Objects and their Properties ● Describe Test Object Model

● Mandatory & Assistive Properties ● Smart Identification – Base & Optional Filter Properties ● Ordinal Identifier

● Understanding Virtual Objects

● Virtual Object Manager ● Creating Virtual Object ● Deleting and Disabling Virtual Objects

Creating Basic Test ● Create and Execute Basic Tests ● Understand QuickTest Results

Solving Object Recognition Problems ● Use Analog Recording ● Use Low-level Recording ● Use a Bitmap Checkpoint ● Work with Virtual Objects

Working With Object Repository (O.R)

● Concept & Components ● Test & Run Time Objects ● TO & RO properties ● Object Spy ● Describe Local Versus Shared Object Repositories ● Associate Repository to an Action ● Use the Object Repository Manager ● Limitation of O.R

Descriptive Programming ● What is descriptive programming? ● Benefits of descriptive programming

Use Of ● Child Objects

Using Object Repository Manager (ORM) ● Working With Shared Objects ● Working With Local Object ● Working with Merge Tool ● Working With Object Properties

Adding Synchronization

● Add synchronization steps ● Set Global Synchronization Timeout ● Method 1 – Using the Sync method ● Method 2 – Using the Wait statement ● Method 3 – WaitProperty method ● Checking Object Existence ● Difference between Browser & Page Sync

Adding Steps without Recording ● Add Steps Using Keyword View ● Add Steps Using the Step Generator

Creating Tests on a Web Application, discuss differences in: ● Setup ● Add-Ins ● Object Recognition ● Synchronization

Using Data Table Object ● Design & Run Time DataTable ● Global & Local DataTable ● Controlling Global & Local DataTable Iterations ● Data table object Methods & Properties ● DataTable Formatting ● Using External datasheets

Checkpoints

Types of Checkpoints with Real Example Checkpoints Availability at Recording and Editing Time Controlling Web Checkpoints Limitation of Inbuilt Checkpoints Create a Custom Checkpoint Compare Captured Values with Expected Values Use Debugging Tools Report the Step Outcome with a Reporter Updating Checkpoints Parameterize Checkpoint Expected Value Use Regular Expression in Checkpoint

Using Database Checkpoints ● Define Database Checkpoints ● Create SQL Queries ● Insert a Database Checkpoint ● Parameterize a Database Query

Using Parameters

● Use Test & Action Parameters ● Use Data Driver ● Random Numbers ● Environment Variables ● Controlling DataTable Iterations Without Setting

QTP Environment Variables ● Types of Environment Variables ● Environment Object ● Defining, modifying and Associating Environment Variables ● Loading Environment File During Run-time (dynamic handling) ● Environment Variable using (.ini Ext. and .xml) through Script

Active Screen ● Adding Checkpoint ● Output Values

Actions

● What are Actions ● Types of Actions ● Inserting Calls to Actions

● Insert Call to New ● Insert Call to Existing ● Insert Call to Copy

● Creating an Action ● Splitting Actions ● Renaming an Action ● Deleting an Action ● Making an Reusable/Non-Reusable ● Copying an Actions ● Action Parameters

Recover Scenarios ● When to use recovery scenarios? ● Limitations of Recovery Scenario ● Default Recovery Scenarios ● Associate a recovery scenario with a test ● The Recovery object ● Recovery Function Calls ● Error Handling ● Use Of Regular Expression

Debugging the Script

● Watch ● Variable ● Command ● Breakpoints ● Step Into, Step Out, Step Over

VBScript VBScript

● What is VBScript and how to run VBScript? ● Scripting Languages vs. Programming Languages ● Basic Features of VBScript ● Hosting Environments & Script Engines ● Creating & Running a Script

Data Types, Variables in VBScript

● VBScript data types ● Declaring Variables and Option Explicit Statement ● Assigning Values to Variables ● Scalar Variables and Array Variables

Arrays

● Dynamic Arrays ● Working with Arrays, Fixed length arrays, Dynamic Arrays with examples ● Single & Multi-Dimensional Arrays

Conditions & Looping

● Use Conditional Statements Like Select Case, If-Else ● User Looping Statements Like For, While. ● Optional arguments in VBScript

VBScript Procedures

● Types of Procedures ● Internal & External Functions ● Creating Library files ● Creating Sub Procedures ● Creating Function Procedures ● Using ADODB objects ● Using WSH & WScript

VBScript Statements Call, Dim, Do Loop, Execute, Exit, If then Else, For Next, Set , While Wend, With, option explicit, On Error Resume Next, On Error Go To 0, Dim, Redim, Public, Select Case, Methods VBScript Functions Is array, is numeric, is date, is empty, Now, Ltrim, Rtrim, Trim, Mid, Split, LBound, UBound, Lcase, Ucase, Array, Date, Instr, Cint, Cdbl, Cdate, Csng, LBound, UBound, Cstr etc.

SELENIUM Automation and Automation Concepts

● Introduction to Test Automation ● Test Automation Truths or Myths ● Where to use Test Automation and Where Not ● Test Automation Process ● What is Se-WebDriver ● History of Selenium ● Different set of tools ● Selenium Advantages and Limitations

SE – IDE Introduction to Selenium IDE

● Installing Selenium IDE ● Recording Script ● What is Same Origin Policy ● Running, Pausing and debugging Script ● Running a script line by line ● Inserting commands in between script ● Colour coding in Selenium Test ● Locators and installing firebug to get Locators ● Wait Commands ● Selenese - Actions, Accessors and Assertions ● Verification and Assertions ● Should I use verify or assertion ● Selenium IDE and Challenges ● User-extension.js in Selenium IDE ● Using if statements and loops in IDE. ● Echo, StoreEval and StoredVars Demystified ● Creating your own user extensions. ● Making a function in user extension to generate random email address. ● Extracting all values of dropdown. ● Reading XML from JavaScript using DOM. ● Parameterize your IDE test cases with customized use extension and XML. ● Regular Expressions in Selenium IDE. ● Handling JavaScript Alerts ● Capturing screenshots from Selenium IDE ● Run test from cmd line on other browsers

JAVASCRIPT Introduction to JavaScript

● History ● Definition ● Advantages ● Limitations ● Usage ● Commenting in JavaScript ● Data Types ● Variable ● Operators ● Conditional Constructs ● Looping Constructs ● Alert, Confirmation, Prompts ● Functions

LOAD RUNNER

● Explain the need for load testing ● Performance testing basics ● Working with Load Runner ● Load Runner Vuser Technology ● The Load Runner Testing Process ● Creating loadrunner scripts using the VuGen ● Adding verification points ● Parameterize test script ● Apply correlation technique to test script ● Explain the elements of a loadrunner scenario ● Present the basic steps for creating a scenario ● Explain the Scenario run-time settings ● Configure run-time settings based on load testing goals ● Prepare for a scenario run ● Explain scheduling by scenario and by group ● Configure scenario start time ● Analysis, explain the value of analysing the results ● Work with the graphs to display data

ANDROID TESTING

Automation and Automation Concepts

● Introduction to Test Automation ● Test Automation Truths or Myths ● Where to use Test Automation and Where Not ● Test Automation Process ● What is MonkeyTalk

Installation of Client & Agent ● Installation of the IDE ● Installation of the Client ● Building with Ant

Working with IDE ● Understanding the GUI ● Walkthrough Toolbar, File, Editor & Console

Understanding Basic Commands ● Component type ● Monkey ID ● Action ● Arguments ● Modifiers

Creating Basic Test & Execute ● Connect to App ● Start the app test ● Record and Filter ● Synchronize test with app ● Execute single and selected rows ● View component tree

AUTOMATION FRAMEWORK Automation Frameworks

● Data Driven ● Script Modularity ● Keyword Driven ● Hybrid

Automation Framework Concepts ● Benefits ● How to Approach ● Implement Framework ● Automate scenarios using Framework

Note: Practical implementation of all above concepts will be done by automating an application with self-created Automation framework.