The Future of Testing Chapter 21. Random testing Simply put, if testing is targeted at a particular area, it is because that area is either critical,

Slides:



Advertisements
Similar presentations
Software Testing. Quality is Hard to Pin Down Concise, clear definition is elusive Not easily quantifiable Many things to many people You'll know it when.
Advertisements

Copyright A. Andrews, 2003 Regression Testing Department of Computer Science.
Software Processes Coherent sets of activities for specifying, designing, implementing and testing software systems.
Stoimen Stoimenov QA Engineer SitefinityLeads,SitefinityTeam6 Telerik QA Academy Telerik QA Academy.
(Quickly) Testing the Tester via Path Coverage Alex Groce Oregon State University (formerly NASA/JPL Laboratory for Reliable Software)
Lecture 12 Reengineering Computer-aided Software Engineering Cleanroom Software Engineering.
Testing: Who 3, What 4, Why 1, When 2, How 5 Lian Yu, Peking U. Michal Young, U. Oregon.
SE 450 Software Processes & Product Metrics Reliability: An Introduction.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Swami NatarajanJune 17, 2015 RIT Software Engineering Reliability Engineering.
Software Testing and Quality Assurance
SE 450 Software Processes & Product Metrics Reliability Engineering.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Validating and Improving Test-Case Effectiveness Author: Yuri Chernak Presenter: Lam, Man Tat.
Soft. Eng. II, Spr. 2002Dr Driss Kettani, from I. Sommerville1 CSC-3325: Chapter 9 Title : Reliability Reading: I. Sommerville, Chap. 16, 17 and 18.
(c) 2007 Mauro Pezzè & Michal Young Ch 1, slide 1 Software Test and Analysis in a Nutshell.
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
Swami NatarajanJuly 14, 2015 RIT Software Engineering Reliability: Introduction.
Tester’s Role in Software Development and Acquisition Best Practice By Gabriel Rodriguez.
Chapter 11: Testing The dynamic verification of the behavior of a program on a finite set of test cases, suitable selected from the usually infinite execution.
Introduction to Software Testing
Types and Techniques of Software Testing
Frequently asked questions about software engineering
Lecture 1.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 10 Slide 1 Formal Specification.
Software Integration and Documenting
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 23 Slide 1 Software testing.
Software Reliability Categorising and specifying the reliability of software systems.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 24 Slide 1 Critical Systems Validation 1.
Chapter 1- Introduction
Leen Vooijs Implementing risk based maintenance concepts.
Achieving Better Reliability With Software Reliability Engineering Russel D’Souza Russel D’Souza.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 23 Slide 1 Software testing Slightly adapted by Anders Børjesson.
March 13, 2001CSci Clark University1 CSci 250 Software Design & Development Lecture #15 Tuesday, March 13, 2001.
Chapter 7: The 30 elements of systems engineering
Objectives Understand the basic concepts and definitions relating to testing, like error, fault, failure, test case, test suite, test harness. Explore.
CPIS 357 Software Quality & Testing
Software Testing (Part 2)
Software Engineering Chapter 23 Software Testing Ku-Yaw Chang Assistant Professor Department of Computer Science and Information.
ASQ Raleigh ASQ Raleigh Section 1113 Six Sigma SIG DMAIC Series.
1 Principles of Computer Science I Prof. Nadeem Abdul Hamid CSC 120 – Fall 2005 Lecture Unit 10 - Testing.
TESTING FOR THE RELIABILITY OF A SOFTWARE SARAT CHANDRA YADAVALLI CSC 532 TERM PAPER.
Introduction to Software Testing. Types of Software Testing Unit Testing Strategies – Equivalence Class Testing – Boundary Value Testing – Output Testing.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 22 Slide 1 Software Verification, Validation and Testing.
Today’s Agenda  HW #1  Finish Introduction  Input Space Partitioning Software Testing and Maintenance 1.
CS Data Structures I Chapter 2 Principles of Programming & Software Engineering.
Software Testing and Quality Assurance Software Quality Assurance 1.
Statistics: Unlocking the Power of Data Lock 5 STAT 101 Dr. Kari Lock Morgan Multiple Regression SECTION 10.3 Variable selection Confounding variables.
1 Theme 2: Thinking Like a Tester, Continued. 2 Thinking Like a Tester Lesson 20: “Testing requires inference, not just comparison of output to expected.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Inspection and Review The main objective of an Inspection or a Review is to detect defects. This activity and procedure was first formalized by Mike Fagan.
Dynamic Testing.
Unit Testing with FlexUnit
1 Software Testing and Quality Assurance Lecture 17 - Test Analysis & Design Models (Chapter 4, A Practical Guide to Testing Object-Oriented Software)
Testing Overview Software Reliability Techniques Testing Concepts CEN 4010 Class 24 – 11/17.
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.
Software engineering - 2 Section 8. QUIZ Show how it is possible to determine the height of a tall building with the aid of a barometer.
 Software reliability is the probability that software will work properly in a specified environment and for a given amount of time. Using the following.
Subject Name: Software Testing Subject Code: 10CS842 Prepared By:
Hardware & Software Reliability
Software Testing.
Chapter 1- Introduction
Introduction to Testing Design Strategies – The Smarter Tester
Software engineering – 1
Frequently asked questions about software engineering
Applied Software Implementation & Testing
Chapter 10 – Software Testing
Department of Computer Science Regression Testing.
Test Cases, Test Suites and Test Case management systems
Types of Software Testing Course. CONTENT  Black-box testing course  White-box software testing course  Automated software testing course  Regression.
Presentation transcript:

The Future of Testing Chapter 21

Random testing Simply put, if testing is targeted at a particular area, it is because that area is either critical, or it is suspected that defects are in that area. In either case, inspection should be carried out! If nothing warrants inspection, then perhaps the tests should be ‘random’. That is, perhaps they should be applied at random across the entire system.

User profile ● Many times, testing can be based on what the user is likely to do with the system. ● The idea of usage profiling is to determine which parts of the system will get the heaviest use, and focus testing more on the high-use functions and less on the least-used functions.

Random input values ● Random input values approach would allow testers to generate input values based on a “random input generator”, the check the outputs based on what the specification says should appear. ● Distribution of the random input values can be filtered through a “profile”, if necessary, but then loses it’s true “randomness.”

Reliability Reliability is often uses as a “fuzzy” term for a measure of defect frequency. In fact, reliability has an actual formal definition: R = (1 – f ) k Where R is reliability, f is the failure probability (in failures/demand) for k executions of the software.

Automated Testing ● Automated testing can fall into two areas: automated application of tests and automatic test generation. ● Automatic test generation uses a formal representation of the specification to build test script that can be applied by a test harness to the system under test.

Regression Testing Regression testing uses a knowledge of what has been changed in the system to limit the scope of testing so that the entire test suite doesn’t ‘need’ to be applied. Regression tests are selected on the basis of what the ‘scope of effect’ is for changes to the system. If a change can effect another subsystem that has not be modified, should that subsystem be tested also?

State of the Software Testing Art ● Software testing is still a young ‘science’. There are many areas where ambitious researchers (and engineers) can still make significant contributions to the discipline. ● Many questions still remained unanswered in the areas of effectiveness, economics of testing and approaches.