Upload
daniya-angle
View
94
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Executing software in a simulated or real environment, using inputs selected somehow. www.appsys.in
Citation preview
created By: Aarif Habeeb
Software TestingCreated By: Aarif Habeeb
MCA,SEO & SEM Expert, Website [email protected]
http://www.appsys.in
created By: Aarif Habeeb
Introduction Goals of Testing Objectives of testing Levels of Testing Test Types VERIFICATION & VALIDATION The testing process Testing phases Software Testing Difficulties Stages of Testing Conclusion Reference Question Contact us
Agenda
created By: Aarif Habeeb
What is Software Testing?
Executing software in a simulated or real environment, using inputs selected somehow.
Introduction
created By: Aarif Habeeb
Detect faults Establish confidence in software Evaluate properties of software
◦ Reliability◦ Performance◦ Memory Usage◦ Security◦ Usability
Goals of Testing
created By: Aarif Habeeb
To understand testing techniques that are geared to discover program faults
To introduce guidelines for interface testing To understand specific approaches to object-oriented
testing To understand the principles of CASE tool support for
testing Executing a program with the intent of finding an error. To check if the system meets the requirements and be
executed successfully in the Intended environment. To check if the system is “ Fit for purpose”. To check if the system does what it is expected to do.
Objectives of testing
created By: Aarif Habeeb
A good test case is one that has a probability of finding an as yet undiscovered error.
A successful test is one that uncovers a yet undiscovered error.
A good test is not redundant. A good test should be “best of breed”. A good test should neither be too simple nor
too complex.
Continue…….Objective
created By: Aarif Habeeb
Unit Testing Integration Testing Validation Testing
◦ Regression Testing◦ Alpha Testing◦ Beta Testing
Acceptance Testing
Levels of Testing
created By: Aarif Habeeb
Functional tests Algorithmic tests Positive tests Negative tests Usability tests Boundary tests Startup/shutdown tests Platform tests Load/stress tests
Test Types
created By: Aarif Habeeb
Verification - typically involves reviews and meeting to evaluate documents, plans, code, requirements, and specifications. This can be done with checklists, issues lists, walkthroughs, and inspection meeting.
Validation - typically involves actual testing and takes place after verifications are completed.
Validation and Verification process continue in a cycle till the software becomes defects free.
VERIFICATION & VALIDATION
created By: Aarif Habeeb
Component testing ◦ Testing of individual program components◦ Usually the responsibility of the component
developer (except sometimes for critical systems)◦ Tests are derived from the developer’s experience
Integration testing◦ Testing of groups of components integrated to
create a system or sub-system◦ The responsibility of an independent testing team◦ Tests are based on a system specification
The testing process
created By: Aarif Habeeb
Testing phases
Componenttesting
Integrationtesting
Software developer Independent testing team
created By: Aarif Habeeb
Testing in the Small
Unit Testing Feature Testing Integration Testing
Unit TestingTests the smallest individually executable code units.Usually done by programmers. Test cases might be selected based on code, specification, intuition, etc.
Tools: Test driver/harness Code coverage analyzer Automatic test case generator
Stages of Testing
created By: Aarif Habeeb
Integration TestingTests interactions between two or more units or components. Usually done by programmers. Emphasizes interfaces.
Issues: In what order are units combined? How do you assure the compatibility and
correctness of externally-supplied components?
created By: Aarif Habeeb
Most of the software testing literature equates testcase selection to software testing but that is just onedifficult part. Other difficult issues include:
Determining whether or not outputs are correct. Comparing resulting internal states to expected
states. Determining whether adequate testing has been
done. Determining what you can say about the software
when testing is completed. Measuring performance characteristics. Comparing testing strategies.
Software Testing Difficulties
created By: Aarif Habeeb
Testing in the Large System Testing End-to-End Testing Operations Readiness Testing Beta Testing Load Testing Stress Testing Performance Testing Reliability Testing Regression Testing
Stages of Testing
created By: Aarif Habeeb
Conclusion
created By: Aarif Habeeb
www.appsys.in www.google.com www.wiki.com www.softwaretesting.com
Reference
created By: Aarif Habeeb
Questions
created By: Aarif Habeeb
Appsys Informatics Pvt [email protected]@appsys.in+91-98291601200141-4020120www.appsys.in
Contact us
created By: Aarif Habeeb
Thank you