Midterm Wednesday Oct. 27, 7pm, room 142

Size: px
Start display at page:

Download "Midterm Wednesday Oct. 27, 7pm, room 142"

Transcription

1 Regression Testing Midterm Wednesday Oct. 27, 7pm, room 142 In class, closed book eam Includes all the material covered up (but not including) symbolic eecution Need to understand the concepts, know the basic terminology Answer questions about midterm week before eam

2 Reading assignment: Invariant Based Testing Michael D. Ernst, Jake Cockrell, William G. Griswold, and David Notkin, Dynamically Discovering Likely Program Invariants to Support Program Evolution, IEEE Transactions on Software Engineering, vol. 27, no. 2, Feb. 2001, pp Michael Harder, Jeff Mellen, and Michael D. Ernst, Improving Test Suites via Operational Abstraction'' 25th International Conference on Software Engineering, Portland, Oregon, May 2003, pp Last reading assignment before eam Why is regression testing a problem? Large systems can take a l.o.n.g time to retest e.g., 6 months of regression testing before every release Sometimes it is difficult and time consuming to create the tests Sometimes it is difficult and time consuming to evaluate the tests e.g., may not be able to automatically determine if the results are correct for eisting and/or new test cases may require a person in the loop (GUI and simulation eamples) to create and evaluate the results Cost of testing can prevent software improvements

3 Regression Testing Primarily selecting from eisting test cases Plus, adding some new test cases Perhaps, deleting or updating some old test cases Usually view this as deletion plus addition trying to instill confidence that changes are correct new functionality and corrected/modified functionality behave as they should unchanged functionality is indeed unchanged Automated support for Regression testing Test environment or infrastructure support Specification of test cases and results E.g., Junit Capture and replay Especially for GUI components Test data selection support Select a subset of the eisting test cases Based on what? Select new test data to eercise new functionality Based on what? Typically coverage criteria and functional test cases

4 Steps in regression testing Given: a program P originally tested with test set T producing results R and a modified version of the program P Identify the changes to P Select T a subset of T to re-eecute P Test P with T and reestablish correctness of P with respect to T Create new tests T as necessary Regression Testing Selection Criteria Rothermel and Harrold Developed a framework for analytically comparing regression testing criteria Later used this framework to eperimentally compare regression testing criteria

5 Regression Testing Criteria a test case t T is fault-revealing if it produces incorrect outputs for P In general, can not determine which elements of T are fault revealing a test case t T is modification-revealing if it produces different outputs for P than for P Modification-revealing test cases over-approimates the fault revealing test cases In general, can not determine which elements of T are modification revealing a test case t T is modification-traversing if it eecutes a statement in P that has changed Modification-traversing over-approimates modification revealing Can be computed Retest selection Some Alternatives: Fault revealing (Conservative and Precise) -impossible to compute Modification revealing (Conservative, but not precise) -also impossible to compute Modification traversing -easier to compute Retest all (Conservative, but not precise )- trivial to compute

6 SAFE Regression Testing Criteria If the selection criterion is safe,then all of the eisting test cases that could epose a fault have been selected In other words, (T - T ) cannot uncover any faults in the system For t (T - T ), then either t is no longer in the domain or Statements eecuted by t are not impacted by the changes to the code I.e., no statements in the eecution of these test cases were changed An Empirical Study T. L. Graves, M. J. Harrold, J. M. Kim, A. Porter and G. Rothermel, "An Empirical Study of Regression Test Selection Techniques," ACM Transactions on Software Engineering and Methodology, 10 (2), April 2001, pp Eperiment to evaluate Fault detection effectiveness Regression testing is usually not more effective than the original test set Retest-all has good fault detection effectiveness, but may not be cost effective Cost effectiveness Are there techniques that have the similar fault detection effectiveness but the cost of the analysis is significantly less than the test cases it eliminates Cost to compute T versus the cost of eecuting (T-T ) assuming little or no loss in effectiveness

7 Program studied 7 C++ programs from Siemens LOCs Many versions of each 9-41 versions Each version had one seeded fault 2 larger programs 6 Klocs/ 33 versions/multiple faults 49 Klocs/ 5 versions/ multiple faults Test pools, test suites, test cases Test pools Test cases with known edge coverage 1000 edge-coverage test suites selected from the pool randomly Selected test cases to achieve edge-coverage Assume n k test cases needed for the kth suite 1000 non-edge coverage test suites Selected randomly from the pool Kth test suite has n k test cases, so non-edge coverage has a buddy edge-coverage test suite of the same size

8 Regression testing techniques studied Minimization - select test cases from the test suite so that every edge or node associated with the change is eercised often resulted in a single test case Safe - every test case in a suite that eercises a statement that has been deleted, modified, or is new How do we know if a test case will eercise new statements? Dealing with new code a c f

9 Dealing with new code a b Test cases that eercise any of the immediate predecessor nodes of a new statement are assumed to eercise the new statement c f Regression testing techniques studied (continued) Data flow-every test case in a test suite that eercises a def-use pair affected by a deleted or modified statement Not quite safe Not full dependence Random-select 25%/50%/75% of the test cases in a suite chosen randomly Retest-all

10 Test case size reduction Random and test-all select a test suite size that is 25%, 50%, 75%, and 100%, respectively, of T by definition Minimization: ~1% test suite size Safe:~60% test suite size Data flow: 54% test suite size Fault detection effectiveness For minimization, random, and test-all The larger the test suite size the better the fault detection Improvement diminishes as the % gets higher testall 100% random75% random 50% random25% minimization Effectiveness (%)

