The document provides an overview of software testing, defining key concepts such as faults, errors, and failures, and outlining the goals of verification and validation processes. It distinguishes between manual and automation testing, as well as the four levels of software testing: unit, integration, system, and acceptance testing. Additionally, it explains the roles of verification and validation in ensuring that software meets specified requirements and user expectations.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
9 views12 pages
Unit-5 Software Testing
The document provides an overview of software testing, defining key concepts such as faults, errors, and failures, and outlining the goals of verification and validation processes. It distinguishes between manual and automation testing, as well as the four levels of software testing: unit, integration, system, and acceptance testing. Additionally, it explains the roles of verification and validation in ensuring that software meets specified requirements and user expectations.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 12
UNIT-5 SOFTWARE TESTING
CO5: ANALYZE THE VARIOUS TESTING TECHNIQUES USED IN
VERIFICATION AND VALIDATION OF A SOFTWARE INTRODUCTION TO FAULTS & FAILURES • FAULT : IT IS A CONDITION THAT CAUSES THE SOFTWARE TO FAIL TO PERFORM ITS REQUIRED FUNCTION. ERROR : REFERS TO DIFFERENCE BETWEEN ACTUAL OUTPUT AND EXPECTED OUTPUT. FAILURE : IT IS THE INABILITY OF A SYSTEM OR COMPONENT TO PERFORM REQUIRED FUNCTION ACCORDING TO ITS SPECIFICATION. IEEE DEFINITIONS • FAILURE: EXTERNAL BEHAVIOR IS INCORRECT FAULT: DISCREPANCY IN CODE THAT CAUSES A FAILURE. ERROR: HUMAN MISTAKE THAT CAUSED FAULT. BASIC TESTING CONCEPTS
• SOFTWARE TESTING CAN BE STATED AS THE PROCESS OF VERIFYING AND
VALIDATING THAT SOFTWARE OR APPLICATION IS BUG-FREE, MEETS THE TECHNICAL REQUIREMENTS AS GUIDED BY ITS DESIGN AND DEVELOPMENT, AND MEETS THE USER REQUIREMENTS EFFECTIVELY AND EFFICIENTLY WITH HANDLING ALL THE EXCEPTIONAL AND BOUNDARY CASES. • THE PROCESS OF SOFTWARE TESTING AIMS NOT ONLY AT FINDING FAULTS IN THE EXISTING SOFTWARE BUT ALSO AT FINDING MEASURES TO IMPROVE THE SOFTWARE IN TERMS OF EFFICIENCY, ACCURACY, AND USABILITY. IT MAINLY AIMS AT MEASURING THE SPECIFICATION, FUNCTIONALITY, AND PERFORMANCE OF A SOFTWARE PROGRAM OR APPLICATION. BASIC TESTING CONCEPTS
• SOFTWARE TESTING CAN BE DIVIDED INTO TWO STEPS:
1. VERIFICATION: IT REFERS TO THE SET OF TASKS THAT ENSURE THAT SOFTWARE
CORRECTLY IMPLEMENTS A SPECIFIC FUNCTION. 2. VALIDATION: IT REFERS TO A DIFFERENT SET OF TASKS THAT ENSURE THAT THE SOFTWARE THAT HAS BEEN BUILT IS TRACEABLE TO CUSTOMER REQUIREMENTS.
VERIFICATION: “ARE WE BUILDING THE PRODUCT RIGHT?”
VALIDATION: “ARE WE BUILDING THE RIGHT PRODUCT?” BASIC TESTING CONCEPTS
• SOFTWARE TESTING CAN BE BROADLY CLASSIFIED INTO TWO TYPES:
1. MANUAL TESTING: MANUAL TESTING INCLUDES TESTING SOFTWARE MANUALLY, I.E., WITHOUT USING ANY AUTOMATED TOOL OR ANY SCRIPT. THERE ARE DIFFERENT STAGES FOR MANUAL TESTING SUCH AS UNIT TESTING, INTEGRATION TESTING, SYSTEM TESTING, AND USER ACCEPTANCE TESTING. 2. AUTOMATION TESTING: AUTOMATION TESTING, WHICH IS ALSO KNOWN AS TEST AUTOMATION, IS WHEN THE TESTER WRITES SCRIPTS AND USES ANOTHER SOFTWARE TO TEST THE PRODUCT. THIS PROCESS INVOLVES THE AUTOMATION OF A MANUAL PROCESS. AUTOMATION TESTING IS USED TO RE-RUN THE TEST SCENARIOS THAT WERE PERFORMED MANUALLY, QUICKLY, AND REPEATEDLY. LEVELS OF SOFTWARE TESTING
• SOFTWARE LEVEL TESTING CAN BE MAJORLY CLASSIFIED INTO 4 LEVELS:
1. UNIT TESTING: A LEVEL OF THE SOFTWARE TESTING PROCESS WHERE
INDIVIDUAL UNITS/COMPONENTS OF A SOFTWARE/SYSTEM ARE TESTED. THE PURPOSE IS TO VALIDATE THAT EACH UNIT OF THE SOFTWARE PERFORMS AS DESIGNED. 2. INTEGRATION TESTING: A LEVEL OF THE SOFTWARE TESTING PROCESS WHERE INDIVIDUAL UNITS ARE COMBINED AND TESTED AS A GROUP. THE PURPOSE OF THIS LEVEL OF TESTING IS TO EXPOSE FAULTS IN THE INTERACTION BETWEEN INTEGRATED UNITS. LEVELS OF SOFTWARE TESTING 3. SYSTEM TESTING: A LEVEL OF THE SOFTWARE TESTING PROCESS WHERE A COMPLETE, INTEGRATED SYSTEM/SOFTWARE IS TESTED. THE PURPOSE OF THIS TEST IS TO EVALUATE THE SYSTEM’S COMPLIANCE WITH THE SPECIFIED REQUIREMENTS. 4. ACCEPTANCE TESTING: A LEVEL OF THE SOFTWARE TESTING PROCESS WHERE A SYSTEM IS TESTED FOR ACCEPTABILITY. THE PURPOSE OF THIS TEST IS TO EVALUATE THE SYSTEM’S COMPLIANCE WITH THE BUSINESS REQUIREMENTS AND ASSESS WHETHER IT IS ACCEPTABLE FOR DELIVER CONCEPTS OF VERIFICATION AND VALIDATION VERIFICATION: • WE CHECK WHETHER WE ARE DEVELOPING THE RIGHT PRODUCT OR NOT. • VERIFICATION IS ALSO KNOWN AS STATIC TESTING. • VERIFICATION INCLUDES DIFFERENT METHODS LIKE INSPECTIONS, REVIEWS. • IT IS A PROCESS OF CHECKING THE WORK-PRODUCTS (NOT THE FINAL PRODUCT) OF A DEVELOPMENT CYCLE TO DECIDE WHETHER THE PRODUCT MEETS THE SPECIFIED REQUIREMENTS. • QUALITY ASSURANCE COMES UNDER VERIFICATION TESTING. VERIFICATION
• THE EXECUTION OF CODE DOES NOT HAPPEN IN THE VERIFICATION TESTING.
• IN VERIFICATION TESTING, WE CAN FIND THE BUGS EARLY IN THE DEVELOPMENT PHASE OF THE PRODUCT. • VERIFICATION TESTING IS EXECUTED BY THE QUALITY ASSURANCE TEAM TO MAKE SURE THAT THE PRODUCT IS DEVELOPED ACCORDING TO CUSTOMERS' REQUIREMENTS. • VERIFICATION IS DONE BEFORE THE VALIDATION TESTING. • IN THIS TYPE OF TESTING, WE CAN VERIFY THAT THE INPUTS FOLLOW THE OUTPUTS OR NOT. VALIDATION • WE CHECK WHETHER THE DEVELOPED PRODUCT IS RIGHT. • VALIDATION IS ALSO KNOWN AS DYNAMIC TESTING. • VALIDATION INCLUDES TESTING LIKE FUNCTIONAL TESTING, SYSTEM TESTING, INTEGRATION, AND USER ACCEPTANCE TESTING. • IT IS A PROCESS OF CHECKING THE SOFTWARE DURING OR AT THE END OF THE DEVELOPMENT CYCLE TO DECIDE WHETHER THE SOFTWARE FOLLOW THE SPECIFIED BUSINESS REQUIREMENTS. • QUALITY CONTROL COMES UNDER VALIDATION TESTING VALIDATION
• IN VALIDATION TESTING, THE EXECUTION OF CODE HAPPENS.
• IN THE VALIDATION TESTING, WE CAN FIND THOSE BUGS, WHICH ARE NOT CAUGHT IN THE VERIFICATION PROCESS. • VALIDATION TESTING IS EXECUTED BY THE TESTING TEAM TO TEST THE APPLICATION. • AFTER VERIFICATION TESTING, VALIDATION TESTING TAKES PLACE. • IN THIS TYPE OF TESTING, WE CAN VALIDATE THAT THE USER ACCEPTS THE PRODUCT OR NOT.