Cs498dm Software Testing Darko Marinov January 27, 2009.

Slides:



Advertisements
Similar presentations
Course in software testing - from bachelor to master, from Skopje to Novi Sad (and beyond) Anastas Mishev Katerina Zdravkova Sashko Ristov Hristina Mihajloska.
Advertisements

Introduction to Software Testing Chapter 3.3 Logic Coverage for Source Code Paul Ammann & Jeff Offutt
Introduction to Software Testing Chapter 3.3 Logic Coverage from Source Code Paul Ammann & Jeff Offutt.
CS527: Advanced Topics in Software Engineering (Software Testing and Analysis) Darko Marinov September 18, 2008.
Introduction to Financial Management. Overview of Financial Management Introduction Keys to Success Stay up in class (complete assignments on time each.
WISTPC-09 : Session A Tariq M. King PhD Candidate Florida International University Workshop on Integrating Software Testing into Programming.
CSE 331 SOFTWARE DESIGN & IMPLEMENTATION TESTING II Autumn 2011.
CS150 Introduction to Computer Science 1 Professor: Chadd Williams.
1 Software Testing and Quality Assurance Lecture 30 - Introduction to Software Testing.
OOP #10: Correctness Fritz Henglein. Wrap-up: Types A type is a collection of objects with common behavior (operations and properties). (Abstract) types.
Objectives Understand the basic concepts and definitions relating to testing, like error, fault, failure, test case, test suite, test harness. Understand.
Copyright by Scott GrissomCh 1 Software Development Slide 1 Software Development The process of developing large software projects Different Approaches.
Testing, One More Time. Testing Phases Basically there are two main phases Basically there are two main phases –By developers –By independent testing.
High Level: Generic Test Process (from chapter 6 of your text and earlier lesson) Test Planning & Preparation Test Execution Goals met? Analysis & Follow-up.
Introduction to Software Testing
CPSC 100 – Personal Computers & Their Uses Fall 2010 Dongsheng Che Department of Computer Science East Stroudsburg University.
Computer Science 102 Data Structures and Algorithms V Fall 2009 Lecture 1: administrative details Professor: Evan Korth New York University 1.
Welcome to CS 115! Introduction to Programming. Class URL Please write this down!
Introduction to Software Testing Chapter 5.2 Program-based Grammars Paul Ammann & Jeff Offutt
Programming for Interactivity Professor Bill Tomlinson Tuesday & Wednesday 6:00-7:50pm Fall 2005.
1 Software Testing Dr. Xin (Judy) Feng Web:
Software Testing and validation SQA - SWE 434 Prof. Mohamed Batouche
Objectives Understand the basic concepts and definitions relating to testing, like error, fault, failure, test case, test suite, test harness. Explore.
Software Testing.
Cs498dm Software Testing Darko Marinov January 15, 2008.
Software Testing and Maintenance 1 Today’s Agenda  Syllabus.
Lecture 11 Testing and Debugging SFDV Principles of Information Systems.
Introduction to Software Testing Chapter 9.1 Challenges in Testing Software – Testing for Emergent Properties: Safety and Security Paul Ammann & Jeff Offutt.
CSCE 1040 Computer Science 2 First Day. Course Dr. Ryan Garlick Office: Research Park F201 B –Inside the Computer Science department.
Cs498dm Software Testing Darko Marinov January 22, 2008.
SWE 637: Test Criteria and Definitions Tao Xie Prepared based on Slides by ©Paul Ammann and Jeff Offutt Revised by Tao Xie.
CS527: Advanced Topics in Software Engineering (Software Testing and Analysis) Darko Marinov August 28, 2008.
Welcome to CS 115! Introduction to Programming. Class URL Write this down!
1 CS4521 – Mobile and Topics in Web Programming L. Grewe.
Welcome to Physics 2015! ( General Physics Lab 1 - Fall 2012)
CS527 Topics in Software Engineering (Software Testing and Analysis) Darko Marinov September 16, 2010.
CS527 Topics in Software Engineering (Software Testing and Analysis) Darko Marinov September 22, 2011.
1 CS6320 – SW Engineering of Web- Based Systems L. Grewe.
Cs498dm Software Testing Darko Marinov January 17, 2012.
Introduction to Computer Science II CSE1030Z 1. Your Instructor 2  Dr. Burton Ma  office  CSEB 1012J (near Gillian Moore's office)  hours : 2:30–4:00.
These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer.
1 Introduction to Software Testing. Reading Assignment P. Ammann and J. Offutt “Introduction to Software Testing” ◦ Chapter 1 2.
Introduction to Software Testing Paul Ammann & Jeff Offutt Updated 24-August 2010.
Today’s Agenda  Syllabus  Software Engineering Research.
CSCE 1030 Computer Science 1 First Day. Course Dr. Ryan Garlick Office: Research Park F201 B –Inside the Computer Science department.
CS527 Topics in Software Engineering (Software Testing and Analysis) Darko Marinov August 30, 2011.
Cs498dm Software Testing Darko Marinov January 24, 2008.
Data Structures and Algorithms in Java AlaaEddin 2012.
Course Information CSE 2031 Fall Instructor U. T. Nguyen /new-yen/ Office: CSEB Office hours:  Tuesday,
CS527: (Advanced) Topics in Software Engineering (Software Testing and Analysis) Darko Marinov August 24, 2010.
CS223: Software Engineering Lecture 25: Software Testing.
1 Computer Science 1021 Programming in Java Geoff Draper University of Utah.
Cs498dm Software Testing Darko Marinov January 24, 2012.
Software Engineering Lecture 11 Software Testing Presenter: Josef Hallberg 1.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
Cs498dm Software Testing Darko Marinov January 26, 2012.
Course Information EECS 2031 – Section A Fall 2017.
Paul Ammann & Jeff Offutt
Cs498st Software Testing Tao Xie.
CS5040: Data Structures and Algorithms
CS527: (Advanced) Topics in Software Engineering (Software Testing and Analysis) Darko Marinov August 25, 2011.
AUTOMATED SESSION PLANNING. In the present world, everything has become automated. By, a click everything is being processed. But the preparation of the.
Introduction to Software Testing Chapter 2 Model-Driven Test Design
Paul Ammann & Jeff Offutt
Test Automation CS 4501 / 6501 Software Testing
CS527: Advanced Topics in Software Engineering (Software Testing and Analysis) Darko Marinov August 26, 2008.
Paul Ammann & Jeff Offutt
Requirements Engineering
Darko Marinov February 5, 2009
Presentation transcript:

cs498dm Software Testing Darko Marinov January 27, 2009

Administrative Info Mailing list confirmed last time Wiki permissions should be set –People page: Thank you for signing up –11 students so far Any questions about the course overview? –Schedule (order set but dates are tentative) –Syllabus –Project: testing refactoring engines

Textbook “Introduction to Software Testing” by Paul Ammann and Jeff Offutt Reordered in the bookstore –The order from Fall was somehow missed –To call bookstore, searched for phone number –“Bug” in Google: search for “u of i bookstore” Results depend on location (feature not bug)

Previous Lectures Introduction to “Bugs” –Why look for bugs? What are bugs? –Where they come from? How to detect them? Example ambiguous informal statement: “everybody likes a winner”; meaning? 1.some w: Winner | some p: Person | p.likes(w) 2.some w: Winner | all p: Person | p.likes(w) 3.all p: Person | some w: Winner | p.likes(w) 4.all p: Person | all w: Winner | p.likes(w)

Today’s Lecture: Example Interactive Testing Session Test some small program –TriTyp: Given three integers for the lengths of the sides of a triangle, find the type of triangle –Show some example in Eclipse Several reasons to do this together –We will learn some testing terminology –It should be fun to look for some bugs –We can learn from mistakes as we go

Testing Levels Based on Software Activity Unit testing (Module testing) Integration testing System testing (Acceptance testing) Regression testing Names are not standardized –I don’t insist on names; we will follow the book

Test Cases Test case values (inputs) Expected results (if known) Prefix values Postfix values –Verification values –Exit commands Test set/suite: a set of test cases

Some Other Terminology Black-box testing White-box testing (or glass-box, clear-box) Top-down testing Bottom-up testing Static testing Dynamic testing

Coverage Criteria Did we have any test plan or purpose? Did we specify any test requirements? How good are our tests? Did we generate enough tests? Criterion: rule that imposes test requirements Coverage: satisfaction of test requirements

Automated Testing We want to test (early and often) –Automated testing –Regression testing Can use JUnit (or a similar tool) Alternatives have some cons –Different language for scripting –A lot of printing if no checking of result –Using “main” does not compose well

Next Lecture Thursday, January 29: Refactoring –What is it? Why you need it? How to perform it? –Guest lecture by a student expert on refactoring After that, lab on testing and then start more on coverage criteria “Assignments”: –Sign up at People page on Wiki if you didn’t –Try Java, JUnit, Eclipse ( TA and me if completely unfamiliar)