11 Fault detection effectiveness: safe Safe test suite size averaged 60% of original, but only performed slightly better than random(75%) There was significant variance in the test suite reduction Some programs resulted in almost no reduction in original test suite size Larger programs tended to have a larger reduction in the test suite size for some programs the payoff was significant best case: 5% of the test cases were required Size reduction often depended on where a change was located a Changes to leaf nodes/ components required few test cases b d c e Changes to root node/ component required all test cases f

12 As Reported by Microsoft for Regression Testing To perform test selection, CRANE uses Microsoft s Echelon test prioritization scheme [22]. Echelon analyzes differences between two binaries, at a basic binary block level, and then uses previously archived code coverage information to identify tests that will trigger eecution through maimum number of changed binary blocks. Echelon prioritizes the selected tests by changed blocks covered per test cost unit ratio. Tests that add more coverage to the changed code per unit of effort will end up at top of the list. At this time, we use Echelon as a test prioritization rather than pure test selection tool i.e. we do not recommend that only the selected tests be eecuted on a fi but rather that they are run first. Another comment about MS processes, describing a regression testing tool, CRANE For the situations where certain portions of changed code will be identified as not covered through eisting tests, these test gaps are an important indicator of test cost ideally all changed code should be eecuted before the release therefore new tests need to be defined and run. In our tool, a source level view of changes represents this information in a form of green (covered by eisting tests) and red (not covered) coloring of all changed lines of code. Our recommendation is that all currently uncovered parts of code have tests developed and eecuted for them.

13 Suggested regression testing process Determine the set of safe test cases, T safe This can be run as a background job Cost is basically irrelevant Select from these safe test cases, T selected % selected depends on resources available Other studies have suggested selecting the largest changed files Rerun selected test cases Cost of eecuting test cases Cost of evaluating the results Can often be automated Select new test cases to eercise new functionality In background, may want to rerun (T safe -T selected ) Recompute coverage Regression Testing Conclusion Regression testing is a serious problem for some systems Want to reduce test suite size but not fault detection Need prediction models to select test cases Prediction models Safe selection techniques might still return too many test cases Need to combine with prioritization techniques Simple selection techniques, such as LOC and change info, might be sufficient

Regression Tes+ng. Midterm Wednesday Oct. 26, 7:00-8:30pm Room 142

Regression Tes+ng. Midterm Wednesday Oct. 26, 7:00-8:30pm Room 142 Regression Tes+ng Computer Science 521-621 Fall 2011 Prof. L. J. Osterweil Material adapted from slides originally prepared by Prof. L. A. Clarke Midterm Wednesday Oct. 26, 7:00-8:30pm Room 142 Closed

More information

Lecture 21. Regression Testing Path Spectra. EE 382V Spring 2009 Software Evolution - Instructor Miryung Kim

Lecture 21. Regression Testing Path Spectra. EE 382V Spring 2009 Software Evolution - Instructor Miryung Kim Lecture 21 Regression Testing Path Spectra Today s Agenda (1) Regression Test Selection Path Spectra Presentation by David (skeptic) Presentation by Sidd (advocate) Presentation by Srinivas (skeptic) Today

More information

A METRIC BASED EVALUATION OF TEST CASE PRIORITATION TECHNIQUES- HILL CLIMBING, REACTIVE GRASP AND TABUSEARCH

A METRIC BASED EVALUATION OF TEST CASE PRIORITATION TECHNIQUES- HILL CLIMBING, REACTIVE GRASP AND TABUSEARCH A METRIC BASED EVALUATION OF TEST CASE PRIORITATION TECHNIQUES- HILL CLIMBING, REACTIVE GRASP AND TABUSEARCH 1 M.Manjunath, 2 N.Backiavathi 1 PG Scholar, Department of Information Technology,Jayam College

More information

Dr. N. Sureshkumar Principal Velammal College of Engineering and Technology Madurai, Tamilnadu, India

Dr. N. Sureshkumar Principal Velammal College of Engineering and Technology Madurai, Tamilnadu, India Test Case Prioritization for Regression Testing based on Severity of Fault R. Kavitha Assistant Professor/CSE Velammal College of Engineering and Technology Madurai, Tamilnadu, India Dr. N. Sureshkumar

More information

CHAPTER 5 GENERATING TEST SCENARIOS AND TEST CASES FROM AN EVENT-FLOW MODEL

CHAPTER 5 GENERATING TEST SCENARIOS AND TEST CASES FROM AN EVENT-FLOW MODEL CHAPTER 5 GENERATING TEST SCENARIOS AND TEST CASES FROM AN EVENT-FLOW MODEL 5.1 INTRODUCTION The survey presented in Chapter 1 has shown that Model based testing approach for automatic generation of test

More information

An Empirical Evaluation of Test Adequacy Criteria for Event-Driven Programs

An Empirical Evaluation of Test Adequacy Criteria for Event-Driven Programs An Empirical Evaluation of Test Adequacy Criteria for Event-Driven Programs Jaymie Strecker Department of Computer Science University of Maryland College Park, MD 20742 November 30, 2006 Abstract In model-based

More information

A Lightweight Process for Change Identification and Regression Test Selection in Using COTS Components

A Lightweight Process for Change Identification and Regression Test Selection in Using COTS Components A Lightweight Process for Change Identification and Regression Test Selection in Using COTS Components Jiang Zheng 1, Brian Robinson 2, Laurie Williams 1, Karen Smiley 2 1 Department of Computer Science,

More information

Improving Test Suites via Operational Abstraction

Improving Test Suites via Operational Abstraction Improving Test Suites via Operational Abstraction Michael Ernst MIT Lab for Computer Science http://pag.lcs.mit.edu/~mernst/ Joint work with Michael Harder, Jeff Mellen, and Benjamin Morse Michael Ernst,

