0% found this document useful (0 votes)
17 views5 pages

TDD Example

The document explains Test-Driven Development (TDD), a software development technique where tests are written before code, following a Red-Green-Refactor cycle. It provides a clear example of password length validation and outlines the process of writing test cases for a user login feature. Key points emphasize that TDD leads to fewer bugs and better design by catching issues early in the development process.

Uploaded by

sunshining868
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views5 pages

TDD Example

The document explains Test-Driven Development (TDD), a software development technique where tests are written before code, following a Red-Green-Refactor cycle. It provides a clear example of password length validation and outlines the process of writing test cases for a user login feature. Key points emphasize that TDD leads to fewer bugs and better design by catching issues early in the development process.

Uploaded by

sunshining868
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

ChatGPT said:

✅ Test-Driven Development (TDD) — Simple Explanation with Another


Example

TDD means:

Write the test first → then write code → then improve the code 🔁

You do NOT write the full program first.

🔁 TDD Cycle (Very Simple)


1. Red → Write a test, it fails
2. Green → Write minimum code to pass the test
3. Refactor → Clean and improve the code

✅ New Example for TDD (Very Simple & Clear)


📌 Scenario: Password Length Validation

Rule:

 Password must be at least 8 characters


 If less than 8 → reject
 If 8 or more → accept

🔴 Step 1: Write Test Cases First (Before Code)


Test Case 1

 Input: "abc123"
 Expected Result: Invalid password

Test Case 2

 Input: "abc12345"
 Expected Result: Valid password

👉 At this stage, tests will fail because no code exists yet.

🟢 Step 2: Write Minimum Code to Pass Tests


boolean isValidPassword(String password) {
if ([Link]() >= 8) {
return true;
}
return false;
}

✅ Now tests pass (Green phase)

🔵 Step 3: Refactor (Clean Code, Same Logic)


boolean isValidPassword(String password) {
return [Link]() >= 8;
}

✅ Tests still pass, code is cleaner

✅ How TDD is Different from Normal Testing


Normal Approach TDD Approach

Write code first Write test first

Tests at the end Tests guide design

Bugs found later Bugs caught early

✅ Key Points to Remember (Exam-Friendly) ✨


 Tests are written before implementation
 Code is written only to pass tests
 Refactoring improves quality without breaking tests
 TDD leads to less bugs and better design

✅ One-Line Definition (Perfect for Exam ✅)


TDD is a software development technique where tests are written before code, and
development follows a Red-Green-Refactor cycle.

Scenario: User Login Feature


A system allows a user to log in using a username and password.

 If both username and password are correct → user is logged in


 If either field is empty → show an error message
 If credentials are incorrect → show “Invalid login details”
 The login button remains disabled until both fields are filled

This scenario is small, clear, and perfect for writing test cases 🧪

✅ How to Write Test Cases (Simple Method)


Every test case should answer these questions:

1. What are you testing?


2. What input will you give?
3. What should happen (expected result)?

Basic Test Case Format:

 Test Case ID
 Test Case Description
 Steps
 Test Data
 Expected Result

✅ Sample Test Cases (Few Examples)


Test Case 1

 Description: Login with valid username and password


 Steps:
1. Enter valid username
2. Enter valid password
3. Click Login
 Expected Result: User should log in successfully

Test Case 2

 Description: Login with empty username


 Steps:
1. Leave username empty
2. Enter password
3. Click Login
 Expected Result: Error message displayed

Test Case 3

 Description: Login with invalid password


 Steps:
1. Enter valid username
2. Enter wrong password
3. Click Login
 Expected Result: “Invalid login details” message shown

✅ Things You Must Take into Account While Writing Test


Cases 📝
1. Valid inputs (correct data)
2. Invalid inputs (wrong data)
3. Empty fields
4. Boundary conditions (minimum/maximum length if any)
5. UI behavior (button enabled/disabled)
6. Error messages (clear and correct)

You might also like