1 SOFTWARE TESTING Przygotował: Marcin Lubawski. 2 Testing Process AnalyseDesignMaintainBuildTestInstal Software testing strategies Verification Validation.

Slides:



Advertisements
Similar presentations
Software Testing Strategies
Advertisements

Lecture 8: Testing, Verification and Validation
SOFTWARE TESTING. Software Testing Principles Types of software tests Test planning Test Development Test Execution and Reporting Test tools and Methods.
Testing and Quality Assurance
Software Quality Assurance Plan
Chapter 4 Quality Assurance in Context
PERTEMUAN - 2 SOFTWARE QUALITY. OBJECTIVES After completing this chapter, you will be able to: ■ Define software, software quality and software quality.
Illinois Institute of Technology
Copyright  Larry Dribin, Ph.D. SE470_EngFlows_v1.ppt SE470 EngFlows - 1 Excellence in Software Engineering Repeatable Level Defined Level Manage.
Software Testing Name: Madam Currie Course: Swen5431 Semester: Summer 2K.
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
Software Testing & Strategies
Software Engineering Lecture 13 Software Testing Strategies 1.
Issues on Software Testing for Safety-Critical Real-Time Automation Systems Shahdat Hossain Troy Mockenhaupt.
Introduction to Computer Technology
Functional Testing Test cases derived from requirements specification document – Black box testing – Independent testers – Test both valid and invalid.
Release & Deployment ITIL Version 3
BY: GARIMA GUPTA MCA FINAL YEAR WHAT IS SOFTWARE TESTING ? SOFTWARE TESTING IS THE PROCESS OF EXECUTING PROGRAMS OR SYSTEM WITH THE INTENT.
System Testing There are several steps in testing the system: –Function testing –Performance testing –Acceptance testing –Installation testing.
CCSB223/SAD/CHAPTER141 Chapter 14 Implementing and Maintaining the System.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Software Quality Assurance Lecture #8 By: Faraz Ahmed.
The Islamic University of Gaza
1 Software Testing (Part-II) Lecture Software Testing Software Testing is the process of finding the bugs in a software. It helps in Verifying and.
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 13b: Software Testing Strategies Software Engineering: A Practitioner’s Approach, 6/e Chapter.
SOFTWARE TESTING STRATEGIES CIS518001VA : ADVANCED SOFTWARE ENGINEERING TERM PAPER.
Test plans CSCI102 - Systems ITCS905 - Systems MCS Systems.
Software Quality Assurance Activities
Software testing basic. Main contents  Why is testing necessary?  What is testing?  Test Design techniques  Test level  Test type  How to write.
Software Testing Testing principles. Testing Testing involves operation of a system or application under controlled conditions & evaluating the results.
FCS - AAO - DM COMPE/SE/ISE 492 Senior Project 2 System/Software Test Documentation (STD) System/Software Test Documentation (STD)
Software Testing. What is Software Testing? Definition: 1.is an investigation conducted to provide stakeholders with information about the quality of.
Software Reviews & testing Software Reviews & testing An Overview.
Testing Basics of Testing Presented by: Vijay.C.G – Glister Tech.
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman.1.
Software Development Software Testing. Testing Definitions There are many tests going under various names. The following is a general list to get a feel.
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 SIX Implementation, Testing and Pragmatics Making it a reality.
Chapter 9 Project Management. Introduction Effective project management requires a well-structured project and diligent oversight A well-structured project.
Topics Covered: Software testing Software testing Levels of testing Levels of testing  Unit testing Unit testing Unit testing  Integration testing Integration.
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.
Ensure that the right functions are performed Ensure that the these functions are performed right and are reliable.
LECTURE 19 23/11/15 Software Quality and Testing.
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
1 Software Testing Strategies: Approaches, Issues, Testing Tools.
 Software Testing Software Testing  Characteristics of Testable Software Characteristics of Testable Software  A Testing Life Cycle A Testing Life.