More information

Regression Test Selection for Black-box Dynamic Link Library Components

Regression Test Selection for Black-box Dynamic Link Library Components Regression Test Selection for Black-box Dynamic Link Library Components Jiang Zheng 1, Laurie Williams 1, Brian Robinson 2, Karen Smiley 2 1 Department of Computer Science, North Carolina State University,

More information

Software Testing TEST CASE SELECTION AND ADEQUECY TEST EXECUTION

Software Testing TEST CASE SELECTION AND ADEQUECY TEST EXECUTION Software Testing TEST CASE SELECTION AND ADEQUECY TEST EXECUTION Overview, Test specification and cases, Adequacy criteria, comparing criteria, Overview of test execution, From test case specification

More information

An Empirical Study of Regression Test Selection Techniques

An Empirical Study of Regression Test Selection Techniques ACM Transactions on Software Engineering and Methodology (to appear) An Empirical Study of Regression Test Selection Techniques Todd L. Graves Mary Jean Harrold JungMin Kim Adam Porter Gregg Rothermel

More information

Compatibility and regression testing of COTS-component-based software

Compatibility and regression testing of COTS-component-based software Compatibility and regression testing of -component-based software Leonardo Mariani, Sofia Papagiannakis and Mauro Pezzè Università degli studi di Milano Bicocca, DISCo via Bicocca degli Arcimboldi, 8-20126

More information

SFWR ENG 3S03: Software Testing

SFWR ENG 3S03: Software Testing (Slide 1 of 52) Dr. Ridha Khedri Department of Computing and Software, McMaster University Canada L8S 4L7, Hamilton, Ontario Acknowledgments: Material based on [?] Techniques (Slide 2 of 52) 1 2 3 4 Empirical

More information

An Integrated Regression Testing Framework to Multi-Threaded Java Programs

An Integrated Regression Testing Framework to Multi-Threaded Java Programs An Integrated Regression Testing Framework to Multi-Threaded Java Programs Bixin Li 1,2, Yancheng Wang 1, and LiLi Yang 1 1 School of Computer Science and Engineering, Southeast University No.2 Sipailou

More information

Chapter 3. Requirement Based System Test Case Prioritization of New and Regression Test Cases. 3.1 Introduction

Chapter 3. Requirement Based System Test Case Prioritization of New and Regression Test Cases. 3.1 Introduction Chapter 3 Requirement Based System Test Case Prioritization of New and Regression Test Cases 3.1 Introduction In this chapter a new prioritization technique has been proposed with two new prioritization

More information

Software Quality Assurance (SQA) Software Quality Assurance

Software Quality Assurance (SQA) Software Quality Assurance Software Quality Assurance (SQA) Software Quality Assurance Use of analysis to validate artifacts requirements analysis design analysis code analysis and testing Technical/Document reviews Control of changes

More information

ASSESSING INVARIANT MINING TECHNIQUES FOR CLOUD-BASED UTILITY COMPUTING SYSTEMS

ASSESSING INVARIANT MINING TECHNIQUES FOR CLOUD-BASED UTILITY COMPUTING SYSTEMS ASSESSING INVARIANT MINING TECHNIQUES FOR CLOUD-BASED UTILITY COMPUTING SYSTEMS ABSTRACT Likely system invariants model properties that hold in operating conditions of a computing system. Invariants may

More information

Efficient Regression Test Model for Object Oriented Software

Efficient Regression Test Model for Object Oriented Software Efficient Regression Test Model for Object Oriented Software Swarna Lata Pati College of Engg. & Tech, Bhubaneswar Abstract : This paper presents an efficient regression testing model with an integration

More information

Test Suite Reduction with Selective Redundancy

Test Suite Reduction with Selective Redundancy Test Suite Reduction with Selective Redundancy Dennis Jeffrey Department of Computer Science The University of Arizona Tucson, AZ 85721 jeffreyd@cs.arizona.edu Neelam Gupta Department of Computer Science

More information

Review of Regression Test Case Selection Techniques

Review of Regression Test Case Selection Techniques Review of Regression Test Case Selection Manisha Rani CSE Department, DeenBandhuChhotu Ram University of Science and Technology, Murthal, Haryana, India Ajmer Singh CSE Department, DeenBandhuChhotu Ram

More information

Improving Test Suites via Operational Abstraction

Improving Test Suites via Operational Abstraction Improving Test Suites via Operational Abstraction Michael Harder Jeff Mellen Michael D. Ernst MIT Lab for Computer Science 200 Technology Square Cambridge, MA 02139 USA {mharder,jeffm,mernst}@lcs.mit.edu

More information

Scaling Regression Testing to Large Software Systems

Scaling Regression Testing to Large Software Systems Scaling Regression Testing to Large Software Systems Alessandro Orso Co-authors: Nanjuan Shi, Mary Jean Harrold College of Computing Georgia Institute of Technology Supported in part by National Science

More information

Empirical Studies of Test Case Prioritization in a JUnit Testing Environment

Empirical Studies of Test Case Prioritization in a JUnit Testing Environment University of Nebraska - Lincoln DigitalCommons@University of Nebraska - Lincoln CSE Conference and Workshop Papers Computer Science and Engineering, Department of 2004 Empirical Studies of Test Case Prioritization

More information

Programming Languages and Techniques (CIS120)

Programming Languages and Techniques (CIS120) Programming Languages and Techniques (CIS120) Lecture 7 January 29 th, 2016 Binary Search Trees (Lecture notes Chapter 7) let rec height (t:tree) : int = begin match t with Empty -> 0 Node (left, _, right)

