Name :- Akash Rana
Class :- CE-2
Batch :- A
Enrollment :- 150410107090
Sub :- SE
Topic :- Testing Strategies , Testing
Techniques & Test Case
Introduction
• Software testing is a critical element of
software quality assurance and represents the
ultimate review of specification, design &
coding.
• Testing is a process that requires more efforts
than any other software engineering activity.
• Testing is a set of activities that can be
planned in advance and conducted
systematically.
Introduction
• If it is done haphazardly, then only time will be
wasted and more even worse errors may get
introduced.
• This may lead to have undetected errors in the
system being developed.
• Hence performing testing is needed.
Testing Strategies
• There are basically four testing strategies :-
1) Unit testing
2) Integration testing
3) Validation testing
4) System testing
Unit Testing
• In unit testing the individual components are
tested independently to ensure their quality.
• The focus is to uncover the errors in design
and implementation.
• The various tests that are conducted during
the unit test are described as below :-
o Module interface are tested for proper
information flow in and out of the program.
Unit Testing
o Local data are examined to ensure that
integrity is maintained.
o All error handling paths should be tested.
o Boundary conditions are tested to ensure that
the module operates properly at boundaries
established to limit or restrict processing.
o All the independent paths are tested for
ensuring that all statements in the module
have been executed only once.
Integration Testing
• Integration is defined as a set of integration
among component. Testing the interactions
between the module and interactions with other
system externally is called Integration testing.
• Integration testing carried out using two
approaches :- 1) Non-Incremental :- Bing bang &
2) Incremental :- Top down testing, Bottom up
testing, Regression testing & Smoke testing.
Validation Testing
• The process of evaluating software during the
development process or at the end of the
development process to determine whether it
satisfies specified business requirements.
Validation testing ensures that the product
actually meets the client’s needs.
• Acceptance Testing :- The acceptance testing is a
kind of testing conducted to ensure that the
software works correctly in the user work
environment.
Validation Testing
• The types of acceptance testing :-
1. Alpha Test :- This testing is done by a developer
or by a customer under the supervision of
developer in company’s premises. Sometimes
full product is not tested using alpha testing only
core functionalities are tested.
2. Beta Test :- This testing is done by the customer
without any interference of developer and is
done at customer’s place. The complete product
is tested under this testing.
System Testing
• In system testing the software and other system
elements are tested as a whole.
• System testing verifies that all elements mesh
properly and that overall system performance is
achieved.
• System Tests are :-
1. Recovery Testing
2. Security Testing
3. Stress Testing
4. Performance Testing
Software Testing Technique
• Two basic techniques :- Black box testing & White box
testing.
• Black box testing :-
1. Black box testing is called as behavioural testing.
2. Black box testing examines some fundamental aspect of
the system with little regard for internal logical structure
of the software.
3. During black box testing the program cannot be tested
100 percent.
4. This type is suitable for large projects.
5. This is applicable to following levels of Software
engineering levels:- Integration, System, Acceptance
testing.
Software Testing Technique
• White box testing :-
1. White box testing is called as glass box testing.
2. White box testing the procedural details all the logical
paths, all the internal data structures are closely
examined.
3. White box testing lead to test the program throughly.
4. This type is suitable for small projects.
5. This is applicable to following levels of Software
engineering levels:- Integration, System, Unit testing.
Test case
• Test cases are used to determine the presence of fault
in the program. Sometimes even if there is some fault
in our program the correct output can be obtained for
some inputs. Hence, it is necessary to exercise those
set of inputs for which faults can be exposed off.
• Executing test cases require money because
i) Machine time is required to execute test cases.
ii) Human efforts are involved in executing test cases.
• The selection of test case should be such that faulty
program segment must be exercised by at least one
test case.

Testing strategies,techniques & test case SE

  • 1.
    Name :- AkashRana Class :- CE-2 Batch :- A Enrollment :- 150410107090 Sub :- SE
  • 2.
    Topic :- TestingStrategies , Testing Techniques & Test Case
  • 3.
    Introduction • Software testingis a critical element of software quality assurance and represents the ultimate review of specification, design & coding. • Testing is a process that requires more efforts than any other software engineering activity. • Testing is a set of activities that can be planned in advance and conducted systematically.
  • 4.
    Introduction • If itis done haphazardly, then only time will be wasted and more even worse errors may get introduced. • This may lead to have undetected errors in the system being developed. • Hence performing testing is needed.
  • 5.
    Testing Strategies • Thereare basically four testing strategies :- 1) Unit testing 2) Integration testing 3) Validation testing 4) System testing
  • 6.
    Unit Testing • Inunit testing the individual components are tested independently to ensure their quality. • The focus is to uncover the errors in design and implementation. • The various tests that are conducted during the unit test are described as below :- o Module interface are tested for proper information flow in and out of the program.
  • 7.
    Unit Testing o Localdata are examined to ensure that integrity is maintained. o All error handling paths should be tested. o Boundary conditions are tested to ensure that the module operates properly at boundaries established to limit or restrict processing. o All the independent paths are tested for ensuring that all statements in the module have been executed only once.
  • 8.
    Integration Testing • Integrationis defined as a set of integration among component. Testing the interactions between the module and interactions with other system externally is called Integration testing. • Integration testing carried out using two approaches :- 1) Non-Incremental :- Bing bang & 2) Incremental :- Top down testing, Bottom up testing, Regression testing & Smoke testing.
  • 9.
    Validation Testing • Theprocess of evaluating software during the development process or at the end of the development process to determine whether it satisfies specified business requirements. Validation testing ensures that the product actually meets the client’s needs. • Acceptance Testing :- The acceptance testing is a kind of testing conducted to ensure that the software works correctly in the user work environment.
  • 10.
    Validation Testing • Thetypes of acceptance testing :- 1. Alpha Test :- This testing is done by a developer or by a customer under the supervision of developer in company’s premises. Sometimes full product is not tested using alpha testing only core functionalities are tested. 2. Beta Test :- This testing is done by the customer without any interference of developer and is done at customer’s place. The complete product is tested under this testing.
  • 11.
    System Testing • Insystem testing the software and other system elements are tested as a whole. • System testing verifies that all elements mesh properly and that overall system performance is achieved. • System Tests are :- 1. Recovery Testing 2. Security Testing 3. Stress Testing 4. Performance Testing
  • 12.
    Software Testing Technique •Two basic techniques :- Black box testing & White box testing. • Black box testing :- 1. Black box testing is called as behavioural testing. 2. Black box testing examines some fundamental aspect of the system with little regard for internal logical structure of the software. 3. During black box testing the program cannot be tested 100 percent. 4. This type is suitable for large projects. 5. This is applicable to following levels of Software engineering levels:- Integration, System, Acceptance testing.
  • 13.
    Software Testing Technique •White box testing :- 1. White box testing is called as glass box testing. 2. White box testing the procedural details all the logical paths, all the internal data structures are closely examined. 3. White box testing lead to test the program throughly. 4. This type is suitable for small projects. 5. This is applicable to following levels of Software engineering levels:- Integration, System, Unit testing.
  • 14.
    Test case • Testcases are used to determine the presence of fault in the program. Sometimes even if there is some fault in our program the correct output can be obtained for some inputs. Hence, it is necessary to exercise those set of inputs for which faults can be exposed off. • Executing test cases require money because i) Machine time is required to execute test cases. ii) Human efforts are involved in executing test cases. • The selection of test case should be such that faulty program segment must be exercised by at least one test case.