Test Plans Test Driven Development – Unit test plan first Code coverage Automated Regression built as you go Debug is easier Serves as system doc – Still.

Slides:



Advertisements
Similar presentations
Chapter 11, Testing, Part 2: Integration and System Testing
Advertisements

Testing and Quality Assurance
SOFTWARE TESTING. INTRODUCTION  Software Testing is the process of executing a program or system with the intent of finding errors.  It involves any.
Software Architecture Prof.Dr.ir. F. Gielen
1 Software Engineering Lecture 11 Software Testing.
Software Failure: Reasons Incorrect, missing, impossible requirements * Requirement validation. Incorrect specification * Specification verification. Faulty.
{ Dominion - Test Plan Version 1 – 22 nd Apr Aravind Palanisami.
Jump into Release 1 Pepper. Goals for End of Class Project delivery Diagrams (new class & firm state, use, context, sequence) Agile cycles with SCRUM.
CMSC 345, Version 11/07 SD Vick from S. Mitchell Software Testing.
Testing and Debugging CS221 – 2/13/09. Airline Program.
Informatics 43 – April 30, What is a test case? An input to a system, and the correct output. An “input” may be complex. Example: – What is an input.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 23 Slide 1 Software testing.
16/27/2015 3:38 AM6/27/2015 3:38 AM6/27/2015 3:38 AMTesting and Debugging Testing The process of verifying the software performs to the specifications.
Software Testing. “Software and Cathedrals are much the same: First we build them, then we pray!!!” -Sam Redwine, Jr.
Outline Types of errors Component Testing Testing Strategy
BY RAJESWARI S SOFTWARE TESTING. INTRODUCTION Software testing is the process of testing the software product. Effective software testing will contribute.
1 Functional Testing Motivation Example Basic Methods Timing: 30 minutes.
Functional Testing Test cases derived from requirements specification document – Black box testing – Independent testers – Test both valid and invalid.
Test Design Techniques
Dr. Pedro Mejia Alvarez Software Testing Slide 1 Software Testing: Building Test Cases.
Software Quality Assurance Lecture #8 By: Faraz Ahmed.
Introduction to Unit Testing Jun-Ru Chang 2012/05/03.
Software Testing CS 121 “Ordering Chaos” “Mike” Michael A. Erlinger
Object-Oriented Software Engineering, Ch. 9
Introduction Telerik Software Academy Software Quality Assurance.
CMSC 345 Fall 2000 Unit Testing. The testing process.
Effectively Validate Query/Report: Strategy and Tool Steven Luo Sr. System Analyst Barnes & Noble Session id:
Software Engineering Chapter 23 Software Testing Ku-Yaw Chang Assistant Professor Department of Computer Science and Information.
Chapter 8 – Software Testing Lecture 1 1Chapter 8 Software testing The bearing of a child takes nine months, no matter how many women are assigned. Many.
1 Software testing. 2 Testing Objectives Testing is a process of executing a program with the intent of finding an error. A good test case is in that.
Testing Basics of Testing Presented by: Vijay.C.G – Glister Tech.
Ch6: Software Verification. 1 Decision table based testing  Applicability:  Spec. is described by a decision table.  Tables describe:  How combinations.
Software Testing. 2 CMSC 345, Version 4/12 Topics The testing process  unit testing  integration and system testing  acceptance testing Test case planning.
Dr. Tom WayCSC Testing and Test-Driven Development CSC 4700 Software Engineering Based on Sommerville slides.
Software Testing Yonsei University 2 nd Semester, 2014 Woo-Cheol Kim.
16 October Reminder Types of Testing: Purpose  Functional testing  Usability testing  Conformance testing  Performance testing  Acceptance.
Software Testing Reference: Software Engineering, Ian Sommerville, 6 th edition, Chapter 20.
Chapter 8 Lecture 1 Software Testing. Program testing Testing is intended to show that a program does what it is intended to do and to discover program.
Software Engineering 2004 Jyrki Nummenmaa 1 BACKGROUND There is no way to generally test programs exhaustively (that is, going through all execution.
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
Software Engineering Issues Software Engineering Concepts System Specifications Procedural Design Object-Oriented Design System Testing.
Software Testing. System/Software Testing Error detection and removal determine level of reliability well-planned procedure - Test Cases done by independent.
 Software Testing Software Testing  Characteristics of Testable Software Characteristics of Testable Software  A Testing Life Cycle A Testing Life.
1 Phase Testing. Janice Regan, For each group of units Overview of Implementation phase Create Class Skeletons Define Implementation Plan (+ determine.
Software Testing Reference: Software Engineering, Ian Sommerville, 6 th edition, Chapter 20.
Lecturer: Eng. Mohamed Adam Isak PH.D Researcher in CS M.Sc. and B.Sc. of Information Technology Engineering, Lecturer in University of Somalia and Mogadishu.
1 Software Testing. 2 What is Software Testing ? Testing is a verification and validation activity that is performed by executing program code.
Testing Integral part of the software development process.
CX Introduction to Web Programming Testing.
Software Testing. Software Quality Assurance Overarching term Time consuming (40% to 90% of dev effort) Includes –Verification: Building the product right,
Software Testing.
Testing Verification and the Joy of Breaking Code
Software Testing.
Rekayasa Perangkat Lunak Part-13
TESTING TOOLS MANUAL APPROACH BY J.ADI SESHU.
Black Box Testing PPT Sources: Code Complete, 2nd Ed., Steve McConnell
Software Testing Software testing.
Chapter 13 & 14 Software Testing Strategies and Techniques
Types of Testing Visit to more Learning Resources.
Software testing.
Testing and Test-Driven Development CSC 4700 Software Engineering
Static Testing Static testing refers to testing that takes place without Execution - examining and reviewing it. Dynamic Testing Dynamic testing is what.
Software testing.
Software Testing & Quality Management
Informatics 43 – April 28, 2016.
Test Case Test case Describes an input Description and an expected output Description. Test case ID Section 1: Before execution Section 2: After execution.
CSE 1020:Software Development
System analysis and design
Chapter 7 Software Testing.
Chapter 13 & 14 Software Testing Strategies and Techniques 1 Software Engineering: A Practitioner’s Approach, 6th edition by Roger S. Pressman.
Presentation transcript:

Test Plans Test Driven Development – Unit test plan first Code coverage Automated Regression built as you go Debug is easier Serves as system doc – Still need system test on top – Legacy code might not have the plans

Test Plan levels User Acceptance System (integration) Unit test (TDD concerned with these) Regression

Type Try to break it Validate flows (from state to state) Validate Specifications (including use cases and sequence diagrams) Stress test Code inspection Black box vs white box – Black - From spec - no design knowledge – White - look at code to find decisions

A Good Test Case Setup situation - environment to input into Action to test - actual input Assertion of result - what the environment looks like when you are done

Chose cases Input / output partitions (similar characteristics) – One from each paritition; boundaries and null Cause all failure types (every failure error msg) Sequences: have only 1 in a sequence; have none in a sequence; also act on first, middle and last Input / output buffer overflow Try to force invalid outputs

Environments Good test environments encourage good tests – Refresh periodically – One per user + One shared Bypass Database with stubs to return from a DB call – Quick – Not complete

Testing Wrap UP Levels - unit / system / user Structure - situation / input / expected output TDD - code test before coding program Choose cases - partitions (border, null, sample) / sequences / buffer limits / force errors You will be able to : – Write a user acceptance test plan – Write good test cases on paper