More information

Facts About Testing. Cost/benefit. Reveal faults. Bottom-up. Testing takes more than 50% of the total cost of software development

Facts About Testing. Cost/benefit. Reveal faults. Bottom-up. Testing takes more than 50% of the total cost of software development Reveal faults Goals of testing Correctness Reliability Usability Robustness Performance Top-down/Bottom-up Bottom-up Lowest level modules tested first Don t depend on any other modules Driver Auxiliary

More information

Nikita Goel, Madhuri Sharma

Nikita Goel, Madhuri Sharma Prioritization of Cases and Its Techniques Nikita Goel, Madhuri Sharma Abstract Regression ing is mainly executed to show the desirable functionality of existing software after doing some modifications

More information

TO facilitate the testing of evolving software, a test suite is

TO facilitate the testing of evolving software, a test suite is IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, VOL. 29, NO. 3, MARCH 2003 195 Test-Suite Reduction and Prioritization for Modified Condition/Decision Coverage James A. Jones and Mary Jean Harrold, Member,

More information

CMSC 132: OBJECT-ORIENTED PROGRAMMING II

CMSC 132: OBJECT-ORIENTED PROGRAMMING II CMSC 132: OBJECT-ORIENTED PROGRAMMING II Program Testing Department of Computer Science University of Maryland, College Park Debugging Is Harder Than Coding! Debugging is twice as hard as writing the code

More information

BRANCH COVERAGE BASED TEST CASE PRIORITIZATION

BRANCH COVERAGE BASED TEST CASE PRIORITIZATION BRANCH COVERAGE BASED TEST CASE PRIORITIZATION Arnaldo Marulitua Sinaga Department of Informatics, Faculty of Electronics and Informatics Engineering, Institut Teknologi Del, District Toba Samosir (Tobasa),

More information

A Controlled Experiment Assessing Test Case Prioritization Techniques via Mutation Faults

A Controlled Experiment Assessing Test Case Prioritization Techniques via Mutation Faults A Controlled Experiment Assessing Test Case Prioritization Techniques via Mutation Faults Hyunsook Do and Gregg Rothermel Department of Computer Science and Engineering University of Nebraska - Lincoln

More information

PRIORITIZE REGRESSION TEST CASES

PRIORITIZE REGRESSION TEST CASES PRIORITIZE REGRESSION TEST CASES Avinash Gupta, 2 Dharmender Singh Kushwaha,2 MNNIT Allahabad Email: avinashg.mnnit@gmail.com, 2 dsk@mnnit.ac.in Abstract Test suites can be reduced to a smaller suite that

More information

Test Factoring: Focusing test suites on the task at hand

Test Factoring: Focusing test suites on the task at hand Test Factoring: Focusing test suites on the task at hand, MIT ASE 2005 1 The problem: large, general system tests My test suite One hour Where I changed code Where I broke code How can I get: Quicker feedback?

More information

Getting those Bugs Out --Software Testing

Getting those Bugs Out --Software Testing 1 1 Getting those Bugs Out --Software Testing 1. Issues in software testing and reliability 2. Test sets, test selection criteria, and ideal test sets. 3. Defect Testing 3.1 Black Box Testing 3.2 White

More information

Topics in Software Testing

Topics in Software Testing Dependable Software Systems Topics in Software Testing Material drawn from [Beizer, Sommerville] Software Testing Software testing is a critical element of software quality assurance and represents the

More information

Exploring Econometric Model Selection Using Sensitivity Analysis

Exploring Econometric Model Selection Using Sensitivity Analysis Exploring Econometric Model Selection Using Sensitivity Analysis William Becker Paolo Paruolo Andrea Saltelli Nice, 2 nd July 2013 Outline What is the problem we are addressing? Past approaches Hoover

More information

2. Background and Related Work This section provides prior work in testing of software component, static binary code analysis, and firewall analysis.

2. Background and Related Work This section provides prior work in testing of software component, static binary code analysis, and firewall analysis. On Regression Testing COTS based Applications Jiang Zheng Department of Computer Science, North Carolina State University, Raleigh, NC 27695 jzheng4@ncsu.edu 1. Problem and Motivation Companies increasingly

More information

Extended Program Invariants: Applications in Testing and Fault Localization

Extended Program Invariants: Applications in Testing and Fault Localization Extended Program Invariants: Applications in Testing and Fault Localization Mohammad Amin Alipour, and Alex Groce School of Electrical Engineering and Computer Science Oregon State University Corvallis,

More information

Effective Test Case Prioritization Technique in Web Application for Regression Test Suite

Effective Test Case Prioritization Technique in Web Application for Regression Test Suite Available Online at www.ijcsmc.com International Journal of Computer Science and Mobile Computing A Monthly Journal of Computer Science and Information Technology IJCSMC, Vol. 3, Issue. 11, November 2014,

More information

A Study of Effective Regression Testing

A Study of Effective Regression Testing A Study of Effective Regression Testing Nisha Jha Assistant Professor, Department of Computer Science, Lingaya s University, Faridabad, Haryana, India Abstract: Software Quality is one of the major challenges

More information

Enterprise Miner Tutorial Notes 2 1

Enterprise Miner Tutorial Notes 2 1 Enterprise Miner Tutorial Notes 2 1 ECT7110 E-Commerce Data Mining Techniques Tutorial 2 How to Join Table in Enterprise Miner e.g. we need to join the following two tables: Join1 Join 2 ID Name Gender

More information

Exploiting Synergy Between Testing and Inferred Partial Specifications

