A Taxonomy for Test Oracles

Similar documents
Using Test Oracles in Automation. Topics

Automating Results Comparison Isn t Always Easy

Metrics for Metrics. Cost Analysis and Justifications

Mutating Automated Tests

ASQ s 2002 CSQE Body of Knowledge CSQE ASQ. Certification Requirements. Recertification Requirements. ASQ's 2002 BOK Quality Week 2002

ASQ s 2002 CSQE Body of Knowledge

9. Verification, Validation, Testing

Bugs are costly... Kinds of Quality Assurance

Address system-on-chip development challenges with enterprise verification management.

TRIOLE - IT industrialization is here, and it works -

Evaluating testing strategies for imaging software by means of Mutation Analysis

I hate Maintenance! Maintenance SUCKS!

Automated Black Box Testing Using High Level Abstraction SUMMARY 1 INTRODUCTION. 1.1 Background

Cost Benefits Analysis of Test Automation

Simio User Group Meeting

The Darker Side of Metrics. What Does This Chart Show?

Black Box Software Testing (Academic Course - Fall 2001) Cem Kaner, J.D., Ph.D. Florida Institute of Technology

Assessment of Processes for Implementation of Automated Data Analysis Systems

Modelling the Risk In Defence Engineering

HP ALM: Less Test Cases, More Coverage September 17, 2014

Project and Process Tailoring For Success

Totally Integrated Automation. Efficiency driving productivity

Lectures 2 & 3. Software Processes. Software Engineering, COMP201 Slide 1

INTRODUCTION. It is the process used to identify the correctness, completeness and quality of developed computer software.

QuEST Forum. TL 9000 Quality Management System. Requirements Handbook

Testing. CxOne Standard

TDWI strives to provide course books that are contentrich and that serve as useful reference documents after a class has ended.

CONTINUED PROCESS VERIFICATION (CPV) INFORMATICS SYSTEMS AND VALIDATION

Need Management. April 2009

Data Scientists in Software Teams: State of Art and Challenges [IEEE Transactions on Software Engineering, ICSE 2018 Journal First]

Testability of Dynamic

Totally Integrated Automation. Efficiency driving productivity

INTEGRATED TEST PLATFORMS: TAKING ADVANTAGE OF ADVANCES IN COMPUTER HARDWARE AND SOFTWARE

Evaluation of Machine Learning Algorithms for Satellite Operations Support

Before we begin, let s talk briefly about why GIS data quality is important.

Measuring and Assessing Software Quality

Test Strategies Around the World Winning the War on Bugs Through Strategy

Test Workflow. Michael Fourman Cs2 Software Engineering

ORACLE PROPERTY MANAGER

Mitchell eglassclaim. (m)powered. Manage, price, and control your glass claims process with built-in, industry-leading tools for:

Testing 2. Testing: Agenda. for Systems Validation. Testing for Systems Validation CONCEPT HEIDELBERG

Price quoting solution boosts efficiency, drives sales increase

Lecture 7. Safety Analysis: Failure Modes and Effect Analysis (FMEA) Functional Hazard Assessment (FHA)

Accelerating Xilinx All Programmable FPGA and SoC Design Verification with Blue Pearl Software

An Oracle White Paper June Leveraging the Power of Oracle Engineered Systems for Enterprise Policy Automation

INSIGHTS. Demand Planner for Microsoft Dynamics. Product Overview. Date: November,

What is Important When Selecting an MBT Tool?

DESIGN AND DEVELOPMENT

Business Process Simulation for Claims Transformation

Big Data & Analytics for Wind O&M: Opportunities, Trends and Challenges in the Industrial Internet

ISTQB Certified Tester. Foundation Level. Sample Exam 1

Dimensions of Test Coverage Quantifying What Has and Hasn t Been Tested

CONNECT FASTER COMMUNICATE BETTER QUALIFY SMARTER!

Automated data capture & document management - made simple!

Chapter 2 Enterprise Systems

Standards Australia LICENCE

Release Notes. Oracle Revenue Management and Billing. Version Revision 1.0. E June, 2016

REQUIREMENTS QUALITY MANAGEMENT WITHIN THE AIRBUS GROUP