HNDIT23082 Lecture 09:Software Testing. Validations and Verification Validation and verification ( V & V ) is the name given to the checking and analysis.
1 Phase Testing. Janice Regan, For each group of units Overview of Implementation phase Create Class Skeletons Define Implementation Plan (+ determine.
Testing and Evolution CSCI 201L Jeffrey Miller, Ph.D. HTTP :// WWW - SCF. USC. EDU /~ CSCI 201 USC CSCI 201L.
What is a software? Computer Software, or just Software, is the collection of computer programs and related data that provide the instructions telling.
Chapter 9 Testing the System 9.1 Principles of System Testing Focus A: The objective of unit and integration ensure the code implemented the design.
Testing throughout Lifecycle Ljudmilla Karu. Verification and validation (V&V) Verification is defined as the process of evaluating a system or component.
SaralTA Batch-07 Software Testing Presented By - Chittaranjan M.
Software Testing Strategies for building test group
SOFTWARE TESTING Date: 29-Dec-2016 By: Ram Karthick.
PREPARED BY G.VIJAYA KUMAR ASST.PROFESSOR
Testing the System.
Software Engineering (CSI 321)
SOFTWARE TESTING OVERVIEW
Verification and Testing
Roberta Roth, Alan Dennis, and Barbara Haley Wixom
Introduction to Software Testing
Lecture 09:Software Testing
Static Testing Static testing refers to testing that takes place without Execution - examining and reviewing it. Dynamic Testing Dynamic testing is what.
Baisc Of Software Testing
System Testing.
© Oxford University Press All rights reserved.
Software Testing Strategies
Presentation transcript:

1 SOFTWARE TESTING Przygotował: Marcin Lubawski

2 Testing Process AnalyseDesignMaintainBuildTestInstal Software testing strategies Verification Validation System Testing / Quality Control

3 Master Test Plan 1. Test Approach Overview 2. Test Phase Definition Define staged testing processes to be employed to ensure full feature & function compliance with documented requirements and specifications relating to the project. Develop and establish structured testing environment Implement structured testing processes and controls which will improve defect detection, reduce iterative development This section provides a high level definition of the testing processes All aspects of testing should be included in this section

4 Master Test Plan 3. Participating Systems 4. Responsibilities 5. Resource Requirements Specify those systems which will incur change and those which will need to participate in Integrated Systems Testin Contact names and phone numbers should be indicated for each area of responsibility. Include project organization chart and matrix relationships. Specify individuals responsible for accepting the plan Provide a matrix of the estimated manpower requirements by month Specify any anticipated hardware / software costs for testing tools that have been indicated in the plan.

5 Master Test Plan 6. Schedules 7. Glossary of Terms Provide a high level schedule of the major testing milestones including each test phase start and end dates The Master Test Plan should include a glossary of terms to assist in providing clarity and understanding to the work to be performed, like: testing terminology acronyms application specific vocabulary

6 Testing Tactics White Box Black Box

7 White Box Testing based on knowledge of internal code structure and logic „White Box” Logic Work ? Meets Specs ? The System

8 Black Box Testing based on external specifications without knowledge of how the system is constructed „Black Box” Meets Specs ? Fit for Use The System

9 Testing strategies 1. Unit Testing Functional Testing 3. Integration Testing 2. System Testing 4. Customer Acceptance Testing Perforamnce Testing Security Testing Recovery testing

10 Unit Testing Unit System

11 System Testing Once each of the individual modules has been tested & validated to correctly perform all the instructions assigned to it, the next step is to verify connectivity to related modules. The system test should detect any errors promoted between modules within the same system. As a result of a completed system test, all internal 'hand-shaking' will have been verified. Unit testing

12 Component Integration Testing Component System Integrated

13 Acceptance Testing If there is one customer, a series of acceptance tests are conducted (by the customer) to enable the customer to validate all requirements. If software is being developed for use by many customers, can not use acceptance testing. An alternative is to use alpha and beta testing to uncover errors.

14 Acceptance Testing Alpha Testing Beta Testing Alpha testing is conducted at the developer's site by a customer. The customer uses the software with the developer 'looking over the shoulder' and recording errors and usage problems. Alpha testing conducted in a controlled environment. Beta testing is conducted at one or more customer sites by end users. It is 'live' testing in an environment not controlled by the developer. The customer records and reports difficulties and errors at regular intervals. Software Accepted

15 Performance Testing For real-time and embedded systems, functional requirements may be satisfied but performance problems make the system unacceptable. Performance testing checks the run-time performance May require special software instrumentation.

16 Security Testing Systems with sensitive information or which have the potential to harm individuals can be a target for improper or illegal use. This can include: 1. attempted penetration of the system by 'outside' individuals for fun or personal gain. 2. disgruntled or dishonest employees

17 Security Testing During security testing the tester plays the role of the individual trying to penetrate the system. Large range of methods: 1. attempt to acquire passwords through external clerical means 2. use custom software to attack the system 3. overwhelm the system with requests 4. cause system errors and attempt to penetrate the system during recovery 5. browse through insecure data.

18 Recovery Testing Many systems need to be fault tolerant - processing faults must not cause overall system failure. Other systems require recovery after a failure within a specified time. Recovery testing is the forced failure of the software in a variety of ways to verify that recovery is properly performed.

19 Classic Testing Mistakes starting testing too late not testing the documentation not testing installation procedures. failing to correctly identify risky areas recruiting testers from the ranks of failed programmers physical separation between developers and testers. programmers can't test their own code. paying more attention to running tests than to designing them poor bug reporting And many more...