Exploiting Synergy Between Testing and Inferred Partial Specifications Exploiting Synergy Between Testing and Inferred Partial Specifications Tao Xie David Notkin Department of Computer Science & Engineering, University of Washington {taoxie, notkin}@cs.washington.edu Technical

More information

Regression Testing in Research And Practice

Regression Testing in Research And Practice Regression Testing in Research And Practice Xuan Lin Computer Science and Engineering Department University of Nebraska, Lincoln 1-402-472-4058 lxuan@cse.unl.edu ABSTRACT Regression testing is a costly

More information

Improving software testing cost-effectiveness through dynamic partitioning

Improving software testing cost-effectiveness through dynamic partitioning University of Wollongong Research Online Faculty of Informatics - Papers (Archive) Faculty of Engineering and Information Sciences 2009 Improving software testing cost-effectiveness through dynamic partitioning

More information

A Test Suite Reduction Method based on Test Requirement Partition

A Test Suite Reduction Method based on Test Requirement Partition A Test Suite Reduction Method based on Test Requirement Partition Wan Yongbing 1, Xu Zhongwei 1, Yu Gang 2 and Zhu YuJun 1 1 School of Electronics & Information Engineering, Tongji University, Shanghai,

More information

MTAT : Software Testing

MTAT : Software Testing MTAT.03.159: Software Testing Lecture 04: White-Box Testing (advanced) Part1 Dietmar Pfahl Spring 2018 email: dietmar.pfahl@ut.ee White-Box Testing Techniques Control-Flow Testing Data-Flow Testing Mutation

More information

Chianti: A Tool for Change Impact Analysis of Java Programs

Chianti: A Tool for Change Impact Analysis of Java Programs Chianti: A Tool for Change Impact Analysis of Java Programs Andrej Galad 04/19/2017 CS 6704 - Software Engineering Research Virginia Polytechnic Institute and State University, Blacksburg, VA Professor

More information

Regression Test Case Prioritization Based on Historical Test Case Performance Data

Regression Test Case Prioritization Based on Historical Test Case Performance Data Regression Test Case Prioritization Based on Historical Test Case Performance Data Andreas Ljung Department of Computer Science Lund University, Faculty of Engineering May 14, 2010 Contact information

More information

TEST CASE PRIORITIZATION ALGORITHM BASED UPON MODIFIED CODE COVERAGE IN REGRESSION TESTING

TEST CASE PRIORITIZATION ALGORITHM BASED UPON MODIFIED CODE COVERAGE IN REGRESSION TESTING TEST CASE PRIORITIZATION ALGORITHM BASED UPON MODIFIED CODE COVERAGE IN REGRESSION TESTING ABSTRACT Usha Badhera 1, G.N Purohit 2, Debarupa Biswas 3 Computer Science Department, Banasthali University,

More information

Integration Testing. Conrad Hughes School of Informatics. Slides thanks to Stuart Anderson

Integration Testing. Conrad Hughes School of Informatics. Slides thanks to Stuart Anderson Integration Testing Conrad Hughes School of Informatics Slides thanks to Stuart Anderson 19 February 2010 Software Testing: Lecture 10 1 Unit Test vs Integration Testing 1 The ideal in unit testing is

More information

Three General Principles of QA. COMP 4004 Fall Notes Adapted from Dr. A. Williams

Three General Principles of QA. COMP 4004 Fall Notes Adapted from Dr. A. Williams Three General Principles of QA COMP 4004 Fall 2008 Notes Adapted from Dr. A. Williams Software Quality Assurance Lec2 1 Three General Principles of QA Know what you are doing. Know what you should be doing.

More information

Scalable Statistical Bug Isolation

Scalable Statistical Bug Isolation Post-Deployment Monitoring Scalable Statistical Bug Isolation Ben Liblit, Mayur Naik, Alice Zheng, Alex Aiken, and Michael Jordan University of Wisconsin, Stanford University, and UC Berkeley Goal: Measure

More information

ARTICLE IN PRESS. The Journal of Systems and Software xxx (2011) xxx xxx. Contents lists available at ScienceDirect

ARTICLE IN PRESS. The Journal of Systems and Software xxx (2011) xxx xxx. Contents lists available at ScienceDirect The Journal of Systems and Software xxx (2011) xxx xxx Contents lists available at ScienceDirect The Journal of Systems and Software j our na l ho mepage: www.elsevier.com/locate/jss Test coverage optimization

More information

INTRODUCTION TO SOFTWARE ENGINEERING

INTRODUCTION TO SOFTWARE ENGINEERING INTRODUCTION TO SOFTWARE ENGINEERING Introduction to Software Testing d_sinnig@cs.concordia.ca Department for Computer Science and Software Engineering What is software testing? Software testing consists

More information

Computer Science and Software Engineering University of Wisconsin - Platteville 9-Software Testing, Verification and Validation

Computer Science and Software Engineering University of Wisconsin - Platteville 9-Software Testing, Verification and Validation Computer Science and Software Engineering University of Wisconsin - Platteville 9-Software Testing, Verification and Validation Yan Shi SE 2730 Lecture Notes Verification and Validation Verification: Are

More information

Integration Testing. Unit Test vs Integration Testing 1. Unit Testing vs Integration Testing 2. Unit testing: isolation, stub/mock objects

Integration Testing. Unit Test vs Integration Testing 1. Unit Testing vs Integration Testing 2. Unit testing: isolation, stub/mock objects Unit Test vs Testing 1 Testing Conrad Hughes School of Informatics Slides thanks to Stuart Anderson The ideal in unit testing is to isolate a single code unit and test it against its behavioural specification.

More information

MINTS: A General Framework and Tool for Supporting Test-suite Minimization

