Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Introduction to Software Engineering 
Muhammad Nasir 
Software Testing Strategies (2) 
m.nasir@iiu.edu.pk
Agenda 
 Integration Testing 
 Validation Testing 
 System Testing 
 Recovery Testing 
 Security Testing 
 Stress Te...
Integration Testing 
 Integration testing is a systematic 
technique for constructing the program 
structure while at the...
Integration Testing
Non-Incremental Approach 
 There is often a tendency to attempt 
non-incremental integration; that is, 
to construct the ...
Non-Incremental Approach 
 Correction is difficult because isolation 
of causes is complicated by the large 
size of the ...
Non-Incremental Approach 
(Big Bang)
Incremental Approach 
 Incremental integration is the exact 
opposite of the big bang approach. 
 The program is constru...
Incremental Approach
Validation Testing 
 Validation testing begins at the end of 
integration testing, when the software is 
completely assem...
System Testing 
 Software is only one element of a larger 
computer-based system 
 Ultimately, software is incorporated ...
System Testing 
 System Testing Includes; 
 Recovery Testing 
 Security Testing 
 Stress Testing 
 Performance Testin...
Recovery Testing 
 Recovery testing is a system test that forces 
the software to fail in a variety of ways and 
verifies...
Security Testing 
 Security testing attempts to verify that 
protection mechanisms built into a system 
will, in fact, pr...
Security Testing 
 The tester may attempt to acquire passwords; 
 May attack the system with custom software 
designed t...
Stress Testing 
 Stress testing executes a system in a manner that demands 
resources in abnormal quantity, frequency, or...
Performance Testing 
 Performance testing occurs throughout all 
steps in the testing process. 
 Even at the unit level,...
Deployment Testing 
 In many cases, software must execute on a 
variety of platforms and under more than one 
operating s...
Deployment Testing 
 A more thorough deployment test 
might encompass combinations of 
Web browsers with various operatin...
The End 
 Thanks for listening 
 Questions would be appreciated.
You’ve finished this document.
Download and read it offline.
Upcoming SlideShare
Lecture 13 requirements modeling - flow & behavior (2)
Next
Upcoming SlideShare
Lecture 13 requirements modeling - flow & behavior (2)
Next
Download to read offline and view in fullscreen.

Share

Lecture 20 software testing (2)

Download to read offline

Introduction to Software Engineering 1

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all

Lecture 20 software testing (2)

  1. 1. Introduction to Software Engineering Muhammad Nasir Software Testing Strategies (2) m.nasir@iiu.edu.pk
  2. 2. Agenda  Integration Testing  Validation Testing  System Testing  Recovery Testing  Security Testing  Stress Testing  Performance Testing  Deployment Testing
  3. 3. Integration Testing  Integration testing is a systematic technique for constructing the program structure while at the same time conducting tests to uncover errors associated with interfacing.  The objective is to take unit tested components and build a program structure that has been dictated by design.
  4. 4. Integration Testing
  5. 5. Non-Incremental Approach  There is often a tendency to attempt non-incremental integration; that is, to construct the program using a "big bang" approach.  A set of errors is encountered.
  6. 6. Non-Incremental Approach  Correction is difficult because isolation of causes is complicated by the large size of the entire program.  Once these errors are corrected, new ones appear and the process continues in a seemingly endless loop.
  7. 7. Non-Incremental Approach (Big Bang)
  8. 8. Incremental Approach  Incremental integration is the exact opposite of the big bang approach.  The program is constructed and tested in small increments, where errors are easier to isolate and correct;
  9. 9. Incremental Approach
  10. 10. Validation Testing  Validation testing begins at the end of integration testing, when the software is completely assembled as a package.  Validation Testing Includes  Configuration Testing – Checking all the elements in the package and their version  Alpha Testing – Controlled Testing by user at developer site  Beta Testing – Open Testing a User site
  11. 11. System Testing  Software is only one element of a larger computer-based system  Ultimately, software is incorporated with other system elements (e.g., hardware, people, information)  System testing is actually a series of different tests whose primary purpose is to fully exercise the computer-based system.
  12. 12. System Testing  System Testing Includes;  Recovery Testing  Security Testing  Stress Testing  Performance Testing  Deployment Testing
  13. 13. Recovery Testing  Recovery testing is a system test that forces the software to fail in a variety of ways and verifies that recovery is properly performed.  If recovery is automatic (performed by the system itself), re-initialization, check-pointing mechanisms, data recovery, and restart are evaluated for correctness.  If recovery requires human intervention, that is mean-time-to-repair (MTTR) is evaluated to determine whether it is within acceptable limits.
  14. 14. Security Testing  Security testing attempts to verify that protection mechanisms built into a system will, in fact, protect it from improper break through .  During security testing, the tester plays the role(s) of the individual who desires to break through the system.  Given enough time and resources, good security testing will ultimately penetrate a system.
  15. 15. Security Testing  The tester may attempt to acquire passwords;  May attack the system with custom software designed to break down any defenses that have been constructed;  May overwhelm the system, thereby denying service to others;  May purposely cause system errors, hoping to penetrate during recovery; may browse through insecure data, hoping to find the key to system entry.
  16. 16. Stress Testing  Stress testing executes a system in a manner that demands resources in abnormal quantity, frequency, or volume. For example, 1. special tests may be designed that generate ten interrupts per second 2. Input data rates may be increased by an order of magnitude to determine how input functions will respond 3. Test cases that require maximum memory or other resources are executed  A variation of stress testing is a technique called sensitivity testing
  17. 17. Performance Testing  Performance testing occurs throughout all steps in the testing process.  Even at the unit level, the performance of an individual module may be assessed as white-box tests are conducted.  Performance tests are often coupled with stress testing and usually require both hardware and software instrumentation  It is often necessary to measure resource utilization (e.g., processor cycles).
  18. 18. Deployment Testing  In many cases, software must execute on a variety of platforms and under more than one operating system environment.  In addition, deployment testing examines all installation procedures and specialized installation software that will be used by customers,  and all documentation that will be used to introduce the software to end users
  19. 19. Deployment Testing  A more thorough deployment test might encompass combinations of Web browsers with various operating systems (e.g., Linux, Mac OS, Windows).  Because security is a major issue, a complete set of security tests would be integrated with the deployment test.
  20. 20. The End  Thanks for listening  Questions would be appreciated.
  • MminMerihztrk

    May. 18, 2019
  • KafiaKhan1

    Nov. 15, 2016

Introduction to Software Engineering 1

Views

Total views

825

On Slideshare

0

From embeds

0

Number of embeds

3

Actions

Downloads

20

Shares

0

Comments

0

Likes

2

×