Software Testing Notes by Mayur Sharma
Software Testing Notes by Mayur Sharma
It ensures that software remains relevant, efficient, and error-free over time.
Type Purpose
Corrective Fixing bugs or defects
Adaptive Modifying software for new environment/platform
Perfective Enhancing performance or adding features
Preventive Improving future maintainability
Here’s a clear and concise explanation of the Software Development Life Cycle (SDLC) – a
fundamental concept in both software engineering and manual testing:
Phases of SDLC
1. Requirement Analysis
2. Test Planning
5. Test Execution
Record and track bugs in a defect tracking tool (e.g., JIRA, Bugzilla).
Coordinate with developers for bug fixing.
Retest and close defects once fixed.
7. Test Closure
1. Error (Mistake)
3. Failure
Verification
(You are checking documents and designs — not running the code.)
Validation
Summary:
A test case is a set of actions, inputs, conditions, and expected results used to
verify whether a software feature works as intended.
In simple terms: A test case checks if a specific part of the software behaves
correctly.
Field Description
Test Case ID Unique identifier (e.g., TC_Login_001)
Test Title Short description (e.g., "Valid login with correct
credentials")
Preconditions Setup needed before test (e.g., user account exists)
Test Steps Exact steps to perform (e.g., enter username, enter
password, click login)
Test Data Input values used in the test (e.g., email =
[email protected])
Expected What the system should do (e.g., "Dashboard loads
Result successfully")
Actual Result What actually happened (filled during execution)
Status Pass/Fail result
Remarks Notes or defects logged
Example Test Case: Login Functionality