Testing Introduction. IEEE Definitions



Similar documents
IEEE ComputerSociety 1 Software and Systems Engineering Vocabulary

Software testing. Objectives

Regression Testing Based on Comparing Fault Detection by multi criteria before prioritization and after prioritization

FSW QA Testing Levels Definitions

Basic Testing Concepts and Terminology

Software Testing Interview Questions

Testing Overview and Black-Box Testing Techniques

Software Testing. Knowledge Base. Rajat Kumar Bal. Introduction

Levels of Software Testing. Functional Testing

ICAPRG529A Apply testing techniques for software development

Chapter 8 Software Testing

Software Testing Lifecycle

Presentation: 1.1 Introduction to Software Testing

TEST PLAN Issue Date: <dd/mm/yyyy> Revision Date: <dd/mm/yyyy>

Software Test Plan (STP) Template

White Papers: Unit Testing. Unit Testing

Module 10. Coding and Testing. Version 2 CSE IIT, Kharagpur

How To Write Software

Test Plan Template: (Name of the Product) Prepared by: (Names of Preparers) (Date) TABLE OF CONTENTS

Improved Software Testing Using McCabe IQ Coverage Analysis

International Software Test Institute

Roadmap. Software Engineering. Software Engineering. Project Life Cycle. Database. Project Lifecycle

Introduction to Automated Testing

Test Management and Techniques

Co-Presented by Mr. Bill Rinko-Gay and Dr. Constantin Stanca 9/28/2011

CUT COSTS, NOT PROJECTS

MOBILE APPLICATION TESTING ENGINEER

1 White-Box Testing by Stubs and Drivers

Quality Management. Lecture 12 Software quality management

CS314: Course Summary

SOFTWARE-IMPLEMENTED SAFETY LOGIC Angela E. Summers, Ph.D., P.E., President, SIS-TECH Solutions, LP

CSTE Mock Test - Part III Questions Along with Answers

Introduction to Software Engineering. 8. Software Quality

Software Testing Tutorial

ISTQB Certified Tester. Foundation Level. Sample Exam 1

4.13 System Testing. Section 4 Bidder's Products, Methodology, and Approach to the Project System Training

Functional and LoadTest Strategies

Quality Assurance - Karthik

SECTION 2 PROGRAMMING & DEVELOPMENT

4. Test Design Techniques

SECTION 4 TESTING & QUALITY CONTROL

Testing. Chapter. A Fresh Graduate s Guide to Software Development Tools and Technologies. CHAPTER AUTHORS Michael Atmadja Zhang Shuai Richard

MANUAL TESTING. (Complete Package) We are ready to serve Latest Testing Trends, Are you ready to learn.?? New Batches Info

Software Engineering. Software Testing. Based on Software Engineering, 7 th Edition by Ian Sommerville

How To Improve Software Quality

How To Test A Web Based System

The Dangers of Use Cases Employed as Test Cases


Software Testing. System, Acceptance and Regression Testing

Techniques and Tools for Rich Internet Applications Testing

Logistics. Software Testing. Logistics. Logistics. Plan for this week. Before we begin. Project. Final exam. Questions?

An Introduction to. Metrics. used during. Software Development

Review of Mobile Applications Testing with Automated Techniques

An Increase in Software Testing Robustness: Enhancing the Software Development Standard for Space Systems

R214 SPECIFIC REQUIREMENTS: INFORMATION TECHNOLOGY TESTING LABORATORY ACCREDITATION PROGRAM

Group18-CUCE2012. Mr. Mobile Project. Software Testing Plan (STP) Version: 4.0. CM Identifier: G18_SE004

CS 451 Software Engineering Winter 2009

Software Engineering. How does software fail? Terminology CS / COE 1530

SOFTWARE TESTING - QUICK GUIDE SOFTWARE TESTING - OVERVIEW

Test Specification. Introduction

Software Engineering Introduction & Background. Complaints. General Problems. Department of Computer Science Kent State University

Chapter 11, Testing, Part 2: Integration and System Testing

Comparative Study of Automated testing techniques for Mobile Apps

An Analysis on Objectives, Importance and Types of Software Testing

Verification and Validation of Software Components and Component Based Software Systems

Advancements in the V-Model

Metrics in Software Test Planning and Test Design Processes

APPROACHES TO SOFTWARE TESTING PROGRAM VERIFICATION AND VALIDATION

Agile Software Development Methodologies and Its Quality Assurance

D6.1 GEEWHEZ Test plan

CSTE Mock Test - Part I - Questions Along with Answers

