### Test case design techniques
Task 1
Question 1
Answer
To create a decision table based on the given requirements for testing the form that allows users to
schedule appointments with a doctor, we will identify the conditions and their possible outcomes.
Conditions:
- First Name (F): Whether the first name is provided or not. o T = Provided o F = Not Provided
- Last Name (L): Whether the last name is provided or not. o T = Provided o F = Not Provided
- Email (E): Whether the email is valid or not. o T = Valid o F = Invalid
- Phone Number (P): Whether the phone number is valid or not. o T = Valid o F = Invalid
- Appointment Date/Time (A): Whether the appointment date/time is available or not. o T = Available o F = Not Available Possible Outcomes:
- Outcome 1 (O1): Display "All fields are required" (if any field is blank).
- Outcome 2 (O2): Display "Please enter a valid email" (if email is invalid).
- Outcome 3 (O3): Display "Please enter a valid phone number" (if phone number is invalid).
- Outcome 4 (O4): Display "Please choose another date/time" (if appointment date/time is not available).
- Outcome 5 (O5): Schedule the appointment successfully (if all fields are correct and the appointment is available).
EXPLANATION:
O1 (All fields are required): This outcome occurs if any of the fields (First Name,
Last Name, Email, Phone Number, Appointment Date/Time) are blank.
O2 (Please enter a valid email): If the email is invalid (doesn't match the valid email
format).
O3 (Please enter a valid phone number): If the phone number is invalid (doesn't
match the valid phone number format).
O4 (Please choose another date/time): If the appointment date/time is unavailable.
O5 (Schedule Appointment): This occurs when all fields are valid, and the
appointment date/time is available.
Summary:
This decision table allows you to systematically test all possible conditions and ensure that
the correct output is shown based on the user’s input on the form.
Question no 2
Answer
Test Scenario 1: Role-Based Access Control
Objective:
Test if the app provides the correct access to features for Basic, Premium, and Admin users.
Steps to Test:
-
Basic User Testing:
- Log in as a basic user.
- Check what features are available (e.g., basic navigation).
- Try accessing features meant for premium or admin users.
- Note the error messages shown when trying restricted actions.
-
Premium User Testing:
- Log in as a premium user.
- Check if premium features are accessible (e.g., exclusive tools or resources).
- Try accessing admin-only settings or advanced features.
- Note any error messages displayed for unauthorized actions.
-
Admin User Testing:
- Log in as an admin user.
- Check if all features, including advanced settings, are accessible.
- Test if admin-specific actions (like user management) work.
Expected Results:
- Basic User: Can only access basic features; receives clear error messages for restricted actions.
- Premium User: Can access premium features but not admin settings; sees error messages for admin actions.
- Admin User: Can access everything without any restrictions. Test Scenario 2: Account Management and Password Standards Objective: Check if users can create and delete accounts, ensure passwords meet requirements, and verify confirmation emails are sent. Steps to Test:
-
Account Creation:
- Open the app's sign-up page.
- Try creating an account with a simple password (e.g., "12345").
- Check if an error message appears saying the password is too weak.
- Try again with a strong password (e.g., "Abc@12345").
- Check if the account is created successfully and if a confirmation email is received.
-
Account Deletion:
- Log in to the newly created account.
- Use the delete account option in the app.
- After deleting, try logging in with the same credentials.
- Verify that the app says the account does not exist.
Expected Results:
- Weak passwords are not accepted, and users see a clear message about password rules.
- Strong passwords allow account creation, and confirmation emails arrive promptly.
- Deleted accounts cannot be logged into, and users are informed the account no longer exists.
Test Scenario 3: Navigation, Performance, and Error Handling
Objective:
Test if the app runs smoothly, handles multiple users, and shows proper error messages for unauthorized actions.
Steps to Test:
-
Navigation Testing:
- Log in with each user role (Basic, Premium, Admin).
- Explore all the menus and sections of the app.
- Look for crashes or any slow loading screens.
-
Performance Testing:
- Ask multiple testers to log in and use the app simultaneously.
- Observe if the app slows down or crashes when many people use it at once.
-
Error Handling:
- Try performing actions that the current user role isn’t allowed to do (e.g., Basic user trying premium features).
- Check if the app shows a clear message explaining why the action isn’t allowed.
Expected Results:
- The app works smoothly with no crashes or slowdowns.
- It performs well, even when many users are logged in simultaneously.
- Unauthorized actions display proper error messages like "You do not have permission to access this feature."
Top comments (0)