Testing: Fundamentals of Making a Good Test Presented by Emerson Murphy-Hill Based on Slides by ©Paul Ammann and Jeff Offutt

Slides:



Advertisements
Similar presentations
Introduction to Software Testing Chapter 1 Model-Driven Test Design Paul Ammann & Jeff Offutt
Advertisements

Introduction to Software Testing Chapter 9.2 Challenges in Testing Software – Software Testability Paul Ammann & Jeff Offutt
Starting Out with C++: Early Objects 5/e © 2006 Pearson Education. All Rights Reserved Starting Out with C++: Early Objects 5 th Edition Chapter 5 Looping.
Paul Ammann & Jeff Offutt
Basic Unix Dr Tim Cutts Team Leader Systems Support Group Infrastructure Management Team.
Tasks 1.Check you have the following posts: 1.Hardware and Software 2.Input and Output 3.Components of a Computer 2.ALL fonts should be a sensible size.
Dr. Pedro Mejia Alvarez Software Testing Slide 1 Software Testing: Building Test Cases.
1.3 System Design Parts of a System InputProcessOutput Input Devices Central Processing Unit Output Devices The main parts of any computer system.
 What Is a Computer? What Is a Computer?  Computer System Components Computer System Components  Hardware Hardware  Types of Memory Types of Memory.