MINTS: A General Framework and Tool for Supporting Test-suite Minimization MINTS: A General Framework and Tool for Supporting Test-suite Minimization Hwa-You Hsu and Alessandro Orso College of Computing Georgia Institute of Technology {hsu orso}@cc.gatech.edu ABSTRACT Regression

More information

Chapter 9. Software Testing

Chapter 9. Software Testing Chapter 9. Software Testing Table of Contents Objectives... 1 Introduction to software testing... 1 The testers... 2 The developers... 2 An independent testing team... 2 The customer... 2 Principles of

More information

Decision Trees Dr. G. Bharadwaja Kumar VIT Chennai

Decision Trees Dr. G. Bharadwaja Kumar VIT Chennai Decision Trees Decision Tree Decision Trees (DTs) are a nonparametric supervised learning method used for classification and regression. The goal is to create a model that predicts the value of a target

More information

Class 17. Discussion. Mutation analysis and testing. Problem Set 7 discuss Readings

Class 17. Discussion. Mutation analysis and testing. Problem Set 7 discuss Readings Class 17 Questions/comments Graders for Problem Set 6 (4); Graders for Problem set 7 (2-3) (solutions for all); will be posted on T-square Regression testing, Instrumentation Final project presentations:

More information

Integrating Customized Test Requirements with Traditional Requirements in Web Application Testing

Integrating Customized Test Requirements with Traditional Requirements in Web Application Testing Integrating Customized Test Requirements with Traditional Requirements in Web Application Testing Sreedevi Sampath, Sara Sprenkle Emily Gibson and Lori Pollock University of Delaware July 17, 2006 Workshop

More information

Information Systems. Software Engineering. MCQ - Part 2

Information Systems. Software Engineering. MCQ - Part 2 Information Systems & Software Engineering MCQ - Part 2 Information Systems & Software Engineering MCQ - Part 2 Changes made to the system to reduce the future system failure chances is called Preventive

More information

Software Testing. Massimo Felici IF

Software Testing. Massimo Felici IF Software Testing Massimo Felici IF-3.46 0131 650 5899 mfelici@staffmail.ed.ac.uk What is Software Testing? Software Testing is the design and implementation of a special kind of software system: one that

More information

Program Analysis. Program Analysis

Program Analysis. Program Analysis Program Analysis Class #4 Program Analysis Dynamic Analysis 1 Static VS Dynamic Analysis Static analysis operates on a model of the SW (without executing it) If successful, produces definitive information

More information

On the Use of Mutation Faults in Empirical Assessments of Test Case Prioritization Techniques

On the Use of Mutation Faults in Empirical Assessments of Test Case Prioritization Techniques On the Use of Mutation Faults in Empirical Assessments of Test Case Prioritization Techniques Hyunsook Do, Gregg Rothermel Department of Computer Science and Engineering University of Nebraska - Lincoln

More information

Overview. State-of-the-Art. Relative cost of error correction. CS 619 Introduction to OO Design and Development. Testing.

Overview. State-of-the-Art. Relative cost of error correction. CS 619 Introduction to OO Design and Development. Testing. Overview CS 619 Introduction to OO Design and Development ing! Preliminaries! All sorts of test techniques! Comparison of test techniques! Software reliability Fall 2012! Main issues: There are a great

More information

Model Based Test Case Prioritization for Testing Component Dependency in CBSD Using UML Sequence Diagram

Model Based Test Case Prioritization for Testing Component Dependency in CBSD Using UML Sequence Diagram Model Based Test Case Prioritization for Testing Component Dependency in CBSD Using UML Sequence Diagram Arup Abhinna Acharya School of Computer Engineering KIIT University Bhubaneswar, India aacharyafcs@kiit.ac.in

More information

Related reading: Effectively Prioritizing Tests in Development Environment Introduction to Software Engineering Jonathan Aldrich

Related reading: Effectively Prioritizing Tests in Development Environment Introduction to Software Engineering Jonathan Aldrich Test Prioritization Related reading: Effectively Prioritizing Tests in Development Environment 15-413 Introduction to Software Engineering Jonathan Aldrich Test Prioritization: Motivation Goal: find and

More information

Lecture 15 Software Testing

Lecture 15 Software Testing Lecture 15 Software Testing Includes slides from the companion website for Sommerville, Software Engineering, 10/e. Pearson Higher Education, 2016. All rights reserved. Used with permission. Topics covered

More information

CMPSCI 521/621 Homework 2 Solutions

CMPSCI 521/621 Homework 2 Solutions CMPSCI 521/621 Homework 2 Solutions Problem 1 Direct data dependencies: 3 is directly data dependent on 1 and 5 5 is directly data dependent on 1,3, and 5 7 is directly data dependent on 1,3, and 5 Note,

More information

CSE 158. Web Mining and Recommender Systems. Midterm recap

CSE 158. Web Mining and Recommender Systems. Midterm recap CSE 158 Web Mining and Recommender Systems Midterm recap Midterm on Wednesday! 5:10 pm 6:10 pm Closed book but I ll provide a similar level of basic info as in the last page of previous midterms CSE 158

More information

COVERAGE BASED TEST SUITE AUGMENTATION TECHNIQUES-A SURVEY

COVERAGE BASED TEST SUITE AUGMENTATION TECHNIQUES-A SURVEY COVERAGE BASED TEST SUITE AUGMENTATION TECHNIQUES-A SURVEY ABSTRACT Bharti Suri 1, Prabhneet Nayyar 2 1 Assistant Professor, USIT Guru Gobind Singh Indraprastha University, Delhi, INDIA bhartisuri@gmail.com

More information