Advanced Manufacturing Laboratory. Department of Industrial Engineering. Sharif University of Technology

Twice as Long to Do It Wrong

The Software Quality Center of Excellence

Skill Category 7. Quality Control Practices

Successfully Integrating Test Automation and Agile Projects 10/7/2009. Presented to Annex Consulting Group CIO Breakfast October 7, 2009

i2 Demand Planner i2 SCM Solution i2 Demand Planner ... React to changing demand factors Track all end product options and components

A Systematic Approach to Performance Evaluation

A PRACTICAL APPROACH TO PRIORITIZE THE TEST CASES OF REGRESSION TESTING USING GENETIC ALGORITHM

Data Consumption. North Lincolnshire Council. Neil Stephenson. Senior GIS & System Development Officer 21 st March 2017

System Verification Helps Validate Complex Integrated Systems. American Bureau of Shipping (ABS) RELIABILITY SESSION.

THE COVERAGE CHALLENGE INDUSTRY COVERAGE TRENDS

R214 SPECIFIC REQUIREMENTS: INFORMATION TECHNOLOGY TESTING LABORATORY ACCREDITATION PROGRAM

Automotive Safety and Security in a Verification Continuum Context

Standards for Validation Studies of DNA Mixtures, and Development and Verification of a Laboratory s Mixture Interpretation Protocol


Building smart products: best practices for multicore software development

ORACLE CONTACT CENTER ANYWHERE: OUTBOUND DIALING CAPABILITIES

MANAGING NEXT GENERATION ARTIFICIAL INTELLIGENCE IN BANKING

JD Edwards EnterpriseOne Demand Scheduling Execution New Features and Functionality. An Oracle White Paper January 2004 (updated October 2005)

Benefits of MIDAS for HP Operations Manager

Axioma Risk Model Machine

Service Virtualization

IT MAY COST MORE THAN YOU THINK

Professor Hausi A. Müller PhD PEng FCAE Department of Computer Science Faculty of Engineering University of Victoria

IBM storage solutions: Evolving to an on demand operating environment

Decision Support and Business Intelligence Systems

Bar Code Quality Control Why Verification

Strategies of Testing, Not Schools A Powerful Way to Effective, Efficient Testing

Standard Glossary of Terms used in Software Testing. Version 3.2. Terms Changed since 01-Feb-2018

Managing Information Systems Seventh Canadian Edition. Laudon, Laudon and Brabston. CHAPTER 11 Managing Knowledge

Approximately 650 registrants from around the world

Using Auto-Generated Diagnostic Trees for Verification of Operational Procedures in Software-Hardware Systems

Verifying and Validating Software in a Regulated Environment

Medical Device Software Development:

Darshan Institute of Engineering & Technology for Diploma Studies Rajkot Unit-1

Case Study: Global Banking Company Transforms Testing Approach to Overcome Challenges of Shortening Development Cycles

Financial Close Best Practices

Delivering Innovation in Digital Manufacturing through XVL

Model Based Design in Automation

Trends in Reliability Testing By Stuart Reid

FRAUNHOFER INSTITUTE FOR PRODUCTION TECHNOLOGY IPT CAX-TECHNOLOGIES. Our Partner

Objectives. The software process. Topics covered. Waterfall model. Generic software process models. Software Processes

Transcription:

A Taxonomy for Test Oracles Quality Week 98 Douglas Hoffman Software Quality Methods, LLC. 24646 Heather Heights Place Saratoga, California 95070-9710 Phone 408-741-4830 Fax 408-867-4550 Copyright 1998, Software Quality Methods, LLC. No part of these graphic overhead slides may be reproduced, or used in any form by any electronic or mechanical duplication, or stored in a computer system, without written permission of the author. Douglas Hoffman Copyright 1998, SQM, LLC. 1

Test Oracles Douglas Hoffman Copyright 1998, SQM, LLC. 2

Generating Expected Results Manual verification of results (human oracle) Separate program implementing the same algorithm Software system simulator to produce parallel results Hardware simulator to emulate operations Earlier version of the software Same version of software on a different hardware platform Check of specific values for selected known responses Verification of consistency of generated values and end points Sampling of values against independently generated expected results Douglas Hoffman Copyright 1998, SQM, LLC. 3