Computer Literacy for IC 3 Unit 1: Computing Fundamentals © 2010 Pearson Education, Inc. | Publishing as Prentice Hall.1 Chapter 1: Identifying Types of.
By:. Use a computer dictionary like Keep it simple people.
Introduction to Software Testing Chapter 1 Introduction
Software Testing and Maintenance Lecture 4 Graph Coverage for Design Element Paul Ammann & Jeff Offutt Instructor: Hossein Momeni Mazandaran.
Introduction to Software Testing Chapter 9.1 Challenges in Testing Software – Testing for Emergent Properties: Safety and Security Paul Ammann & Jeff Offutt.
Configuration Management (CM)
Introduction to Software Testing Chapter 8.1 Building Testing Tools –Instrumentation Paul Ammann & Jeff Offutt
SWE 637: Test Criteria and Definitions Tao Xie Prepared based on Slides by ©Paul Ammann and Jeff Offutt Revised by Tao Xie.
637 – Introduction (Ch 1) Introduction to Software Testing Chapter 1 Jeff Offutt Information & Software Engineering SWE 437 Software Testing
1 1. Systems and Software Development 1.1 The Systems Life Cycle.
Chapter 3: Personal Computers in the Learning Environment Annette Arnold ETEC 562 September 14, 2005.
By Dinesh Bajracharya Nepal Components of Information system.
Ian Gover Education Technology Adviser Somerset County Council Hardware.
1 Introduction to Software Testing. Reading Assignment P. Ammann and J. Offutt “Introduction to Software Testing” ◦ Chapter 1 2.
In and Out are opposites. This is something to keep in mind when considering Input and Output. INPUT OUTPUT Ask: Does this device send information in?
Introduction to Software Testing Paul Ammann & Jeff Offutt Updated 24-August 2010.
Introduction to Software Testing. OUTLINE Introduction to Software Testing (Ch 1) 2 1.Spectacular Software Failures 2.Why Test? 3.What Do We Do When We.
Cs111_pre.ppt CS111 Introduction to Programming. Cs111_pre.ppt Information You are responsible for you life No one else Your effort; energy; time; money.
Cs498dm Software Testing Darko Marinov January 24, 2008.
FUNDAMENTALS OF COMPUTERS
TESTING FUNDAMENTALS BY K.KARTHIKEYAN.
Introduction to Operating Systems Prepared by: Dhason Operating Systems.
1.The following diagram illustrates the relationship among various hardware components. The arrows indicate the directions of data flow. Activity 1 Relationship.
Workshop on Integrating Software Testing into Programming Courses (WISTPC14:2) Friday July 18, 2014 Introduction to Software Testing.
Cs498dm Software Testing Darko Marinov January 27, 2009.
Fall 2000M.B. Ibáñez Lecture 26 I/O Systems II. Fall 2000M.B. Ibáñez Application I/O Interface I/O system calls encapsulate device behaviors in generic.
Introduction to Software Testing Chapter 3.4 Logic Coverage for Specifications Paul Ammann & Jeff Offutt
OPERATING SYSTEM BASICS. What is an operating system and what does it do? The operating system has two basic functions: –communicates with the PC.
Course Overview This course encourages candidates to develop their knowledge and understanding of computer systems, the principles of computing (including.
Introduction to Software Testing Model-Driven Test Design and Coverage testing Paul Ammann & Jeff Offutt Update.
May 5, 2004Slide 2 OmnAuto TMS Solution May 5, 2004Slide 3 OmnAuto TMS Dataflow.
Information Technology Part 2. Part2-2 Next Three Chapters Copyright © 2016 Pearson Education, Inc. Chapter 4 discusses hardware, software, and mobile.
Cs498dm Software Testing Darko Marinov January 26, 2012.
Artificial Intelligence In Power System Author Doshi Pratik H.Darakh Bharat P.
Identify internal hardware devices (e. g
3.1.2 Software and hardware components of an information system
Test Automation CS 4501 / 6501 Software Testing
Paul Ammann & Jeff Offutt
Paul Ammann & Jeff Offutt
Introduction to Software Testing Chapter 3.5 Logic Coverage for FSMs
LESSON 3.
Graph Coverage for Design Elements CS 4501 / 6501 Software Testing
Introduction to Software Testing Chapter 5.1 Syntax-based Testing
Introduction to Software Testing Chapter 2 Model-Driven Test Design
Paul Ammann & Jeff Offutt
Introduction to Software Testing Chapter 3 Test Automation
Introduction to Software Testing Chapter 8.5 Logic Coverage for FSMs
Introduction to JUnit CS 4501 / 6501 Software Testing
Computer Fundamentals
Test Automation CS 4501 / 6501 Software Testing
Introduction to Software Testing Chapter 3, Sec# 3.5
Hardware & Software Programming. COMP102 Prog. Fundamentals I: Software / Slide 2 l Four components of a computer system: n CPU - central processing unit.
Introduction to Software Testing Chapter 3.5 Logic Coverage for FSMs
More JUnit CS 4501 / 6501 Software Testing
Graph Coverage for Design Elements CS 4501 / 6501 Software Testing
Paul Ammann & Jeff Offutt
Hardware Ian Gover Education Technology Adviser
Put the on A on the keyboard.
Paul Ammann & Jeff Offutt
 Is a machine that is able to take information (input), do some work on (process), and to make new information (output) COMPUTER.
Internal components of a computer.
Presentation transcript:

Testing: Fundamentals of Making a Good Test Presented by Emerson Murphy-Hill Based on Slides by ©Paul Ammann and Jeff Offutt Aditya Marthur Tao Xie

What Makes a Good Test? Observability and Controllability Software Observability : How easy it is to observe the behavior of a program in terms of its outputs, effects on the environment and other hardware and software components Software Controllability : How easy it is to provide a program with the needed inputs, in terms of values, operations, and behaviors © Ammann & Offutt2

Insights Observability Software that affects hardware devices, databases, or remote files have low observability Controllability Easy to control software with inputs from keyboards Inputs from hardware sensors or distributed software is harder Data abstraction reduces controllability and observability © Jeff Offutt, 20053

Inputs to Affect Controllability and Observability Prefix Values : Any inputs necessary to put the software into the appropriate state to receive the test case values Postfix Values : Any inputs that need to be sent to the software after the test case values Two types of postfix values 1.Verification Values : Values necessary to see the results of the test case values 2.Exit Commands : Values needed to terminate the program or otherwise return it to a stable state Executable Test Script : A test case that is prepared in a form to be executed automatically on the test software and produce a report © Ammann & Offutt 4