Test cases can then be replayed and used to test web systems

Test cases can then be replayed and used to test web systems CPUT Combinatorial-Based Prioritization for User-Session Session-Based ing of Web s Sreedevi Sampath, University of Maryland, Baltimore County Renee Bryce, Utah State University Sachin Jain, University

More information

Testing Exceptions with Enforcer

Testing Exceptions with Enforcer Testing Exceptions with Enforcer Cyrille Artho February 23, 2010 National Institute of Advanced Industrial Science and Technology (AIST), Research Center for Information Security (RCIS) Abstract Java library

More information

Software Testing for Developer Development Testing. Duvan Luong, Ph.D. Operational Excellence Networks

Software Testing for Developer Development Testing. Duvan Luong, Ph.D. Operational Excellence Networks Software Testing for Developer Development Testing Duvan Luong, Ph.D. Operational Excellence Networks Contents R&D Testing Approaches Static Analysis White Box Testing Black Box Testing 4/2/2012 2 Development

More information

A NOVEL APPROACH FOR PRIORTIZATION OF OPTIMIZED TEST CASES

A NOVEL APPROACH FOR PRIORTIZATION OF OPTIMIZED TEST CASES A NOVEL APPROACH FOR PRIORTIZATION OF OPTIMIZED TEST CASES Abhishek Singhal Amity School of Engineering and Technology Amity University Noida, India asinghal1@amity.edu Swati Chandna Amity School of Engineering

More information

ECE199JL: Introduction to Computer Engineering Fall 2012 Notes Set 2.4. Example: Bit-Sliced Comparison

ECE199JL: Introduction to Computer Engineering Fall 2012 Notes Set 2.4. Example: Bit-Sliced Comparison c 22 Steven S. Lumetta. ll rights reserved. 2 EE99JL: Introduction to omputer Engineering Fall 22 Notes Set 2.4 Eample: it-sliced omparison This set of notes develops s for unsigned and 2 s complement

More information

Automated Acceptance testing by Developers & Automated Functional Testing by Testers

Automated Acceptance testing by Developers & Automated Functional Testing by Testers Automated Acceptance testing by Developers & Automated Functional Testing by Testers Gowrishankar Sundararajan QA Manager Tata Consultancy Services, Canada Executive Summary Overview on Traditional Agile

More information

Elided Conditionals. Steven P. Reiss. Manos Renieris ABSTRACT. Categories and Subject Descriptors. General Terms. Keywords 1.

