IT323 - Software Engineering 2 1 Tutorial 6.  Using your java, C# or other programming language skill, derive a checklist of common errors (NOT syntax.

Slides:



Advertisements
Similar presentations
Software Engineering COMP 201
Advertisements

Defect testing Objectives
Chapter 10 Software Testing
Testing and Quality Assurance
CMSC 345, Version 11/07 SD Vick from S. Mitchell Software Testing.
Objectives In this chapter, you will learn about:
Software testing.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 23 Slide 1 Software testing.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 23 Slide 1 Software testing.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 23 Slide 1 Software testing 2.
Program Testing Nelson Padua-Perez Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 20 Slide 1 Defect testing l Testing programs to establish the presence of system defects.
Software Engineering Software Testing.
Functional Testing.
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.
1 Software Testing Techniques CIS 375 Bruce R. Maxim UM-Dearborn.
11 Chapter 4 LOOPS AND FILES. 22 THE INCREMENT AND DECREMENT OPERATORS To increment a variable means to increase its value by one. To decrement a variable.
Software Testing Verification and validation planning Software inspections Software Inspection vs. Testing Automated static analysis Cleanroom software.
 Dr. Syed Noman Hasany 1.  Review of known methodologies  Analysis of software requirements  Real-time software  Software cost, quality, testing.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 23 Slide 1 Software testing.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 20 Slide 1 Integration testing l Tests complete systems or subsystems composed of integrated.
Extended Prelude to Programming Concepts & Design, 3/e by Stewart Venit and Elizabeth Drake Chapter 2: Developing a Program.
CS 501: Software Engineering Fall 1999 Lecture 16 Verification and Validation.
CMSC 345 Fall 2000 Unit Testing. The testing process.
Software Engineering Chapter 23 Software Testing Ku-Yaw Chang Assistant Professor Department of Computer Science and Information.
Software Testing The process of operating a system or component under specified conditions, observing and recording the results, and making an evaluation.
CSc 461/561 Information Systems Engineering Lecture2 – Software Testing.
Testing -- Part II. Testing The role of testing is to: w Locate errors that can then be fixed to produce a more reliable product w Design tests that systematically.
Chapter 8 – Software Testing Lecture 2 1Chapter 8 Software testing.
1 Software Defect Testing Testing programs to establish the presence of system defects.
Dr. Tom WayCSC Testing and Test-Driven Development CSC 4700 Software Engineering Based on Sommerville slides.
Chapter 8 – Software Testing Part 2 1Chapter 8 Software testing.
Software Testing Yonsei University 2 nd Semester, 2014 Woo-Cheol Kim.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 22 Slide 1 Software Verification, Validation and Testing.
Software Testing Reference: Software Engineering, Ian Sommerville, 6 th edition, Chapter 20.
An Object-Oriented Approach to Programming Logic and Design Fourth Edition Chapter 4 Looping.
Control Structures Repetition or Iteration or Looping Part II.
The Software Development Process
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 20 Slide 1 Defect testing l Testing programs to establish the presence of system defects.
Chapter 8 Lecture 1 Software Testing. Program testing Testing is intended to show that a program does what it is intended to do and to discover program.
Software Testing 1Software testing. V model Software testing2.
Intermediate 2 Computing Unit 2 - Software Development.
Testing Chapter 23 IB103 Week 12 (part 3). Verify that a complex (any) program works correctly, that the program meets specifications The chapter reviews.
CS451 Lecture 10: Software Testing Yugi Lee STB #555 (816)
1 The Software Development Process ► Systems analysis ► Systems design ► Implementation ► Testing ► Documentation ► Evaluation ► Maintenance.
HNDIT23082 Lecture 09:Software Testing. Validations and Verification Validation and verification ( V & V ) is the name given to the checking and analysis.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 23 Slide 1 Software testing.
CS223: Software Engineering Lecture 18: The XP. Recap Introduction to Agile Methodology Customer centric approach Issues of Agile methodology Where to.
CS 325: Software Engineering February 16, 2016 Designing a Design Class Diagram Design Class Diagrams DCD: Restaurant Example DCD: ATM Example Software.
Chapter 8 – Software Testing 1Chapter 8 Software testing Note: These are a modified version of Ch 8 slides available from the author’s site
Software Testing Reference: Software Engineering, Ian Sommerville, 6 th edition, Chapter 20.
Testing and Evolution CSCI 201L Jeffrey Miller, Ph.D. HTTP :// WWW - SCF. USC. EDU /~ CSCI 201 USC CSCI 201L.
Sommerville 9th Edition Chapter 8: Software Testing
Defect testing Testing programs to establish the presence of system defects.
1 Software Testing. 2 What is Software Testing ? Testing is a verification and validation activity that is performed by executing program code.
Software Testing.
TESTING TOOLS MANUAL APPROACH BY J.ADI SESHU.
Chapter 8 – Software Testing
Chapter 18 Software Testing Strategies
Chapter 7 Software Testing.
UNIT-4 BLACKBOX AND WHITEBOX TESTING
Lecture 09:Software Testing
Testing and Test-Driven Development CSC 4700 Software Engineering
Chapter 8 – Software Testing
Software testing.
Software Testing & Quality Management
Test Case Test case Describes an input Description and an expected output Description. Test case ID Section 1: Before execution Section 2: After execution.
CS410 – Software Engineering Lecture #11: Testing II
UNIT-4 BLACKBOX AND WHITEBOX TESTING
Presentation transcript:

