Lesson 04 - Functional Testing, Structural Testing Automated Testing
Page 1: Risk Analysis and System Training
Overview of Testing Types
Functional Testing
Structural Testing
Automated Testing
Page 2: Types of Testing
Functional Testing
Unit Testing
Integration Testing
Smoke / Sanity Testing
User Acceptance Testing
Localization
Globalization
Interoperability
Non-Functional Testing
Performance
Endurance
Load
Volume
Scalability
Usability
Maintenance Testing
Regression Testing
Maintenance Testing
Page 3: Common Functional Testing Methods
Unit Testing
Tests individual units of software during development to verify correctness.
Integration Testing
Combines individual units and tests to identify faults in interactions.
Smoke Testing
Checks basic components of the software after a build to ensure proper functionality.
Page 4: More Functional Testing Methods
User Acceptance Testing
Formal testing to determine if the system meets acceptance criteria, performed by the customer.
Localization Testing
Adapting applications to specific culture/locale, typically done by testing teams.
Globalization Testing
Tests functionality across various culture/locale settings using international inputs.
Page 5: Non-Functional Testing Methods
Performance Testing
Assesses software performance under expected workloads, focusing on response time, reliability, scalability.
Exploratory Testing
Informal testing without predefined plans or test cases.
Load Testing
Evaluates application behavior under expected load conditions.
Page 6: Additional Non-Functional Testing Methods
Volume Testing
Analyzes system performance by increasing data volume in the database, also known as Flood Testing.
Scalability Testing
Evaluates an application’s ability to handle increased data volume and user traffic.
Usability Testing
Tests software ease of use by observing real users completing tasks.
Security Testing
Ensures protection from intrusions and vulnerabilities.
Page 7: Maintenance Testing
Regression Testing
Identifies software errors after changes (e.g., bug fixes, new features) by retesting.
Maintenance Testing
Evaluates deployed software during enhancements, modifications, or migrations.
Page 8: Functional Testing Overview
Focus: Ensures software meets functional requirements and behaves correctly from the user's perspective.
Risk Mitigation: Identifies risks related to functionality, ensuring critical functions operate as intended.
Techniques: Involves black-box testing and user acceptance testing, concentrating on functional criteria without internal code review.
Page 9: Functional Testing Types
Unit Testing
Integration Testing
User Acceptance Testing
System Testing
Functional Testing
Regression Testing
Sanity Testing
Smoke Testing
Page 10: Structural Testing
Definition: Also known as white-box testing; examines internal code structure for correctness and security.
Techniques Used: Code coverage analysis, path testing, mutation testing help identify risks.
Page 11: Automated Testing
Definition: Utilizes software tools to automate test execution, improving efficiency and accuracy.
Role in Risk Mitigation: Reduces risks from time constraints and human error, allowing efficient functional testing across multiple platforms with tools like Selenium.
Page 12: Conclusion
Thank you for reviewing the testing strategies!