Elided Conditionals. Steven P. Reiss. Manos Renieris ABSTRACT. Categories and Subject Descriptors. General Terms. Keywords 1. Elided Conditionals Manos Renieris Sébastien Chan-Tin Computer Science Dept. Brown University Providence, RI 02912, USA Steven P. Reiss {er,sct,spr@cs.brown.edu ABSTRACT Many software testing and automated

More information

Regression Test Case Selection &PrioritizationUsing Dependence Graph and Genetic Algorithm

Regression Test Case Selection &PrioritizationUsing Dependence Graph and Genetic Algorithm IOSR Journal of Computer Engineering (IOSR-JCE) e-issn: 2278-0661, p- ISSN: 2278-8727Volume 16, Issue 3, Ver. IV (May-Jun. 2014), PP 38-47 Regression Test Case Selection &PrioritizationUsing Dependence

More information

News. CSE 130: Programming Languages. Environments & Closures. Functions are first-class values. Recap: Functions as first-class values

News. CSE 130: Programming Languages. Environments & Closures. Functions are first-class values. Recap: Functions as first-class values CSE 130: Programming Languages Environments & Closures News PA 3 due THIS Friday (5/1) Midterm NEXT Friday (5/8) Ranjit Jhala UC San Diego Recap: Functions as first-class values Arguments, return values,

More information

Unsupervised Learning. Presenter: Anil Sharma, PhD Scholar, IIIT-Delhi

Unsupervised Learning. Presenter: Anil Sharma, PhD Scholar, IIIT-Delhi Unsupervised Learning Presenter: Anil Sharma, PhD Scholar, IIIT-Delhi Content Motivation Introduction Applications Types of clustering Clustering criterion functions Distance functions Normalization Which

More information

CPSC 340: Machine Learning and Data Mining. Feature Selection Fall 2016

CPSC 340: Machine Learning and Data Mining. Feature Selection Fall 2016 CPSC 34: Machine Learning and Data Mining Feature Selection Fall 26 Assignment 3: Admin Solutions will be posted after class Wednesday. Extra office hours Thursday: :3-2 and 4:3-6 in X836. Midterm Friday:

More information

Combining Algebraic Constraints with Graph-based Intelligent Testbench Automation by Mike Andrews, Verification Technologist, Mentor Graphics

Combining Algebraic Constraints with Graph-based Intelligent Testbench Automation by Mike Andrews, Verification Technologist, Mentor Graphics Combining Algebraic Constraints with Graph-based Intelligent Testbench Automation by Mike Andrews, Verification Technologist, Mentor Graphics 22 Abstract: The Questa infact intelligent testbench automation

More information

Prioritization of Regression Tests using Singular Value Decomposition with Empirical Change Records

Prioritization of Regression Tests using Singular Value Decomposition with Empirical Change Records Prioritization of Regression Tests using Singular Value Decomposition with Empirical Change Records Mark Sherriff 1,2, Mike Lake 1, and Laurie Williams 2 1 IBM, 2 North Carolina State University mark.sherriff@ncsu.edu,

More information

A Regression Test Selection Technique for Graphical User Interfaces

A Regression Test Selection Technique for Graphical User Interfaces A Regression Test Selection Technique for Graphical User Interfaces Carl Chesser B.S., Computer Technology, Purdue University, 2005 Submitted to the graduate degree program in the department of Electrical

More information

Feasibility of Testing to Code. Feasibility of Testing to Code. Feasibility of Testing to Code. Feasibility of Testing to Code (contd)

Feasibility of Testing to Code. Feasibility of Testing to Code. Feasibility of Testing to Code. Feasibility of Testing to Code (contd) Feasibility of Testing to Code (contd) Feasibility of Testing to Code (contd) An incorrect code fragment for determining if three integers are equal, together with two test cases Flowchart has over 10

More information

Some Applications of Graph Bandwidth to Constraint Satisfaction Problems

Some Applications of Graph Bandwidth to Constraint Satisfaction Problems Some Applications of Graph Bandwidth to Constraint Satisfaction Problems Ramin Zabih Computer Science Department Stanford University Stanford, California 94305 Abstract Bandwidth is a fundamental concept

More information

Coloring 3-Colorable Graphs

Coloring 3-Colorable Graphs Coloring -Colorable Graphs Charles Jin April, 015 1 Introduction Graph coloring in general is an etremely easy-to-understand yet powerful tool. It has wide-ranging applications from register allocation

More information

(See related materials in textbook.) CSE 435: Software Engineering (slides adapted from Ghezzi et al & Stirewalt

(See related materials in textbook.) CSE 435: Software Engineering (slides adapted from Ghezzi et al & Stirewalt Verification (See related materials in textbook.) Outline What are the goals of verification? What are the main approaches to verification? What kind of assurance do we get through testing? How can testing

More information

NFV PM Thought Experiments Yaakov (J) Stein

NFV PM Thought Experiments Yaakov (J) Stein NFV PM Thought Experiments Yaakov (J) Stein NFV PM theory Slide 1 QoE and QoS Customers are willing to pay a service provider for communications services with QoE guarantees Unfortunately, QoE is subjective

More information

Mixture models and clustering

Mixture models and clustering 1 Lecture topics: Miture models and clustering, k-means Distance and clustering Miture models and clustering We have so far used miture models as fleible ays of constructing probability models for prediction

More information

Class-Component Testability Analysis

Class-Component Testability Analysis Class-Component Testability Analysis SUPAPORN KANSOMKEAT Faculty of Engineering, Chulalongkorn University Bangkok, 10330, THAILAND WANCHAI RIVEPIBOON Faculty of Engineering, Chulalongkorn University Bangkok,

More information

A Comparative Study of Five Regression Testing Algorithms

A Comparative Study of Five Regression Testing Algorithms A Comparative Study of Five Regression Testing Algorithms Ghinwa Baradhi and Nashat Mansour Computer Science Lebanese American University nmansour@lau. edu. lb Abstract We compare five regression testing

More information

Requirements satisfied : Result Vector : Final : Matrix M. Test cases. Reqmts

Requirements satisfied : Result Vector : Final : Matrix M. Test cases. Reqmts Introduction Control flow/data flow widely studied No definitive answer to effectiveness Not widely accepted Quantitative measure of adequacy criteria Effectiveness Whether cost of testing methods is justified

More information

Advanced Compiler Construction

Advanced Compiler Construction CS 526 Advanced Compiler Construction http://misailo.cs.illinois.edu/courses/cs526 Goals of the Course Develop a fundamental understanding of the major approaches to program analysis and optimization Understand

More information

PREDICTION OF DESIGN PARAMETERS IN SHIP DESIGNING BASED ON DATA MINING TECHNIQUE BY COMBINING GENETIC PROGRAMMING WITH SELF ORGANIZING MAP

PREDICTION OF DESIGN PARAMETERS IN SHIP DESIGNING BASED ON DATA MINING TECHNIQUE BY COMBINING GENETIC PROGRAMMING WITH SELF ORGANIZING MAP PREDICTION OF DESIGN PARAMETERS IN SHIP DESIGNING BASED ON DATA MINING TECHNIQUE BY COMBINING GENETIC PROGRAMMING WITH SELF ORGANIZING MAP Kyungho Lee Department of Naval Architecture & Ocean Engineering

More information

The Value of Peering. ISP/IXP Workshops. Last updated 23 rd March 2015

The Value of Peering. ISP/IXP Workshops. Last updated 23 rd March 2015 The Value of Peering ISP/IXP Workshops Last updated 23 rd March 2015 1 The Internet p Internet is made up of ISPs of all shapes and sizes n Some have local coverage (access providers) n Others can provide

More information

Integrating White- and Black-Box Techniques for Class-Level Regression Testing

Integrating White- and Black-Box Techniques for Class-Level Regression Testing Integrating White- and Black-Box Techniques for Class-Level Regression Testing Sami Beydeda, Volker Gruhn University of Dortmund Computer Science Department Software Technology 44221 Dortmund, Germany

More information

EVENT-DRIVEN software (EDS) is a class of software that is

EVENT-DRIVEN software (EDS) is a class of software that is IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, VOL. 37, NO. X, XXXXXXX 2011 1 Developing a Single Model and Test Prioritization Strategies for Event-Driven Software Renée C. Bryce, Sreedevi Sampath, Member,

More information

Test Suite Minimization An Empirical Investigation. Jeffery von Ronne A PROJECT. submitted to. Oregon State University. University Honors College

Test Suite Minimization An Empirical Investigation. Jeffery von Ronne A PROJECT. submitted to. Oregon State University. University Honors College Test Suite Minimization An Empirical Investigation by Jeffery von Ronne A PROJECT submitted to Oregon State University University Honors College in partial fulfillment of the requirements for the degree

More information