testing tools for beginners
Post on 01-Nov-2014
Embed Size (px)
DESCRIPTIONtesting tools for Beginners
Testing ToolsSoftware Quality: Technical: Meeting Customer Requirements Meeting Customer Expectations (User friendly, Performance, Privacy)
Non-Technical: Cost of Product Time to Market
Software Quality Assurance:To monitor and measure the strength of development process, Organisation follows SQA concepts.
Software Project:Software related problems solved by software engineers through a software engineering process.
Life Cycle Development (LCD):Information Gathering Analysis
Coding Testing Maintenance
Testing:Verification & Validation of software is called testing.
Fish Model of Software Development:LCD Analysis Design Coding Maintenance
Information Gathering (BRS) LCT Reviews
S/W RS (FRS + SRS)
System Testing ProgramsBlack Box Testing
Reviews White Box Prototype
Test S/W Change Testing
Business Requirement Specification (BRS-Information Gathering):BRS defines requirements of the customer to be developed as a software. This type of documents developed by business analyst category people.
Software Requirement Specification (S/W RS):This document defines w.r.t BRS. This document consists of functional Requirements to develop (FRS) & System Requirements to use (SRS). This document also developed by business analyst people only.
Reviews:It is a static testing technique to estimate completeness and correctness of a document.
Design High Level Design Document (HLD):This document is also known as external design. This document defines hierarchy of all possible functionalitys as modules.
Low Level Design Documents (LLDs):This document is also known as internal design. This document defines structural logic of every sub module.
Example: DFD-Data Flow Diagram, E-R Diagram, Class Diagram, Object Diagram.
Prototype:Sample model of an application with out functionality is called Prototype. Ex: Power point slide show.
Coding: White Box Testing:It is a coding level testing technique. During this test, test engineers verifies completeness and correctness of every program. This testing is also known as Glass Box Testing or Clear Box Testing.
System Testing: Block Box Testing:It is a build level testing technique. During this tests, testing team validates internal functionality depends on external inter phase.
V Model of S/W Development:V Stands for Verification & Validation. This model defines mapping between development stages & Testing Stages. Development Testing Development Plan Defect Removal Efficiency I/f gathering & Analysis of Development plan -- Prepare Test Plane -- Requirements phase testing -- Design Phase Testing--Assessment
(DRE): DRE = A / (A+B)
It also known as Defect Deficiency. Design & Coding WhereBRS / URS / CRS
-- Program Phase Testing (WB) A = No of defects found by testing teem during testing User Acceptance Testing process. B = No of defects-- Functional & System Testing(BB) found by customer during Maintenance.
-- User Acceptance Testing Function & System Testing Refinement Form of(BB Model: V Testing) -- Test Documentation For medium scale and small-scale organisations V Model is expensive to follow. For this type of -- Port Testing organisations, some refinements required in V Model to develop quality Software. HLD IntegrationS/W Changes -- Test Testing MaintenanceS/W RS
-- Test Efficiency Reviews LLDs
White Box Testing
Unit Testing = A / (A+B) DRE Coding
From the above refinement form of V-Model, Small & Medium scale organisations are maintaining separate testing team for functional & System testing stage to decrease cost of testing.
I) Reviews During Analysis:In general, software development process starts with information gathering and analysis. In this stage business analyst category people are developing BRS and S/W RS like documents. BRS defines requirements of the customer & S/W RS defines functional requirements to be developed and system requirements to be used. After completion of this type of documents preparation, they are conducting reviews on the documents for Completeness & Correctness. In this review analysts are using below factors: Are they complete? Are they met requirements? Are they achievable? (w.r.t Technology) Are they reasonable? (w.r.t time & cost) Are they testable?
II) Reviews During Design:After completion of analysis and their reviews, our project level design will start logical design of application in terms of external & internal design (HLD, LLDs). In this stage they are conducting reviews for completeness and correctness of design documents. In this review they are using below factors. Are they understandable? Are they met right requirements? Are they complete? Are they followable? Does they handle Errors?
III) UNIT TESTING:After completion of design & their reviews, programmers will start coding to physically convert software. During this coding stage programmers are conducting unit testing through a set of White Box Testing Techniques.
This unit testing is also known as Module Testing or Component testing or Program Testing or Micro Testing. There are three possible White Box Techniques. 1. Execution Testing: Basis paths coverage (Execution of all possible blocks in a program). Loops Coverage (Termination of loops statements). Program technique coverage (Less no of memory cycles & CPU cycles). 2. Operations Testing: Run on customer expected platforms (OS, Browser, Compiler etc.).Change
Testing: It means that a change in program. White Box Testers are performing this change in program to estimate test coverage on the program. Tests RetestsChange
Pass Fail Pass Pass (Complete Testing) (Incomplete Testing)
IV) Integration Testing:After completion of dependent modules development and testing, programmers are combined them to form a system. In this Integration, they are conducting Integration testing on the coupled modules w.r.t. HLD. There are three approaches to conduct integration testing. 1. Top Down Approach: Conduct testing on main module with out coming to some of the sub modules is called Top-Down Approach.Main Stub
From the above model, stub is a temporary program instead of under construction sub module. It is also known as called program. 2. Bottom Up Approach:
Conduct testing on sub modules with out coming from main module is called Bottom Up Approach. From the above model, Driver is a temporary program instead of main module. This program is also known as calling program.Main Driver Sub 1 Sub 2
3. Sandwich Approach:
The combination of Top Down and Bottom-UP approaches is called Sandwich Approach.Main Driver Sub 1 Stub Sub 2 Sub 3
BUILD: A finally intigrated all modules set .EXE form is called Build.
V) Functional & System Testing:After compleation of final integration of modules as a system, test engineers are planning to conduct Functional & System Testing through Black Box Testing Technique. Thease techniques classified in to four Catageries. 1. 2. 3. 4. Usability Testing Functionality Testing Performance Testing Security Testing Core Level Advanced Level
During Usability Testing, testing team validates User Friendliness of screens. During Functionality Testing, testing team validates Correctness of Customer Requirements. During Performance Testing, testing team estimates Speed of Processing. During Security Testing, testing team validates Privacy to User Operations.
1. Usability Testing:In general testing team starts test execution with Usability testing. During this test, testing team validates User Friendliness of screens of build. During Usability Testing, testing teams are applying two types of sub tests. a) User Interface Test (UI): Ease of use ( Understandable Screens) Look & Feel ( Attractive or pleasantness) Speed Interface ( Less no of events to complete a task)
b) Manuals Support testing: Context sensitiveness of user manuals. Receive Build from developers
UI Testing Usability Testing Remaining System Tests Manuals Support Test
2) Functional Testing:A major part of BB testing is Functional Testing. During this test testing team concentrate on Meet Customer Requirements. This functional testing classified into below tests. a) Functionality or Requirements Testing: During this test, test engineer validates Corrections of every functionality in terms of below coverages. Behavioral coverage ( Changes in object properties ) Input(i/p) Domine coverage ( Size and type of every input object) Error-Handling coverage ( Preventing ve navigations ) Calculations Coverage ( Correctness of outputs ) Backend coverage ( Impact of front-end operations on backend tables content) Service level coverage ( order of functionalitys)
b) Input Domine Testing: It is a part of Functionality Testing. Test engineers are maintaining special structures to define size and type of every input object.
Boundary Value Analysis BVA( Range / Size ): Min Min 1 Min + 1 Max Max - 1 Max + 1 -- Pass -- Fail -- Pass -- Pass -- Pass -- Fail
Equivalence Class Partitions ECP (Type): Valid Pass Invalid Fail
Example1: A login process allows user ID and Password to validate users. User ID allows Alpha Numerics in lower case from 4 to 16 characters long. Password allows alpha bits in lower case 4 to 8 characters long. Prepare BVA and ECP for user ID and password. User ID BVA 4 pass 3 fail 5 pass 16 pass 15 pass 17 - Fail Password BVA 4 pass 3 fail 5 pass 8 pass 7 pass 9 - Fail ECP V