Permalink
Fetching contributors…
Cannot retrieve contributors at this time
145 lines (143 sloc) 71.3 KB
id title
testing-matrix
End-to-end testing matrix
Test ID Test Case Step by Step Expected Outcome
REGISTRATION & AUTHENTICATION
A1 Correct Credentials 1. Press Person Icon for drop-down
2. Enter a valid e-mail / password combination
3. Press sign in
4. Verify valid log-in state
Account is logged in
A2 Incorrect Credentials 1. Press Person icon for drop-down
2. Enter an invalid e-mail / password combination
3. Press sign in
4. Verify invalid log-in state
Account is not logged in
A3 Registration 1. Press Person icon for drop-down
2. Click register link
3. Enter e-mail / password combination
4. Press register
5. Signout
6. Log-in with registered credentials
7. Verify valid log-in state
Account is registered, can be used to log in
A4 Reset Password 1. Press Person icon for drop-down
2. Press Reset Password
3. Enter e-mail
4. Check e-mail to reset password
5. Reset password
6. Log-in with newly created password
7. Verify valid log-in state
Able to reset / change password, can be used to log in
A5 Sign Out 1. Press Person icon frop drop-down
2. Log-in
3. Press Person icon for drop-down
4. Press sign out
5. Verify non-authenticated state in
Able to sign out and be able to re-log in
NAVIGATION BAR
B1 Home Page Redirect 1. Go to anywhere else other than home page such as a product page
2. Press STORE_NAME (i.e Reaction) on Nav Bar
3. Verify if redirected to home page
Able to have redirection to home page from anywhere within application
B2 Search Option 1. Have a storefront with sample data
2. Press search icon
3. Verify if directed to search text field
Redirected to search functionality of site
B3 Select Language 1. Press language drop-down
2. Select a language
3. Verify if menu items are changed into language
Language is changed for the site
B4 Select Currency 1. Press currency drop-down
2. Select a currency
3. Verify if currency is selected and used in purchase
Currency is changed from the default and it is shop wide
B5 Profile Drop-down (Non-authenticated) 1. Press Person icon for drop-down
2. Verify if e-mail / password fields and register / forget password links exist
Authentication box appears
B6 Profile Drop-down (Authenticated) 1. Press Person icon for drop-down
2. Verify if sign-out option available
Authenticated box appears with Sign Out option
B7 Cart Summary 1. Press Cart
2. Verify if cart appears
Cart appears with / without an item
B8 Notifications 1. Log-in
2. Press Alarm icon
3. Verify if notifications / messages appear
Notifications / messages appear in drop-down
HAMBURGER MENU
C1 Product Map 1. Have a storefront with sample data
2. Press Hamburger Menu
3. Verify if Categories and Sub-Categories are reflected
Storefront can be travered through the product map
C2 Select Language 1. Press language drop-down
2. Select a language
3. Verify if menu items are changed into language
Language is changed for the site
C3 Select Currency 1. Press currency drop-down
2. Select a currency
3. Verify if currency is selected and used in purchase
Currency is changed from the default and it is shop wide
USER PROFILE
D1 Proper Profile Data 1. Verify if Name and E-mail Address appears Name and E-mail appears
D2 Update Email Address 1. Update e-mail address
2. Sign-out
3. Sign-in with updated e-mail address
4. Verify only e-mail changed within profile
Profile persists minus the e-mail address change
D3 Update Password 1. Update current password
2. Sign-out
3. Sign-in with new password
4. Verify log-in state
Able to log-in with same e-mail and new password
D4 Your Orders 1. Make sample orders under account
2. Verify if orders appear in order box
Orders saved to profile
D5 Default Address 1. Enter Address Information
2. Order a sample product
3. Verify if address appears in checkout area
Address saved in profile is default and appears in checkout phase
ADMIN DASHBOARD
E1 Dashboard Menu Pop-Up 1. Press Dashboard
2. Verify if Admin Dashboard Slides Out
Admin dashboard appears
E2 Orders 1. Make sample orders with different accounts
2. Press Orders
3. Verify if sample orders appear
All orders appear
E3 Accounts 1. Make sample accounts
2. Press Accounts
3. Verify if sample accounts appear
All accounts appear
E4 Log-in Services 1. Press Log-in Services
2. Verify service capabilities
Login services available
E5 Social Settings 1. Press Social Settings
2. Verify social settings capabilities
Social settings available
E6 Shop 1. Press Shop
2. Verify able to enter shop details
Able to change shop information
E7 E-mail 1. Press E-mail
2. Verify able to see e-mail logs and set-up mail provider
E-mail provider and logs are visible
E8 Localization 1. Press Localization
2. Verify able to change localization options and reflect onto shop
Changes made are reflected onto shop, options available to be changed
E9 Shipping 1. Press Shipping
2. Verify able to change and toggle options
Available options are able to changed
E10 Tax 1. Press Tax
2. Verify able to enter custom rate / tax
Able to change custom rate
E11 Template 1. Press Template
2. Verify able to update e-mail templates
Able to change e-mail templates
E12 Search 1. Press Search
2. Verify if able to change search options / button
Able to change search capabilities
E13 Payment 1. Press Payment
2. Verify able to toggle / select options
Able to change options
E14 Edit Mode 1. Press Edit Mode Switch
2. Verify if Switch and Edit Mode capabilities reflect state
Edit mode toggled correctly
E15 Add Product 1. Press Plus Sign (Add Product)
2. Verify redirection to Create New Product
Go to Create a Product
PRODUCT PAGE
F1 Product Title 1. Verify if product name is correctly formatted Product name is formatted correctly
F2 Product Sub-title 1. Verify if product subtitle is correctly formatted Product subtitle is formatted correctly
F3 Image Zoom 1. Hover over product with mouse
2. Verify if mouse action triggers a zoom capability
Product can be zoomed in following mouse cursor
F4 Product Information 1. Verify proper format of product : price -> company -> description Product information formatted correctly
F5 Selecting Option 1. Select an Option
2. Verify if border highlight appears on selected option
Option is highlighted
F6 Multiple Images 1. Choose another image that is not default
2. Verify if image appears on main box
Pictures can be selected and zoomed in on
F7 Add to Cart 1. Select an option (if applicable)
2. Press Add to Cart
3. Verify if appears in cart
Item is in cart
F8 Add to Cart - Pop Up 1. Select an option (if applicable)
2. Press Add to Cart
3. Verify if pop up appears to state item added to cart
Pop-up appears with proper information
F9 Add to Cart - Multiple Quantities - Cart 1. Select an option (if applicable)
2. Change quantity to more than 1
3. Press Add to Cart
4. Verify if pop up appears with amount stated to cart
Items in cart
F10 Add to Cart - Multiple Quantities - Pop Up 1. Select an option (if applicable)
2. Change quantity to more than 1
3. Press Add to Cart
4. Verify if items appear with amount stated to cart
Pop-up appears with proper amount stated
F11 Add to Cart - Pop Up - Checkout Now 1. Select an option (if applicable)
2. Press Add to Cart
3. Wait for Pop up to appear
4. Press Checkout button in Pop up
5. Verify redirection to checkout
Able to begin checkout phase
CART
G1 Empty Cart 1. Make sure no items in cart
2. Press cart
3. Verify proper empty cart message
4. Press keep on shopping
5. Verify cart disappears
Proper cart empty message and able to collapse cart area
G2 Universal Cart 1. Add a sample product to cart
2. Go to a different product
3. Press cart
4. Verify if cart is accessible
5. Repeat a few times in different areas of application
Cart can be accessed anywhere throughout application
G3 Item Count 1. Add sample products to cart
2. Verify if amount of products added are reflected onto number bubble
Number bubble has correct amount of items in cart
G4 Cart Information - Items in Cart 1. Add sample products to cart
2. Verify if amount of products are reflected onto string area
Proper amount of items reflected
G5 Cart Information - Sub-total 1. Add sample products to cart
2. Verify if sub-totals are correct
Sub-total is correct
G6 Cart Information - Total 1. Add sample products to cart
2. Verify if total price is correct
Total is correct
G7 Product Deletion 1. Add sample products to cart
2. Press X on a product
3. Verify that item is only deleted in cart
Item is deleted from cart
G8 Product Redirection 1. Add sample products to cart
2. Press sample product in cart
3. Verify if redirected to sample product page
Redirected to sample product
G9 Checkout 1. Add sample products to cart
2. Press Checkout now
3. Verify if redirected to checkout process
Redirected to checkout process
G10 Cart Merge - No Items 1. Sign in
2. Verify no products in cart
3. Sign out
4. Add sample products to cart
5. Sign in
6. Verify if sample products persist and merged to account cart
Carts are merged
G11 Cart Merge - Existing Items
1. Sign in
2. Add sample products to cart
3. Sign out
4. Add sample products to cart
5. Sign in
6. Verify if sample products persist and merged to account cart
Carts are merged
G12 Cart Merge - Checkout Process
1. Sign in
2. Add sample products to cart
3. Sign out
4. Add sample products to cart
5. Sign in
6. Go through valid checkout process
7. Verify able to log-out, anonymous cart is empty
Log-out functionality appears, anonymous cart is empty after log-out
CHECKOUT
H1 Account 1. Begin Checkout Process
2. Verify if Guest / Registration / Sign-in options exist
Options exist for guest checkout , registration , and sign in
H2 Guest 1. Begin Checkout Process
2. Press Continue as guest
3. Verify able to add e-mail
4. Verify abe to continue process
Able to continue as a guest with an e-mail
H3 Registration 1. Begin Checkout Process
2. Press Register
3. Enter information
4. Press register
5. Verify able to continue process
Able to continue as newly registered user
H4 Existing User 1. Begin Checkout Process
2. Press Sign in
3. Enter information
4. Press Sign in
5. Verify able to continue process
Able to continue as existing user
H5 Address - Guest 1. Verify able to add address Able to add address
H6 Address - Newly Registered 1. Verify able to add address
2. After checkout process complete, verify if address is saved to profile
Able to add address and save
H7 Address - Existing User 1. Verify able to select existing address, edit or add new address Able to select existing addresses, edit or add new address and save
H8 Shipping Options 1. Verify able to select shipping options Able to select different shipping options
H9 Review 1. Verify cart + shipping information are added Cart information is reflected properly
H10 Payment 1. Verify able to add payment information Information is added through dropdown / text input / secure input
H11 Complete Order 1. Verify able to complete order after satisfied information Order is able to be completed, e-mail is sent out
H12 Thank You Screen 1. Verify that all of the order details are correct and match what was in the cart during checkout Order details are correct and match what was in cart
H13 Thank You Screen, Empty Cart 1. Verify that the cart is empty and has been deleted after successful checkout Cart is empty
PAYMENT
I1 Example Payment - Appearance 1. Enable Example Payment (https://docs.reactioncommerce.com/docs/community-resources)
2. Enter valid Example Payment API
3. Go through a valid checkout process
4. Verify Payment prompt visible
Payment prompt appears to enter valid information as final step in checkout
I2 Example Payment - Usage 1. Enable Example Payment (https://docs.reactioncommerce.com/docs/community-resources)
2. Enter valid Example Payment API
3. Go through a valid checkout process with dummy Card numbers
4. Verify log in Example Payment dashboard
Example payment successful order and appears in Example Payment testing dashboard (if applicable)
I3 Stripe Payment - Appearance 1. Enable Stripe Payment
2. Enter valid Stripe API keys
3. Go through a valid checkout process
4. Verify Stripe payment prompt visible
Payment prompt appears to enter valid information as final step in checkout
I4 Stripe Payment - Usage 1. Enable Stripe Payment
2. Enter valid Stripe API keys
3. Go through a valid checkout process with dummy Stripe card numbers (https://stripe.com/docs/testing)
4. Verify order in Stripe testing dashboard
Stripe payment successful order and appears in Stripe testing dashboard
I5 Discount - Appearance 1. Enable Discounts
2. Create a promo code under codes section with valid information
3. Go through a valid checkout process
4. Verify prompt to enter promo code appears
Discount prompt appears
I6 Discount - Usage 1. Enable Discounts
2. Create a promo code under codes section with valid information
3. Go through a valid checkout process
4. Enter promo code in valid promo code prompt area
5. Verify proper discount usage in final total of pay
Discount is applied through final checkout
I7 Custom Taxes Application 1. Enable Custom Tax Rates in Admin Panel
2. Create valid tax rates for several locations
3. Go through a valid checkout process with an address that has a custom tax rate applied to its area code
4. Verify proper tax rate calculation to final total
5. Repeat for the other valid tax rates created
Proper Custom tax rate is applied through final checkout
ORDERS DASHBOARD
J1 Orders Sorted Appearance 1. Make successful orders
2. Press Orders menu in Admin Panel
3. Verify orders made appear in dashboard in order made
Orders appear in dashboard in order they were made
J2 Orders Detail - Single Order 1. Have existing orders or make successful orders
2. Press Orders menu in Admin Panel
3. Press a valid order's detail arrow
4. Verify detail side panel appears with proper information
Order's details are shown
J3 Orders Detail - Multiple Orders 1. Have existing orders or make successful orders
2. Press Orders menu in Admin Panel
3. Press a valid order's detail arrow
4. Verify detail side panel appears with proper information
5. Press another valid order's detail arrow
6. Verify next chosen order's information appears
Other order's details orders are shown when selected
J4 Status Change - Pop Up 1. Have existing orders or make successful orders
2. Press Orders menu in Admin Panel
3. Select Order(s)
4. Press Bulk Action dropdown
5. Choose an action
6. Verify pop-up with # of status changes reflected with order(s)
Pop-up appears with # of orders selected to status change
J4 Status Change - Dashboard 1. Have existing orders or make successful orders
2. Press Orders menu in Admin Panel
3. Select Order(s)
4. Press Bulk Action dropdown
5. Choose an action
6. Verify # of status changes reflected with order(s)
Orders selected status are changed to chosen status in dashboard
J5 Order Approval 1. Have existing orders or make successful orders
2. Press Orders menu in Admin Panel
3. Press a valid order's detail arrow
4. Press "Approve"
5. Verify "Capture Payment" button + Print appears
Order can be approved, "Capture Payment" appears, print appears
J6 Order Print 1. Have existing orders or make successful orders
2. Press Orders menu in Admin Panel
3. Press a valid order's detail arrow
4. Press "Approve"
5. Press "Print"
6. Verify New Window with Order Details Printable
Order detailed information new window appears that can be printed
J7 Capture Payment - Appearance 1. Have existing orders or make successful orders
2. Press Orders menu in Admin Panel
3. Press a valid order's detail arrow
4. Press "Approve"
5. Press "Capture Payment"
6. Verify "Apply Refund", "Cancel order", "Print Invoice" appears
Apply Refund input box, Cancel order button, and Print Invoice appears
J8 Capture Payment - Apply Refund Prompt 1. Have existing orders or make successful orders
2. Press Orders menu in Admin Panel
3. Press a valid order's detail arrow
4. Press "Approve"
5. Press "Capture Payment"
6. Enter valid Refund Amount
7. Verify valid refund prompt appears
Apply Refund prompt with amount appears
J8 Capture Payment - Apply Refund 1. Have existing orders or make successful orders
2. Press Orders menu in Admin Panel
3. Press a valid order's detail arrow
4. Press "Approve"
5. Press "Capture Payment"
6. Enter valid Refund Amount
7. Press "Apply refund"
8. Verify valid refund
Refund successful
J9 Capture Payment - Print Invoice 1. Have existing orders or make successful orders
2. Press Orders menu in Admin Panel
3. Press a valid order's detail arrow
4. Press "Approve"
5. Press "Capture Payment"
6. Press "Print Invoice"
7. Verify New Window with Order Details Printable
Order detailed information new window appears that can be printed
J10 Order - All Items Packed 1. Have existing orders or make successful orders
2. Press Orders menu in Admin Panel
3. Press a valid order's detail arrow
4. Press "All items packed" under Shipping
5. Verify "Shipped" button and Notification customer message appears
"Shipped" Button appears with accompanying notification message to customer
J11 Order - Shipped 1. Have existing orders or make successful orders
2. Press Orders menu in Admin Panel
3. Press a valid order's detail arrow
4. Press "All items packed" under Shipping
5. Press "Shipped"
6. Verify Shipment Notification
Order shipment is processed
J12 Order - Shipped, Tracking Number 1. Have existing orders or make successful orders
2. Press Orders menu in Admin Panel
3. Press a valid order's detail arrow
4. Press "All items packed" under Shipping
5. Press "Shipped"
6. Save tracking number
7. Verify tracking number saved
Tracking number is updated and saved
J13 Order - Shipped, Resend Shipment Notification 1. Have existing orders or make successful orders
2. Press Orders menu in Admin Panel
3. Press a valid order's detail arrow
4. Press "All items packed" under Shipping
5. Press "Shipped"
6. Press "Resend Shipment Notification"
7. Verify Shipment E-mail Notification Pop-up appears
Shipment e-mail notification appears
J14 Cancel Order, Pop-up 1. Have existing orders or make successful orders
2. Press Orders menu in Admin Panel
3. Press a valid order's detail arrow
4. Press "Approve" drop-down menu
5. Select "Cancel"
6. Press "Cancel"
7. Verify "Cancel Order" Pop-up appears
Cancel order pop-up appears
J14 Cancel Order, No Restocking 1. Have existing orders or make successful orders
2. Press Orders menu in Admin Panel
3. Press a valid order's detail arrow
4. Press "Approve" drop-down menu
5. Select "Cancel"
6. Press "Cancel"
7. Press "Yes, but no restocking"
8. Verify cancelled order status and product amount stays same
Cancelled order, amount of product(s) stays same
J14 Cancel Order, Restocking 1. Have existing orders or make successful orders
2. Press Orders menu in Admin Panel
3. Press a valid order's detail arrow
4. Press "Approve" drop-down menu
5. Select "Cancel"
6. Press "Cancel"
7. Verify cancelled order status and product(s) gets restocked
Cancelled order, amount of product(s) goes +X amount ordered, restocked
J15 Orders - Screen Change 1. Have existing orders or make successful orders
2. Press Orders menu in Admin Panel
3. Press screen change for detailed vs non-detailed
4. Verify orders format changed in dashboard
Able to choose a detailed vs non-detailed orders appearance in dashboard
AUTHENTICATION
K1 Sending Data - POST through HTTP 1. Send credential data
2. Verify no interception possible by listening on network
User credentials are not readable by a sniffing tool
K2 Sending Data - POST through HTTPS 1. Send credential data
2. Verify no interception possible by listening on network
User credentials are not readable by a sniffing tool
K3 Sending Data - GET through HTTPS 1. Send credential data with GET
2. Verify no interception possible by listening on network
User credentials are not readable by a sniffing tool
K4 Default Credentials - Admin 1. Use default initial Reaction credentials (admin@localhost)
2. Verify successful log-in
Default admin account logged in
K5 Default Credentials - Change Admin 1. Use default initial Reaction credentials (admin@localhost)
2. Change account credentials
3. Log-out and log-in with changed credentials
4. Verify successful log-in
Default admin account not logged
K6 Default Password - New Accounts 1. Create new account
2. Log-in with default password of Default Credentials
3. Verify no successful log-in
New accounts are not able to be logged in with Default Password
K7 New Credentials 1. Create new account
2. Log-in with account credentials
3. Verify successful log-in
Successful log-in
K8 Nonexistent User 1. Log-in with Random Credentials
2. Verify un-successful log-in
Unsuccesful log-in
K9 HTTP Response - Valid User, Right Password 1. Log-in with valid credentials
2. Verify successful log-in
Successful log-in, valid HTTP Response
K10 HTTP Response - Valid User, Wrong Password 1. Log-in with valid user, incorrect password
2. Verify un-successful log-in
Unsuccesful log-in, valid HTTP Response
K11 Retried Failures 1. Attempt to log-in with incorrect credentials 3-5(x) times
2. Log-in with correct credentials
3. Verify able to log-in with credentials
Able to log-in with proper credentials after numerous attempts of incorrect times
K12 Bypassing Authentication Schema - Direct Page Request 1. Request a different page via forced browsing
2. Verify user is blocked from a protected page
Unsuccessful attempt to access protected page
K13 Bypassing Authentication Schema - Parameter Modification 1. Modify parameters in webpage ex: ?authenticated=yes, in a protected page
2. Verify user is blocked from a protected page
Unsuccessful attempt to access protected page
K14 Bypassing Authentication Schema - NoSQL Injection 1. Inject custom object with MongoDB commands inside Query Object
2. Verify commands not executable by database engine
Unsuccessful attempt to access database
K15 Vulnerable Remember Password 1. Allow "Remember Password" functionality of browser
2. Verify auto-complete usage
Successful log-in with stored password
K16 Enumerate Users - Existing User 1. Access account URL for existing user
2. Verify Authentication Error Message
Authentication Error message appears i.e 403, 404 (same as non-existing user)
K17 Enumerate Users -Non-existing User 1. Access account URL for non-existing user
2. Verify Authentication Error Message
Authentication Error message appears i.e 403, 404 (same as existing user)
K18 Password Reset 1. Reset password
2. Verify reset password request
Able to request to reset / change password
K19 Password Change - User 1. Change password as user
2. Verify valid log-in
Successful log-in
K20 Password Change - Admin 1. Change password as admin
2. Verify valid log-in
Successful log-in
K21 Password Change - Old Password 1. Change password as user to old password
2. Verify valid log-in
Successful log-in (work in progress, may be forced to not able to use existing passwords)
K22 Password - Weak 1. Create a password that does not pass threshold of acceptance
2. Verify no ability to change to password
No password change
K23 Password - Strong 1. Create a password with criteria characters
2. Verify ability to change to password
Password change
K24 Password - Forbidden Characters 1. Create a password with forbidden characters
2. Verify no ability to change to password
No password change
K25 Weaker Authentication in Alternative Channel - Mobile 1. Do log-in attempts with a mobile device
2. Verify tests passing
Authentication tests pass
K26 Weaker Authentication in Alternative Channel - No Cookies 1. Do log-in attempts with no cookies storable
2. Verify tests passing
Authentication tests pass
K27 Weaker Authentication in Alternative Channel - No JavaScript 1. Do log-in attempts with no javascript enabled
2. Verify tests passing
Authentication tests pass
K28 Weaker Authentication in Alternative Channel - No Plug-Ins 1. Do log-in attempts with no plug-ins enabled
2. Verify tests passing
Authentication tests pass