Software Testing and Quality Assurance 1. What is the objectives of Software Testing?

22
Software Testing and Quality Assurance 1

Transcript of Software Testing and Quality Assurance 1. What is the objectives of Software Testing?

Page 1: Software Testing and Quality Assurance 1. What is the objectives of Software Testing?

Software Testing and Quality Assurance

1

Page 2: Software Testing and Quality Assurance 1. What is the objectives of Software Testing?

What is the objectives of Software Testing?

Page 3: Software Testing and Quality Assurance 1. What is the objectives of Software Testing?

Direct Objectives• To identify and reveal as many errors as

possible in the tested software• To bring the tested software, after correction

of the identified errors and retesting to an acceptable level of quality

• To perform the required tests efficiency and effectively, within budgetary and scheduling limitation

Page 4: Software Testing and Quality Assurance 1. What is the objectives of Software Testing?

Indirect Objective• To compile a record of software errors for

use in error prevention (by corrective and preventive actions)

Page 5: Software Testing and Quality Assurance 1. What is the objectives of Software Testing?

Stages of Testing• Module or unit testing.• Integration testing,• Function testing.• Performance testing.• Acceptance testing.• Installation testing.

Page 6: Software Testing and Quality Assurance 1. What is the objectives of Software Testing?

Testing Strategies• We began by 'testing-in-the-small' and move

toward 'testing -in-the-large'• For conventional software

– The module (component) is our initial focus– Integration of module follows

• For OO software– OO class that include attributes and operations

and implies communication and collaboration

Page 7: Software Testing and Quality Assurance 1. What is the objectives of Software Testing?

Static Testing

• Static testing refers to testing that takes place without Execution - examining and reviewing it.

Dynamic Testing • Dynamic testing is what you would normally

think of testing - executing and using the software.

Page 8: Software Testing and Quality Assurance 1. What is the objectives of Software Testing?

Dynamic Testing

• Techniques used are determined by the type of testing that must be conducted– Functional– Structural

Page 9: Software Testing and Quality Assurance 1. What is the objectives of Software Testing?

Functional Testing

• Structure of the program is not considered.• Test cases are decided based on the

requirements or specification of the program or module

• Hence it is often called as “Black Box Testing”.

Page 10: Software Testing and Quality Assurance 1. What is the objectives of Software Testing?

Structural Testing

• Concerned with testing ,the implementation of the program.

• Focus on the internal structure of the program.

• The intent of structural testing is not to exercise all the different input or output condition but to exercise the different programming structures and data structures in the program.

Page 11: Software Testing and Quality Assurance 1. What is the objectives of Software Testing?

Testing Levels

• Phases of software testing:– Unit Testing– Integration/Build Testing– Validation/Functional Testing– System Testing– Acceptance Testing

Page 12: Software Testing and Quality Assurance 1. What is the objectives of Software Testing?

Software Test Classification• Software test may be classified

– according to the testing concept or – to the requirement classification

Page 13: Software Testing and Quality Assurance 1. What is the objectives of Software Testing?

According to Testing Concept• What concept to test?

– Output• Output is used to archive an acceptable level of quality

– Structural of the software• Internal structural and calculations involved is included for

satisfactory testing

• Two Classes have been developed– Black box testing

• Identify bug according to software malfunctioning• Functionality testing

– White box testing• Examine internal calculation paths in order to identify bug• Structural testing

Page 14: Software Testing and Quality Assurance 1. What is the objectives of Software Testing?

According to Requirement• The test id carried out to ensure full coverage of the

respective requirement– Operation

• Correctness, Reliability, Efficiency, Integrity, Usability

– Revision• Maintainability, flexibility, testability

– Transition• Portability, reusabilily, interoperability

• From the requirement we can define the test classification

• White box and black box can be used implemented respectively

Page 15: Software Testing and Quality Assurance 1. What is the objectives of Software Testing?

Test Classification according to Requirement

Correctness 1.1 Output correctness tests1.2 Documentation tests1.3 Availability tests1.4 Data processing & calculations correctness tests 1.5 Software qualification tests

Reliability 2. Reliability testsEfficiency 3. Stress test (load tests and durability tests)Integrity 4. Software system security testsUsability 5.1 Training usability tests

5.2 Operational usability testsMaintainability 6. Maintainability tests Flexibility 7. Flexibility tests Testability 8. Testability testsPortability 9. Portability testsRe usability 10. Re usability testsInteroperability 11.1 Software interoperability tests

11.2 Equipment interoperability test

Page 16: Software Testing and Quality Assurance 1. What is the objectives of Software Testing?

Test Classification according to Requirement

Correctness 1.1 Output correctness tests1.2 Documentation tests1.3 Availability tests1.4 Data processing & calculations correctness tests 1.5 Software qualification tests

Reliability 2. Reliability testsEfficiency 3. Stress test (load tests and durability tests)Integrity 4. Software system security testsUsability 5.1 Training usability tests

5.2 Operational usability testsMaintainability 6. Maintainability tests Flexibility 7. Flexibility tests Testability 8. Testability testsPortability 9. Portability testsRe usability 10. Re usability testsInteroperability 11.1 Software interoperability tests

11.2 Equipment interoperability test

Page 17: Software Testing and Quality Assurance 1. What is the objectives of Software Testing?

IEEE definitions

• Black box testing• Testing that ignores the internal mechanism of the

system or component and focuses solely on the outputs in response to selected inputs and execution conditions

• Testing conducted to evaluate the compliance of a system or component with specified functional requirements

• White box testing• Testing that takes into account the internal

mechanism of a system or component

Page 18: Software Testing and Quality Assurance 1. What is the objectives of Software Testing?

Unit Testing• Program reviews.• Formal verification.• Test each module individually.• Testing the program itself.

– black box and white box testing.

Page 19: Software Testing and Quality Assurance 1. What is the objectives of Software Testing?

Black Box or White Box?• Maximum # of logic paths - determine if

white box testing is possible.• Nature of input data.• Amount of computation involved.• Complexity of algorithms.

Page 20: Software Testing and Quality Assurance 1. What is the objectives of Software Testing?

Unit Testing

20

moduleto be

tested

test cases

results

softwareengineer

Page 21: Software Testing and Quality Assurance 1. What is the objectives of Software Testing?

Unit Testing Details• Interfaces tested for proper information flow.• Local data are examined to ensure that integrity is

maintained.• Boundary conditions are tested.• Basis path testing should be used.• All error handling paths should be tested.• Drivers and/or stubs need to be developed to test

incomplete software.

Page 22: Software Testing and Quality Assurance 1. What is the objectives of Software Testing?

Generating Test Data• Ideally want to test every permutation of

valid and invalid inputs• Equivalence partitioning it often required to

reduce to infinite test case sets– Every possible input belongs to one of the

equivalence classes.– No input belongs to more than one class.– Each point is representative of class.