IT323 - Software Engineering 2 1 Tutorial 6

 Using your java, C# or other programming language skill, derive a checklist of common errors (NOT syntax errors) that could not be detected by a compiler but that could be detected in a program inspection? 2

 Dynamic variables are cleared properly when they’re no longer needed  Recursive functions have logic to prevent infinite recursion  Iterative loops have logic to prevent infinite loops  Variables are not in danger of being too limited with large numbers  Logic statements are defined correctly 3

 An item in inventory can have a quantity of to , identify the test cases from this specification using partition testing. 4

The equivalence partitions are:  If x <  If ≤x ≤+9999  If x > Test cases: {-10000, -9999, 0, +9999, 10000} 5

 A headmaster enter the students level. She will enter P if the student in primary school. She will enter I if the student in Intermediate school. She will enter S if the student in Secondary school. identify the test cases from this specification using partition testing 6

The equivalence partitions are:  If code = P  If code = I  If code = S  If code is not one of P, I, S Test cases: {P, I, S, any other character} 7

 What are the test data that best demonstrates equivalence partitioning for a program that checks the weather in Boston. It's snowing if the degree is less than -10, cold if it (between -10 and 10), cool if it (between 10 and 26) and hot if it more than 26? 8

The equivalence partitions are:  If -10> Weather  If -10<=Weather<=10  If 10< Weather <=26  If 26< Weather Test cases: {-11,-10,0,10,18,26,27} 9

 According to the following Ticket price for theme park table, derive the test cases using partition testing. The Discount Table 10

11 The equivalence partitions are:  If 0<=age<=6  If 7<=age<=17  If 18<=age<=64  If 64<age  If x < age Test cases: {-1,0, 3, 6, 7, 12, 17, 18, 41, 64, 65}

 Given this object: Derive the test cases that cover this object. Also, derive three state sequence tests. 12 Report Font NumberOfPages Orientation Margins PrintReport() ClearContents() UndoClearContents() EditingDate() ChangeFont(fontType )

13  Test attribute values (different values, boundaries)  Test each method  Test combination of methods Example of state sequence:  ChangeFont() > ClearContents() > UndoClearContents()  EditingDate() > PrintReport() > EditingDate()  ChangeFont() > PrintReport() > EditingDate()

 Given these two components: Derive Guidelines for this type of component interface. Also, list the test cases for each guideline. 14 Report Component Formatting Component Format ( str color, str font, int fontSize)

15 Guidelines are the same of guidelines for testing Parameter Interface, They are briefly:  Test parameters with valid and invalid values  Test parameter with extreme ends of their ranges  Test null pointers

 Given this part from Pizza restaurant website requirements: 16 - If a customer orders on Monday between 12 and 4 p. m., then the website shall ask the customer if he like to order Monday ’ s offer ( Take 2 medium pizzas for 40 SR ). - If the customer ’ s order is the 10 th order, then the website shall provide 20% discount for his recent order.

17 Req-1-  Test if the day and the time are known in the system  Set up the time and day to be another day than Monday or another time not between 12 and 4 p.m.., test if the system display msg to ask the customer about the offer.  Set up the time and day to be Monday from 12-4 p.m., test if the system display msg to ask the customer about Monday offer or not.  If the msg is displayed, test if it is correctly issued.

18 Req-2-  Test if the system counts orders for each customer  Set the order number to be the 10 th order, test if a discount is applied or not.  Set the order number to be the 10 th order, test if the discount is applied or not.  If the system applies discount for the 10 th order, check if it is 20% or not  Test if the system applies 20% correctly

 Explain the relation between Agile methods and Alpha testing, Beta testing and acceptance testing. 19

20 Agile and Alpha testing: agile advocate user involvement in the development process and that users should play a key role in designing test for the system. So, it is a part of agile. Agile and Beta testing: No beta testing in agile because the developers in agile do not make the releases available in the open market or in public. Agile and acceptance testing: in agile, acceptance testing has a rather different meaning. The tests in agile are automated and development does not proceed until the story acceptance tests have passed. So, there is acceptance testing in agile but it is not as a separated activity.

 What is the difference between stress testing and regression testing? 21

22 Stress testing: stressing the system by making demands that are outside the design limits of the software. It is used in the performing testing (release testing) and for Message interface testing (component testing >> development testing). Regression testing: is testing the system to check that changes have not ‘broken’ previously working code. It is used when adding new function or apply new change ( in TDD and integration testing).

Thank you 23