Writing The Business Case for Automated Software Testing and Test Management Tools

Oracle Insurance Policy Administration System Quality Assurance Testing Methodology. An Oracle White Paper August 2008

Good FORTRAN Programs

Business Application Services Testing

Bringing Value to the Organization with Performance Testing

MERCURY TOURS. Draft: Systems Test Plan for Search Flights Version 1.0. Prepared by: Jeme Terner (Sr. QA Engineer) January, 2010.

The Theory of Software Testing

Smarter Balanced Assessment Consortium. Recommendation

Sample Exam Syllabus

Copyrighted , Address :- EH1-Infotech, SCF 69, Top Floor, Phase 3B-2, Sector 60, Mohali (Chandigarh),

System Build 2 Test Plan

Software Testing Strategies and Techniques

Software Testing. Theory and Practicalities

Formal Software Testing. Terri Grenda, CSTE IV&V Testing Solutions, LLC

Custom Web Development Guidelines

Software Testing, Mythology & Methodologies

A Comprehensive Approach to Master Data Management Testing

Testing is the process of evaluating a system or its component(s) with the intent to find whether it satisfies the specified requirements or not.

International Journal of Computer Engineering and Applications, Volume V, Issue III, March 14

Lecture 17: Requirements Specifications

Static vs. Dynamic Testing How Static Analysis and Run-Time Testing Can Work Together. Outline

Introduction to Computers and Programming. Testing

CHAPTER 01 THE SCOPE OF SOFTWARE ENGINEERING

Transcription:

Testing Introduction IEEE Definitions Software testing is the process of analyzing a software item to detect the differences between existing and required conditions (that is, bugs) and to evaluate the features of the software item Reliability is the ability of a system or component to perform its required functions under stated conditions for a specified period of time

Validation vs. verification Validation: process of evaluating a system or component during or at the end of the development process to determine whether it satisfies specified requirements Validation: Are we building the right product? Verification: the process of evaluating a system or component to determine whether the products of a given development phase satisfy the conditions imposed at the start of that phase Verification: Are we building the product right? IEEE definitions

Mistake, Fault, Failure, etc. Mistake a human action that produces an incorrect result. Fault [or Defect] an incorrect step, process, or data definition in a program. Failure the inability of a system or component to perform its required function within the specified performance requirement. Error the difference between a computed, observed, or measured value or condition and the true, specified, or theoretically correct value or condition. Our job as testers is to write test cases to cause failures. But, there is no way to guarantee that all faults have been detected. Work smart: write as few test cases as possible to cause failures; don t have more than one test cause the same failure.

Testing Models Black box testing... You know the functionality Given that you know what it is supposed to do, you design tests that make it do what you think that it should do From the outside, you are testing its functionality against the specs For software this is testing the interface» What is input to the system?» What you can do from the outside to change the system?» What is output from the system? Tests the functionality of the system by observing its external behavior No knowledge of how it goes about meeting the goals Testing Models - 2 White box testing... You know the code Given knowledge of the internal workings, you thoroughly test what is happening on the inside Close examination of procedural level of detail Logical paths through code are tested» Conditionals» Loops» Branches Status is examined in terms of expected values Impossible to thoroughly exercise all paths» Exhaustive testing grows without bound Can be practical if a limited number of important paths are evaluated Can be practical to examine and test important data structures

Types of Testing Unit Testing testing of individual hardware or software units or groups of related units Done by programmer(s) Generally all white box Automation desirable for repeatability Integration Testing testing in which software components, hardware components, or both are combined and tested to evaluate the interaction between them Done by programmer as they integrate their code into code base Generally white box, maybe some black box Automation desirable for repeatability Functional/System Testing testing conducted on a complete, integrated system to evaluate the system compliance with its specified requirements Stress testing, performance testing, usability testing It is recommended that this be done by external test group Mostly black box so that testing is not corrupted by too much knowledge Test automation desirable Acceptance Testing formal testing conducted to determine whether or not a system satisfies its acceptance criteria (the criteria the system must satisfy to be accepted by a customer) and to enable the customer to determine whether or not to accept the system Generally done by customer/customer representative in their environment through the GUI... Definitely black box Regression Testing Regression testing is selective retesting of a system or component to verify that modifications have not caused unintended effects and that the system or component still complies with its specified requirements Smoke test group of test cases that establish that the system is stable and all major functionality is present and works under normal conditions Beta Testing Fill in chart Testing Type Unit Specification [what you look at to write tests] Black or white? Valid. or verif? Integration Functional and System Acceptance Beta Regression