Test Automation is not just machines running tests! Douglas Hoffman Copyright 1998, SQM, LLC. 4

Test Automation includes interpreting results! Douglas Hoffman Copyright 1998, SQM, LLC. 5

Human Oracles Norm for manual testing Sometimes slower than computers Can t observe system interals Loses concentration Easily trained to overlook errors Douglas Hoffman Copyright 1998, SQM, LLC. 6

I-P-O Testing Model (Black Box) Test Inputs System Under Test Test Results Douglas Hoffman Copyright 1998, SQM, LLC. 7

Expanded Testing Model (Black Box) Test Inputs Test Results Precondition Data Precondition Program State System Under Test Postcondition Data Postcondition Program State Environmental Inputs Environmental Results Douglas Hoffman Copyright 1998, SQM, LLC. 8

Testing Model With Oracle Test Inputs Precondition Data Test Oracle Test Results Test Results Postcondition Data Postcondition Data Precondition Program State Environmental Inputs System Under Test Postcondition Program State Postcondition Program State Environmental Results Environmental Results Douglas Hoffman Copyright 1998, SQM, LLC. 9

Oracles Modeled in Testing Differ based on SUT May be more than one for SUT Inputs may effect more than one oracle Oracle only produces some results Douglas Hoffman Copyright 1998, SQM, LLC. 10

Oracle Characteristics Completeness of information from oracle Accuracy of information from oracle Independence of oracle from SUT Algorithms Sub-programs and libraries System platform Operating environment Douglas Hoffman Copyright 1998, SQM, LLC. 11

Oracle Characteristics (continued) Speed of predictions Time of execution of oracle Usability of results Correspondence (currency) of oracle through changes in the SUT Douglas Hoffman Copyright 1998, SQM, LLC. 12

Scale of Oracle Characteristics Dependent Independence f r o m Independent None Correspondence of Results to SUT Complete Douglas Hoffman Copyright 1998, SQM, LLC. 13

Oracle Measures Oracle may become as complex as SUT More complex oracles make more errors Close correspondence reduces maintainability Close correspondence makes common mode faults likely Douglas Hoffman Copyright 1998, SQM, LLC. 14

Types of Oracles True Stochastic Heuristic Sampling Consistent Douglas Hoffman Copyright 1998, SQM, LLC. 15

True Oracle Pro: Independent of SUT Faithful results May exhaustively test Good for any test case Con: Costly Complex Slow Hard to maintain Douglas Hoffman Copyright 1998, SQM, LLC. 16

Stochastic Oracle Pro: Random sampling Fewer values Uniform SUT coverage Can select desired coverage level Less Costly May be simple Con: Can miss systematic faults Uniform SUT coverage May be slow to verify Cannot focus Douglas Hoffman Copyright 1998, SQM, LLC. 17

Heuristic Oracle Pro: Check selected points Interpolate between using heuristic Fast for regular algorithms Can check large volumes of data Con: Can miss systematic faults Can miss incorrect algorithms Need points and heuristic Inflexible Douglas Hoffman Copyright 1998, SQM, LLC. 18

Sampling Oracle Can select easy values Quick Pro: Inexpensive Can focus Con: Can miss systematic faults Can miss incorrect algorithms Likely to miss specific faults Easily biased Douglas Hoffman Copyright 1998, SQM, LLC. 19

Consistent Oracle Pro: Good for monitoring changes Good for checking for side-effects Good for regression testing Quick for some environments Can check huge volumes of raw data Con: Legacy errors not found May be slow to verify May be difficult to identify fault Requires maintenance Douglas Hoffman Copyright 1998, SQM, LLC. 20

Running An Oracle Type of results Time of running Method of verification Manual Automated With test case With automated test environment Douglas Hoffman Copyright 1998, SQM, LLC. 21

Conclusions Different types of oracles possible Some kind of oracle needed Oracle not constrained like SUT Solutions differ with SUT Oracles are part of automation Douglas Hoffman Copyright 1998, SQM, LLC. 22